動画編集時の作業ファイル形式

avi の限界

で,さらに調子に乗って「林道 その3」なんて動画も上げてみたのだが,こいつの編集では avi ファイルに悩まされた.

特に触れてはいないが,この動画をいじるときも日記/2007-11-08/ffmpeg で動画の速度変換でも書いたように作業ファイルとして無圧縮の avi ファイルを使っていた. Windows 上の編集ソフトに読み込ませると…

おおよそ5分のところで動画が切れてしまう

という現象が起きたのである. メディアプレーヤで再生してみても一緒なので,編集ソフト側の問題というわけでもない. ファイルサイズを見ると 1.3GB なので,いわゆる 2GB の壁ではない. とりあえずは video codec のほうを motion JPEG にして当座を凌いだのだけど,再エンコードが入るので,気分的にはあまりよろしくないし,変換速度も落ちる. まぁ,ffmpeg 側の問題なのかもしれないのだが,QVGA で 10 分足らずの動画でさえ 1 GB に達するのだから,2 GB の壁なんか目の前である.

というわけで,avi には見切りを付けることにした.

QuickTime に挑戦

動画編集ソフトの入出力でサポートしている形式を色々見ると,QuickTime が無圧縮と lossless 圧縮に対応しているようである. これでいってみようかなぁ.

というわけで ffmpeg で無圧縮の QuickTime ビデオを作れるかテストしてみる.

$ ffmpeg -i imag0004.avi -t 00:00:10 -vcodec rawvideo -an foo.mov
…
Output #0, mov, to 'foo.mov':
 Stream #0.0: Video: rawvideo, yuvj420p, 320x240, q=2-31, 200 kb/s, 13.31 fps(c)
…

mplayer だと再生できるけど,Windows の QuickTime Player では再生できない. もちろん,編集ソフトにもマトモに取り込めない.

一方,編集ソフトで無圧縮の QuickTime ファイルを作成してみると,もちろん QuickTime Player では再生できる. そのファイルを調べてみると

$ ffmpeg -i foo.mov
…
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'foo.mov':
  Duration: 00:00:10.0, start: 0.000000, bitrate: 12266 kb/s
  Stream #0.0(eng): Video: rawvideo, rgb24, 320x240, 13.31 fps(r)
…

どちらも無圧縮には違いないのだが,画素のエンコードが違うようである. さっきのエンコード時に yuvj420p となっていたところを rgb24 としなくてはならないようだ. ffmpeg のマニュアルを調べると

-pix_fmt format
Set pixel format. Use 'list' as parameter to show all the supported pixel formats.

なんてのがあった.

というわけで変換に再度チャレンジ.

$ ffmpeg -i imag0004.avi -vcodec rawvideo -pix_fmt rgb24 -an foo.mov
…
Output #0, mov, to 'foo.mov':
  Stream #0.0: Video: rawvideo, rgb24, 320x240, q=2-31, 200 kb/s, 13.31 fps(c)
…

今度は同じ型式になっている. QuickTime Player で再生してみる.おっけー. 動画編集ソフトでの読み込みもおっけー. 5分で尻切れトンボな現象も出ない.

というわけで,しばらくはこれでいってみよう.


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-11-10 (土) 03:08:24 (6035d)