
FFmpegのプリセットファイルを作成したい。サンプルコマンドを実行すると、現在使用されているプリセットが表示されます。
$ ffmpeg -i 入力ファイル.mp4 出力ファイル.mp4 [libx264 @ 0000000002a9a5c0] 264 - コア 140 r2377 1ca7bb9 - H.264/MPEG-4 AVC コーデック - コピーレフト 2003-2013 - http://www.videolan.org/x264.html - オプション: cabac=1 ref=3 デブロック=1:0:0 分析=0x3:0x113 me=16進サブメ=7 psy=1 psy_rd=1.00:0.00 混合参照=1 me_range=16 chroma_me=1 トレリス=1 8x8dct=1 cqm=0 デッドゾーン=21,11 fast_pskip=1 chroma_qp_offset=-2 スレッド=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 インターレース=0 ブルーレイ互換=0 制約付きイントラ=0 bフレーム=3 b_pyramid=2 b_adapt=1 b_bias=0 ダイレクト=1 重みb=1 open_gop=0 重みp=2 keyint=250 keyint_min=25 シーンカット=40、イントラリフレッシュ=0、RC_ルックアヘッド=40、RC=CRF、MBツリー=1、CRF=23.0、QCOMP=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
ここで、これらの値を取得し、ドキュメントで指定されているとおりにプリセット ファイルを作成します。
しかし、そのファイルを使用しようとするとエラーが発生します
$ ffmpeg -i infile.mp4 -fpre settings.txt outfile.mp4 settings.txt: 無効なオプションまたは引数: 'cabac=1 '、'cabac' = '1' として解析されます
答え1
プリセット ファイルでオプションを指定すると、それらはffmpeg
デバッグ出力を確認するときに出力されるエンコーダー オプションではなく、実際のオプションにマップされます。
たとえば、fast_pskip
x264 の は で呼び出されます-fast-pskip
。ffmpeg
の も同様に とrc_lookahead
呼ばれます。直接マップできるすべてのオプションについては、 セクションrc-lookahead
を参照してください。ffmpeg -h full
libx264 AVOptions
その他、使用したいものオプション-x264opts
のリストを渡しますkey=value:key=value
。例:
ffmpeg -i input.mp4 -c:v libx264 -x264-params rc_lookahead=30:keyint=500 output.mp4
これらのオプションを手動で設定する意味はほとんどありません。-preset
オプションを使用して、x264プリセットの1つシンプルにしたい場合。