El vídeo se superpone a otro incorrectamente: el fondo está superpuesto

El vídeo se superpone a otro incorrectamente: el fondo está superpuesto

Soy un nuevo usuario de FFmpeg y quiero insertar un logotipo en dos videos (un video superpuesto a otro) con un comando.

  1. Comando FFmpeg (bien):
ffmpeg -stream_loop -1 -i background1080p.mp4 -i input1080p.mp4 -i
logo.png -filter_complex
"[1]scale=1280:720[inner];[0][inner]overlay=70:70:shortest=1[vid];
[vid][2]overlay=10:10:enable='not(between(t\,10\,15))'[out]" -map
"[out]" -map 0:a -c:a copy -y -shortest output.mp4

Buen resultado vídeo Cuando uso el comando anterior, funciona bien.

  1. Error de comando FFmpeg

Sin embargo, cuando lo aplico a la siguiente línea de comando, aparece un error:

@ECHO OFF
Setlocal EnableDelayedExpansion
set INPUT=D:\Shorts\code\INPUT
set OUTPUT=D:\Shorts\code\OUTPUT

:: encode video:

for %%a in ("%INPUT%\*.*") DO ffmpeg -i "%%a" -stream_loop -1 -i background.mp4 -i logo.png -filter_complex "[1]scale=1280:720[inner];[0][inner]overlay=70:70:shortest=1[vid]; [vid][2]overlay=10:10:enable='not(between(t\,10\,15))'[out]" -map "[out]" -map 0:a -c:a copy -shortest "%output%\%%~na_%%03d.mp4"

pause

Resultado de superposición incorrecto

  • El video principal (de INPUTla carpeta) background.mp4tiene sus roles al revés y lo que se supone que es la superposición es el fondo.

Por favor ayúdenme a corregir el error

Respuesta1

Cambie el orden de las dos primeras entradas, es decir-stream_loop -1 -i background.mp4 -i "%%a"

información relacionada