次のコマンドを使用して、ffmpegでいくつかのファイルをwebmに変換しようとしています。
# First pass
ffmpeg -i input.mp4 -codec:v libvpx -quality best -b:v 225k -qmin 10 -qmax 42 -maxrate 300k -bufsize 1000k -threads 8 -vf -an -pass 1 -f webm /dev/null
# Second pass
ffmpeg -i input.mp4 -codec:v libvpx -quality best -b:v 225k -qmin 10 -qmax 42 -maxrate 300k -bufsize 1000k -threads 8 -vf -codec:a libvorbis -b:a 128k -pass 2 -f webm output.webm
しかし、次のエラーメッセージが表示されます。
[NULL @ 0x55c5d4360220] Unable to find a suitable output format for 'libvorbis'
libvorbis: Invalid argument
既にlibvorbis0a、libvorbisenc2、libvorbisfile3をインストールしているので、リポジトリで検索しましたが、libvorbisパッケージが見つかりません(コンパイルするのはlibvorbis-devだけですか?)
本当にコンパイルする必要があるのですか、それとも何か間違っていますか? (Ubuntu 16.10を使用しています)
私にとって効果的なものは次のとおりです。
パス1:
ffmpeg -i input.mp4 -an -c:v libvpx -quality best -b:v 225k -qmin 10 -qmax 42 -maxrate 300k -bufsize 1000k -threads 4 -pass 1 -f webm /dev/null
Pass2:
ffmpeg -i input.mp4 -c:v libvpx -quality best -b:v 225k -qmin 10 -qmax 42 -maxrate 300k -bufsize 1000k -threads 4 -c:a libvorbis -b:a 128k -pass 2 -f webm output.webm
注:8がないため、スレッドを4に変更しました。システムに合わせて元に戻すことは問題ではありません。また、ロングハンド '-codec:'を短い-c:
バリアント(習慣の力)に変更し、-an(オーディオスイッチなし)をパス1の前に移動しました(必要かどうかわかりません)この例では、何も傷つけていません)。もちろん、@ LordNeckbeardが述べたように、2回目のパスで受け取っていたエラーと、/ dev/nullにパイプされた目に見えないエラーの原因となる偽の-vf(ビデオフィルター)スイッチを削除しました。コマンドラインで。最初のパスで。
各コマンドに-vf
(ビデオフィルター)オプションがありますが、フィルター名を指定していません。フィルターを追加するか、各コマンドからエラー-vf
を削除します。