Ubuntu 10.04では、以下のffmpegコマンドを使用して、生のビデオ(YUV形式)をH.264エンコードされたビデオにエンコードしようとしています。
ffmpeg -i input.mp4 output.h264
しかし、私は言ってエラーが出ます
出力ストリーム#0.0でサポートされていないコーデック
次に、このオプションを試すと:
ffmpeg -i input.mp4 -formats h264 output.h264
それでもエンコードされません。
今では、ffmpegがH.264形式へのエンコードにlibx264を使用していることがわかりました。これでx264パッケージ-このUbuntuに高速H.264エンコーダーがインストールされました。
私の質問:
まず、使用するコマンドは構文的に正しくありません。 ffmpegでx264を使用するには、-c:v libx264
引数を指定する必要があります。
ここで、未加工のYUVファイルがある場合、ffmpegに使用するピクセル形式、サイズなどを指定する必要があります。
ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 output.mp4
YUVファイルの仕様に従ってこれらを変更します。サポートされているピクセル形式のリストについては、ffmpeg -pix_fmts
をご覧ください。 fourcc.org もそのための優れたリソースです。
.264
ファイルにそのままのH.264ビットストリームが必要な場合:
ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 -f rawvideo output.264