ffmpeg 4.5から使えるプロトコル。demuxerのconcatでつけている-f concat -safe 0や連結ファイルをまとめて記述したテキストのファイルの前に指定するfileも不要に連結できる。いつの間にか2ファイル以上連結しようとすると「Invalid data found when processing input」のエラーが出て連結できなくなっている。
基本コマンド
ffmpeg -i concatf:split.txt -c copy output
ffplay -i concatf:split.txt
ファイル毎に改行し、split.txtで使う特殊文字はバックスラッシュの\かシングルクオートの‘でエスケープする。
input.mp4 video/input.mp4 'C:\Users\owner\Desktop\input.mp4' C:/Users/owner/Desktop/input.mp4
concatして固定フレームレートに修正するにはsettsビットストリームフィルタを使う。Bフレームのある24000/1001フレームレートの修正例。
ffmpeg -i concatf:split.txt -c copy -bsf:v setts=dts=N/((24000/1001)*TB):pts=PTS+N/((24000/1001)*TB)-DTS output.mp4
Bフレームがなければ以下でもよい。
ffmpeg -i concatf:split.txt -c copy -bsf:v setts=N/((24000/1001)*TB) output.mp4