/var/www/yatta47.log

/var/www/yatta47.log

やったのログ置場です。スクラップみたいな短編が多いかと。

could not find tag, codec not currently supported in containerというエラーが出た時の対処。

ffmpegでflvをmp4にファイル変換している時にこんなエラーが出た。

それを解消した時の備忘録。

参考にしたサイトはこちら。

http://ffmpeg.gusari.org/viewtopic.php?f=11&t=789

発生したエラーはこちら。

    Stream #0.0: Video: vp6f, yuv420p, 463x275, 1086 kb/s, 30 tbr, 1k tbn, 1k tbc
    Stream #0.1: Audio: mp3, 44100 Hz, stereo, s16, 134 kb/s
[mp4 @ 0x4b140] track 0: could not find tag, codec not currently supported in container

-vcodecの値としてはcopyにしていた。そうしたら
「could not find tag, codec not currently supported in container」
だった。

見た目の通り、変換後のコンテナー(mp4)がサポートしていないという意味らしい。flvとmp4のコンテナーの作りの違いがよくわかっていないのだけれど、ちゃんとコーデック指定してあげることにした。

ffmpeg -i movie.flv -vcodec libx264 -acodec copy movie.mp4

そうしたらエラーは消えたが今度はサイズがよろしくないというエラーがorz

[libx264 @ 0x40ec0] width not divisible by 2 (463x275)

幅が2の倍数でないということかな?

ってことでアスペクト比とかは別にして変換後の動画サイズを2の倍数に指定。

ffmpeg -i movie.flv -vcodec libx264 -s 464x276-acodec copy movie.mp4

よし。ちゃんと変換されている。

[asin:4777512258:detail]