MXFファイルからCBR TSファイルを作成する

MXFファイルからCBR TSファイルを作成する

私は高ビットレートのMXF入力ファイルからCBR TSファイルを生成する方法を探しています。私はffmpegを使ってみましたが、明らかにCBR出力ファイルを生成することはうまくいかなかったので、今何が利用できるのか少し混乱しています。私は以下を試してみました。

ffmpeg -i input.mxf -copyts -c copy -muxrate 200M -f mpegts output.ts

私はちょうど少し詰め物を追加したいと思います。また、次のコマンドを使用してビデオのトランスコードを試みました。

ffmpeg -i input.mxf -vcodec libx264 -b:v 150M -minrate:v 150M -maxrate:v 150M -bufsize:v 140M -acodec mp2 -ac 2 -b:a 192k -f mpegts output.ts

しかし、それも動作しませんでした。出力が完全に均一になりたいです。これは、多重化レートをより高い値に設定するか、またはCBRビデオビットレート全体を実装することによって実行できます。私が試したffmpegは3.2.4です。

答え1

私は10〜15%のパディングで非常に素晴らしく滑らかな出力CBRを達成する方法を見つけました。残念ながら、元のファイルをトランスコードする必要があります。

$ffmpeg -i input.mxf \
-c:v libx264 \
-x264opts nal-hrd=cbr \
-b:v 30M -minrate:v 30M -maxrate:v 30M -muxrate 35M -bufsize:v 25M \
-acodec aac -ac 2 -b:a 128k \
-f mpegts output.ts

このコマンドは、入力ファイルから完全なCBR TSを生成します。ここで重要なのは、ビデオビットレート(b:v)がビデオ最大および最小ビデオビットレートと同じであり、多重化速度は設定されたビデオビットレート(オーディオビットレートを含む)より10〜15%高くなければならず、バフサイズは次のとおりです。 。約 70 ビデオビット比の割合です。

関連情報