Tengo muchos videos y necesito poner una imagen delante de ellos durante aproximadamente 5 segundos, pero agregarlo manualmente y renderizarlo cada vez tomaría mucho tiempo, por lo que pregunto si es posible hacerlo a través de ffmpeg y si podría, por favor, ayudarme ya que no tengo experiencia con ffmpeg. Ya encontré algunos comandos pero ninguno de ellos funcionó. Este por ejemplo.
ffmpeg -itsoffset 5 -i in.mp4 -r 25 -loop 1 -i intro.png -filter_complex "[1:v] fade=out:125:25:alpha=1 [intro]; [0:v][intro] overlay [v]" -map "[v]" -map 0:a -acodec copy out.mp4
Respuestas:
Puede hacer una superposición de imágenes simple utilizando la siguiente sintaxis:
overlay=25:25
significa que queremos colocar la imagen 25px a la derecha y 25px hacia abajo, originando desde la esquina superior izquierda (0: 0).enable='between(t,0,20)'
significa que queremos que la imagen se muestre entre los segundos 0 y 20.[0:v][1:v]
significa que queremos que el primer archivo de video con el que importamos-i
, en nuestro caso input.mp4 o cómo ffmpeg lo ve el archivo de entrada de video número 0, esté debajo del archivo de entrada de video 1, en nuestro caso image.png.:v
solo significa que queremos el video 0 y el video 1.[0:a]
significaría que queremos la primera pista de audio importada. Que también vendría de input.mp4 pero apuntaría a la pista de audio en lugar de la pista de video en el archivo mp4.Si desea una determinada calidad / configuración de imagen y no la configuración que ffmpeg elige, agregue la imagen y / o las opciones de codificación de audio que desea utilizar. El codificador de video predeterminado será x264. Consulte la guía de codificación H.264 para ver las posibles configuraciones.
El
-acodec copy
/-c:a copy
que tiene en su comando fe simplemente reutilizaría el audio del archivo fuente. Aunque no puede hacer eso con el video, por supuesto (en este caso), eso tiene que ser transcodificado porque estamos creando una nueva fuente de video.Si desea transcodificar audio, elimine la
-c:a copy
parte. Puede que tenga que especificar explícitamente un codificador, por ejemplo-c:a aac -strict experimental
. Consulte la guía de codificación AAC para obtener más información.fuente