ffmpeg: Agregar un logotipo al video aumenta el tiempo del video original

ffmpeg: Agregar un logotipo al video aumenta el tiempo del video original

Estoy intentando agregar un logotipo a un video que aparece gradualmente en el medio de la pantalla, pero por alguna razón esto agrega 2 segundos adicionales al video de salida, donde el video se atasca rápidamente. Alguna idea de cómo evitar esto:

ffmpeg -i "input.mp4" -loop 1 -i "logo.png" ^
-filter_complex "[1]scale=300:-1,hue=s=0,format=rgba[logo];[logo]split[logo1][logo2]; ^
[logo1]colorchannelmixer=aa=0.0[logo1];[logo2]colorchannelmixer=aa=0.2[logo2]; ^
[logo1][logo2]xfade=transition=fade:duration=5:offset=0[logo]; ^
[0][logo]overlay=x=(W-w)/2:y=(H-h)/2" -q:v 0 -shortest -y output.mp4 

Respuesta1

Estás complicando demasiado las cosas. Superponga el logotipo en una instancia del vídeo. Luego, desvanezca esto antes de superponerlo a otra instancia.

ffmpeg -i input.mp4 -i logo.png -filter_complex ^
[0]split[A][B];[A][1]overlay[OL];^
[OL]fade=type=in:start_time=0:duration=5:alpha=1[Top];^
[B][Top]overlay out.mp4

El logotipo se puede filtrar con escala, tono, etc. antes de la primera superposición.

información relacionada