Como fazer um loop de um vídeo para frente e para trás com ffmpeg

3

Eu tenho um vídeo de 5s length. O vídeo final deve ser 60s long. O vídeo resultante deve ser um loop de "pingue-pongue", o que significa que meus 5s devem ser reproduzidos de um lado para outro até que os anos 60 sejam atingidos.

Alguém conhece a mágica ffmpeg para fazer isso?

Minha versão do ffmpeg:

ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 7.3.0 (clang-703.0.29)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-vda
  libavutil      55. 17.103 / 55. 17.103
  libavcodec     57. 24.102 / 57. 24.102
  libavformat    57. 25.100 / 57. 25.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 31.100 /  6. 31.100
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
    
por soupdiver 15.06.2016 / 12:41

1 resposta

5

Use

ffmpeg -i input.mp4 \
       -filter_complex "[0]reverse[r];[0][r]concat,loop=5:250,setpts=N/25/TB" output.mp4

Em loop=5:250 , 5 é o número de loops, 250 é frame rate x double length of clip . O setpts é aplicado para evitar quedas de quadro e o valor 25 deve ser substituído pela taxa de quadros do clipe.

    
por 15.06.2016 / 16:03

Tags