ffmpeg で無限入力が可能にで追加されていたが、フィルタを掛けて加工することはできなかった。今回はフィルタ内でループするのでループ回数やループした部分にもフィルタが当てられる。

基本コマンド

1回ループして2回読み込む

asetptsを追加した。2017年10月4日
setptsを追加した。2019年2月20日。これより
ffmpeg -i input -filter_complex loop=1:32767:0,setpts=N/(FRAME_RATE*TB);aloop=1:2.14748e+009:0,asetpts=N/SR/TB

reverseフィルタと併用したループ例。
ffmpeg -f lavfi -i testsrc2=d=5.5 -vf trim=start=3.5:end=5.5,setpts=0.5*PTS-STARTPTS,split[out0][out1];[out0]reverse[r];[out1][r]concat,loop=2:250,setpts=N/25/TB avm.gif

映像と音声を逆再生にエンコードする
Make Boomerang w/ single FFmpeg Command | by Salih Çağlar Ispirli | Apr, 2022 | Mediumから引用。

公式ドキュメント:FFmpeg Filters Documentation : loop
公式ドキュメント:FFmpeg Filters Documentation : aloop

オプション

  • loop[int]
    ループ回数。-1 で無限
    既定値:0
    範囲:0からINT_MAXまで
  • size[int64]
    ループにどれだけバッファサイズを取るか
    loopならフレーム数。aloopならサンプル数
    既定値:0
    範囲:0から32767まで:loop
    範囲:0からINT_MAXまで:aloop
  • start[int64]
    ループするときにどの位置からループするか
    loopならフレーム数。aloopならサンプル数
    既定値:0
    範囲:0からI64_MAXまで

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)