Tengo unas pocas horas de video MP4 (h264 + AAC) y necesito reemplazar pequeñas partes de este con otro video (o solo audio). La razón es que el archivo es una grabación de una sesión en vivo y necesito bloquear / silenciar partes de él antes de publicarlo.
Me gustaría usar ffmpeg. He encontrado mucha información sobre el complejo de filtros, concat, etc. pero me gustaría saber si hay una forma más sencilla antes de analizar todo esto. O al menos una pista de qué funcionalidad de filter_complex debería usar.
Hasta ahora lo hago a mano en Premiere Elements, donde tomo el video principal y pongo otro clip en la segunda pista. Y me gustaría automatizar todo el proceso ...
Respuestas:
Suponiendo que desea bloquear el video y silenciar el audio donde sea necesario, su plantilla de comando básica sería
El tamaño y la velocidad del color deben ser los mismos que los de su video.
Si desea reemplazar la pantalla negra con una imagen, elimine la
-f lavfi
expresión de color y agregue-loop 1
antes-i image.jpg
.fuente
-segment_times
valores para dividir el video. Luego, realice la superposición en los segmentos requeridos y codifique con los mismos parámetros que el video original. Luego, use concat demuxer para unir segmentos intactos y codificados nuevamente. Lo mejor es volver a codificar todo el audio usando el método en mi respuesta.[a][1]overlay=enable='between(t,80,90)':shortest=1[b];