動画編集用に素材を変換する FFmpeg コマンド集
なぜか、年明けから DaVinci Resolve で動画編集の仕事をしています。
DaVinci Resolve で編集中のシークが重かったり、素材の形式に起因する問題等が発生したりしたので、FFmpeg で先に素材を使いやすい形式に変換しておくコマンドをまとめてみました。
この記事での処理内容は、DaVinci Resolve 重視で考えられていますので、ご留意ください。
動画素材自体を直接変換
成果物に使う素材をノンリニア編集に向いている形式へ変換します。 H.264 形式に比べると明らかに編集時のシークが軽いです。
編集ソフトが安全に扱えるように、また扱えない形式を回避するために、予めコーデックを揃えておくこともできます。
現時点では、Windows 環境を含めても Apple ProRes が最も使いやすいと感じます。
Apple ProRes へエンコード
映像自体が商材でないような用途なら、基本的に以下の設定で十分な品質だと思います。
ffmpeg -i INPUT.webm -c:v prores_ks -profile:v hq -c:a alac OUTPUT.mov
最高品質プロファイル 4444xq
を使用する場合は以下です。
ffmpeg -i INPUT.webm -c:v prores_ks -profile:v 4444xq -c:a alac OUTPUT.mov
こちらは、アルファチャネルに対応しています。透過情報を含むオーバーレイ用の素材を扱う場合に向いています。ただし、アルファチャネル付き動画自体を再生できるプレイヤーはあまり存在していないです。
DNxHR へエンコード
Apple の柵がない代わりに、ドキュメントが貧弱で、対応ソフトウェアもいまのところ心許ないです。
ffmpeg -i INPUT.webm -c:v dnxhd -profile:v dnxhr_hq -c:a pcm_s24le -ar 48000 OUTPUT.mov
軽量プロキシメディアの作成
最終的に使われる素材としてではなく、高速にシークできるような代替メディアを作成します。
ffmpeg -i INPUT.webm -c:v dnxhd -profile:v dnxhr_lb -vf "scale=1280:720,fps=24000/1001,format=yuv422p" -c:a pcm_s16le -ar 48000 OUTPUT.mov
動画編集ソフトでオリジナル素材に対してリンクすることで、プレビューを高速に行うことができます。
ただ、DaVinci Resolve にはプロジェクト内でプロキシメディアを生成する機能があるので、出番はあまりないかもしれません。
APNG を動画形式へ変換(透過情報を含む)
DaVinci Resolve は APNG を動画として扱うことができないので、透過情報対応のある動画フォーマットへ変換します。
ffmpeg -i INPUT_APNG.png -pix_fmt yuva444p10le -c:v prores_ks -profile:v 4444xq OUTPUT.mov