Cómo reproducir un vídeo de un lado a otro con ffmpeg

Cómo reproducir un vídeo de un lado a otro con ffmpeg

Tengo un video de 5slarga duración. El vídeo final debería ser 60slargo. El vídeo resultante debería ser un bucle de "ping pong", lo que significa que mis 5 deberían reproducirse de un lado a otro hasta llegar a los 60.

¿Alguien conoce la ffmpegmagia para hacer esto?

Mi versión de 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

Respuesta1

Usar

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

En loop=5:250, 5es el número de bucles, 250es frame rate x double length of clip. Se setptsaplica para evitar caídas de cuadros y el valor 25debe reemplazarse con la velocidad de cuadros del clip.

información relacionada