Premiere Proはソース動画にAVI (主にDivXやXvidなどのh263系の動画) を使うとプレビューや編集、そしてファイル出力がクソ重くなりますねえ。。。。
意外な所では、 Mjpegなんかもクソ重い。ビックリです。何が原因なんだろ?と色々調べてみたら、使っているAviコーデックが古すぎたのが原因でした(^_^;
▲ちなみに私が利用しているのは Premiere Pro CS5です
PCは Core i7 3930K / メモリ16GB / x64 Windows7 Professional
Premiere Pro CS5でサクサク編集できる動画ファイル
・AVC HD(h264 mp4) 形式
・Mpeg2 形式
・Microsoft DV形式
・huffyuv/Lagarith Lossless Codec など一部のロスレスコーデック
Premiere Pro CS5で重くなる動画ファイル
・Xvid/DivX などのh263形式
・Mjpeg形式
Xvid/DivXは、BフレームやPフレームをOFFにしても重い。
また、Mjpeg形式が重くなるのはビックリ。
とにかくプレビューのアチコチで引っかかる。
最終の変換出力も5~10fps程度の速度しか出ない。
感覚としては、2001年頃(Pentium3 733Mhz機)で、720x480サイズのMpeg2またはMicrosoft DV形式の動画ファイルを編集しようとしていた頃の感覚。それぐらい重い。
Avi(vfw)のYV12コーデックを色々差し替えて見る
これでほぼ解決した(^_^;
Avi(vfw)のYV12コーデックを(マルチスレッドに対応した)最新のモノに差し替えれば解決する問題みたいですね。
ワケあって古いXvid(2009年頃のモノ)を利用していましたが、これを色々と新しいモノに変更してみたら一気に改善されました。
YV12コーデックをHelix YUV Codecsに差し替えて見る
▲クリックで拡大 (画像は 1280x720 60fps AVC-HDに変換)
- Xvid(2009年頃のバージョン)利用時・・・
プレビューはガクガク/エンコ実時間の4~6倍。
どうみてもシングルスレッド処理です。(最新のXvidを利用するとVirtualDubModが利用できず、今まで古いものを利用していた→関連記事) - Helix YUV Codecs 利用時・・・
プレビューは我慢できる範囲内で再生。エンコ実時間の2倍程度。
2スレッドで作動している感じ。 - DivX (最新版)利用時・・・
プレビューはスイスイ。CPU利用率ほぼ100%。
エンコ時間は実時間の半分程度・・・!
YV12コーデックを最新のDivXに変更してみた図
▲クリックで拡大 (デコーダーを最新のDivXに変更)
CPU使用率もほぼ100%に、変換時間も当初の10倍前後にスピードアップしました。
解決(^O^)/
Mjpegソースはまだ少し遅い
上記までのコーデック差し替えで、h263系の動画読み込みの問題は解決。
Mjpegソースの動画は、読み込み/出力ともに2~3倍高速化したものの、またCPUに余力が残っている感じ。
1. プレビュー表示はテストしたソース全てがサクサク表示になった。
2. Mpeg4-h.263 ソースの動画変換は10~15倍ほど速度が上がった。
(CPU使用率 約15% → ほぼ100%)
3. Mjpegソースの動画出力は2~3倍ほど速度が上がった。
(CPU使用率 約15% → 約40%)
1スレッド処理 → 2スレッド処理 になった感じ。
Mjpegコーデックも、マルチスレッドに対応した何か最新のものを導入すれば解決しそうな気配。
でも今の所4スレッド以上で処理してくれるコーデックが見つかりません。まあ、Mjpegで残していたのは10年前でしかも640x480サイズ、ほんの僅か。2スレッド処理で十分かな(^_^;
原因と対策
マルチスレッドに対応したコーデックを利用すれば、一発解決っぽい。
デコーダーがシングルスレッドだと、Premiere Pro全体がシングルスレッドになる感じ。
「たま~に使うから」ってな理由で入れておいた古いvfwコーデックがPremiere Proの邪魔をしちゃう場合もあり。そろそろ古いコーデックは完全に捨て去る時代が来ちゃいましたねえ。
サイト内関連
Adobe Premiere Pro、encoreが重い場合のチェックポイント
似たようなお話を、以前にエントリーにした事があります。
当時のPC環境には、(このブログで紹介するために)様々な最新コーデックを導入していたので、古いコーデックと最新の動画編集ソフトの相性の悪さには気が付いていませんでした(追記を入れました)
解決方法は、他にも何かあるのかも?
ちなみに、Adobe Premiere Pro や Encore はh.264にはメインコンセプト社のエンコードエンジンを採用しているらしいです。で、メインコンセプト社のサイトを見ると、Motion JpegやMPEG-4 H.263 のコンポーネントも扱っているのがわかります。
この辺のデコーダーを入手する or 規格に合わせたオプション設定をしてやれば更に高速に処理できるんだろうか?と勝手に妄想中。
(私の場合、5~7年前に作ったファイルを読みたいだけ。今更XvidやMjpegで中間ファイルを残しておくつもりは無いので、この辺は無意味なんだけど(^_^;)
なぜ今更こんな話題なのか
ここ数日、2001~2005年頃に作ったオリジナルムービーをリメイク・HD化して遊んでいます。当時のソースファイルは、その時の気分でXvid/Mjpeg/Microsoft DV いずれかの形式で保存しています。この中でXvidとMjpegの動画が、Premiere Proに読み込ませると本当にクソ重いかったので、色々原因調査した次第。
最新のXvidを利用するとVirtualDubModでYV12表示出来なかったので、最近は2009年頃のXvidを利用していたワケですが・・・素直にDivXに鞍替えしていればこんな問題に遭遇せずに済んでいたのですなぁ・・・('Α`)