combine la creación de videos y dibuje comandos de texto en una sola instrucción en ffmpeg

combine la creación de videos y dibuje comandos de texto en una sola instrucción en ffmpeg

Tengo los siguientes dos comandos que ejecuto secuencialmente para crear un video a partir de una imagen y luego dibujar texto en él desde un archivo de texto. Para crear un video a partir de una sola imagen, uso:

ffmpeg -framerate 30 -loop 1 -t 5 -i 1.jpg -i 3D_Transition_02.mp4 -filter_complex "[0]format=rgba,scale=1280:720,split[img][a]; [1]format=rgb24,negate,scale=1280:720[tr];[a][tr]overlay=format=gbrp[al];[img][al]alphamerge,setsar=1,format=yuva444p" -an -c:v libvpx -crf 10 -b:v 0 -quality realtime -auto-alt-ref 0 a1vp8.mkv

Para crear el texto en el video estoy usando el siguiente comando:

ffmpeg -i a1vp8.mkv -vf "drawtext=enable='gte(t,.5)':box=1:[email protected]:boxborderw=10:fontfile=Roboto-Black.ttf:fontcolor=white:fontsize=56:shadowcolor=Black:shadowx=1:shadowy=1:textfile=text.txt:y=h/2:x=10" aiwithText5.mkv

¿Hay alguna forma de crear el video a partir de la imagen (esto también tiene un complejo de filtro para crear la transición alfa) y una vez que se ha creado el video, dibujar texto en él con un solo comando combinando los dos comandos?

Respuesta1

Simplemente agregue el texto del dibujo al final del filtrado.

ffmpeg -framerate 30 -loop 1 -t 5 -i 1.jpg -i 3D_Transition_02.mp4 -filter_complex "[0]format=rgba,scale=1280:720,split[img][a]; [1]format=rgb24,negate,scale=1280:720[tr];[a][tr]overlay=format=gbrp[al];[img][al]alphamerge,setsar=1,format=yuva444p,drawtext=enable='gte(t,.5)':box=1:[email protected]:boxborderw=10:fontfile=Roboto-Black.ttf:fontcolor=white:fontsize=56:shadowcolor=Black:shadowx=1:shadowy=1:textfile=text.txt:y=h/2:x=10" -an -c:v libvpx -crf 10 -b:v 0 -quality realtime -auto-alt-ref 0 a1vp8.mkv

información relacionada