FFMpeg Looping Vídeo de fundo e sobreposição

1

Estou tentando sobrepor dois vídeos. Meu primeiro vídeo de entrada com 20 minutos de duração e meu segundo vídeo de fundo com 1 minuto de duração. Eu estou sobrepondo-os com sucesso, mas quando eu tento reproduzi-lo após 1 min (quando meu segundo vídeo de fundo de entrada termina), ambos os meus vídeos estão congelando e o áudio continua tocando. Como posso fazer o loop de minha segunda entrada até que minha primeira entrada seja concluída.

Aqui meu código:

ffmpeg -i clip.mp4 -i motion_bg.mp4 
-filter_complex "
     [0:v] setpts=PTS-STARTPTS, scale=1280x720 [lowerleft];
     [1:v] setpts=PTS-STARTPTS, scale=1920x1080[center];
     [center][lowerleft] overlay=shortest=1:y=360
"
-c:v libx264 -c:a copy overlay_test.mp4  
    
por sword1st 29.06.2018 / 01:47

1 resposta

2

O BG precisa estar em loop. No momento, você pode usar o filtro de filme e definir a opção de loop.

Use

ffmpeg -i clip.mp4 -f lavfi -i movie=motion_bg.mp4:loop=0 
-filter_complex "
     [0:v] setpts=PTS-STARTPTS, scale=1280x720 [lowerleft];
     [1:v] setpts=PTS-STARTPTS, scale=1920x1080[center];
     [center][lowerleft] overlay=shortest=1:y=360
"
-c:v libx264 -c:a copy overlay_test.mp4 
    
por 29.06.2018 / 07:45

Tags