ffmpeg -acodec copy は、すべてのオーディオストリームを新しいコンテナにコピーするわけではありません。

ffmpeg -acodec copy は、すべてのオーディオストリームを新しいコンテナにコピーするわけではありません。

ffmpegStackexchangeで助けを見つけることができることを願っています。私はドキュメントに基づいて動作する必要があると思ったので、いくつかのストレージスペースを節約するために古いビデオをlibx264に再エンコードしましたが、私には失敗したようです。すべてのファイルを再エンコードするために、次のコードスニペットを使用しました。

ffmpeg -i "$file" -y -acodec copy -vcodec libx264 -scodec copy -threads 12 -x264-params keyint=240:min-keyint=20 -profile:v baseline -level 3.0 "$output"

私はすべてのオーディオストリームを処理し、それらをすべて新しいコンテナにコピーする-acodec copyことが可能でなければならないと思います。そうですか?mapただし、なぜすべてがdual audio videos単一のオーディオビデオに再エンコードされ、基本以外のオーディオストリームが省略/削除されるのかはわかりません。

すべてのコーデックオーディオ、字幕をコピーし、libx264に記録したいvcodecだけをコピーする方法を知っていますか?

ありがとうございます!

ベストアンサー1

https://trac.ffmpeg.org/wiki/How%20to%20use%20-map%20option#Example4

-map 0すべてのストリームがマップされたままになり、再エンコードするコーデックのみが指定されます。

もっと読むべきです。

おすすめ記事