Ok, estoy usando FFMPEG wasm en un proyecto NextJS, pero creo que las soluciones generales de FFMPEG funcionarán ya que FFMPEG wasm analizará los comandos normales de FFMPEG.
Lo que estoy tratando de hacer es agregar un video superpuesto sobre el video de entrada, también cambio la opacidad del video superpuesto para poder ver el video principal a continuación. Ya tengo eso funcionando, con esta línea de código:
-i input.mkv -i overlay.mov -filter_complex [1:v]format=argb,geq=r=\'r(X,Y)\':a=\'0.5*alpha(X,Y)\'[zork];[0:v][zork]overlay -pix_fmt yuv420p -preset ultrafast -c:a copy output.mkv .
El problema es que el tamaño de input.mkv puede cambiar al igual que overlay.mov , y quiero configurar el tamaño de overlay.mov para que sea el mismo que input.mkv (por lo que las soluciones preferiblemente no pueden usar valores fijos como bien). He visto otras preguntas sobre eso en stackoverflow, pero como ya estoy usando el comando para cambiar la opacidad de la superposición, no puedo hacer que funcione con el comando para cambiar también el tamaño de la superposición, no tengo experiencia con FFMPEG en absoluto, así que aunque he visto cómo cambiar la opacidad de la superposición y cómo cambiar el tamaño de la superposición, no puedo encontrar la manera de combinar esos comandos en uno solo que haga ambas cosas.
Primero escala usando scale2ref, luego cambia la opacidad.
-i input.mkv -i overlay.mov -filter_complex [1:v][0:v]scale2ref[zork][video]; [zork]format=argb,lutrgb=a=val*0.5[zork];[video][zork]overlay -pix_fmt yuv420p -preset ultrafast -c:a copy output.mkv