Lo siguiente básicamente debería tener una imagen que aparece en el cuadro 438, y luego la misma imagen se mueve a una posición diferente en el cuadro 339, luego básicamente desaparece por el resto del video.
ffmpeg -i C:\src\assets\video\base.mp4 -r 25 -i C:\card.png -y \
-filter_complex [1:v]setpts=PTS-STARTPTS+(1/TB)[1v]; \
[0:v][1v]overlay=x=0:y=0:enable='between(t,438/25,439/25)'[1v]; \
[0:v][1v]overlay=x=300:y=300:enable='between(t,439/25,440/25)'[2v]; \
[1v][2v]concat=n=2:v=1:a=0[out] -map [out] -map 0:a -ss 17 C:\temp\j7kthb0v\composit.mp4
Parece que no puedo obtener el comando real correcto o generar algo que se asemeje a lo que necesito.
Sé que estoy cerca, puedo superponer un cuadro, pero no puedo obtener más que eso.
Utilizar
ffmpeg -i C:\src\assets\video\base.mp4 -i C:\card.png -y \
-filter_complex "[0:v][1:v]overlay=x='if(eq(n,439),300,0)':y='if(eq(n,439),300,0)':enable='eq(n,438)+eq(n,439)'[out]" \
-map [out] -map 0:a -ss 17 C:\temp\j7kthb0v\composit.mp4
Es posible que deba escapar de las comas en los filtros dependiendo de su shell, es decir n,438
, ->n\,438
Shannon Hochkins
Shannon Hochkins
gian
x='0*eq(n,438)+300*eq(n,439)+X*eq(n,567)+...'
Shannon Hochkins
overlay=x='( 605 + -0.8023952095808383 * n)':y='( 406 + -0.4365269461077843 * n)':enable='between(t,438/25,605/25)'
, ¿significa esto que n sería igual a 0 y se incrementaría para cada cuadro para el que es visible? (605 - 438)gian
Shannon Hochkins
gian
n
es el marco no. El primer cuadro es n = 0.Shannon Hochkins
gian
Shannon Hochkins
zoompan=z='if(gte(in,438),min(pzoom-0.04,0.43),1)':d=1
gian
Shannon Hochkins
Shannon Hochkins
Shannon Hochkins
gian
zoom
cantidad de zoom si el ancho de entrada es 100 y luego zoom=2 recorta una ventana de 50 píxeles de ancho. el zoom no puede ir por debajo de 1. Debe rellenar el marco del sujeto con píxeles adicionales (que pueden ser transparentes) y luego alejar el zoom en ese marco acolchado.Shannon Hochkins
gian
Shannon Hochkins