Combine múltiples videos como secuencias separadas en un archivo mkv

Así que tengo varios videos del mismo paisaje desde diferentes ángulos. Estos se almacenan como archivos separados. ¿Puedo combinarlos como múltiples secuencias de video dentro de un archivo?

Por ejemplo, sé que esto es posible con MKV, pero no sé cómo "unirme" a ellos.

¿Es esto posible usando ffmpeg ? Si es así, ¿qué secuencia de comandos debo usar? Si no, ¿qué otra aplicación sería capaz de hacer esto?

Respuestas (2)

Sí, esto es posible usando ffmpeg y el mkvcontenedor.

Un ejemplo de secuencia de comandos sería:

ffmpeg -i input1 -i input2 -c copy -map 0 -map 1 output.mkv

fuente

Desglosando el comando:

  • -i input1Esto selecciona el primer archivo de entrada. Podría ser algo como mi video_track1.mov.
  • -i input2Aquí puede especificar el segundo archivo de entrada. Puede agregar otra entrada -i input3si tiene más videos de entrada. No sé cuál es la cantidad máxima de videos que puede colocar en un mkvcontenedor.
  • -c copyEsto copia todas las transmisiones (audio y video) en su codificación original.
  • -map 0Esto asigna todas las transmisiones (audio y video) del primer archivo de entrada a la primera pista del archivo de salida.
  • -map 1Esto asigna todas las transmisiones (audio y video) del segundo archivo de entrada a la segunda pista del archivo de salida.

-mapSe puede encontrar más información sobre la opción en la documentación de ffmpeg .

Gracias Bart. Solo una pregunta de seguimiento rápida si me lo permiten. Supongamos que el segundo video es un poco más corto que el primer video que quiero combinar, ¿hay alguna forma de compensar en qué punto debería estar disponible la segunda transmisión (por ejemplo, 1 segundo más tarde) para mantener las dos transmisiones sincronizadas?
No estoy seguro, no soy un experto, solo un Googler feliz, pero podrías experimentar con la -ssopción . Edite su pregunta con la adición y agregue una respuesta usted mismo, incluido el código ffmpeg, si encuentra que funciona. Esto ayudará a futuros visitantes.
Esto casi funcionó, pero mi video de entrada no tenía marcas de tiempo. Los creé con ffmpeg -fflags +genpts -i input1_no_ts.avi -c copy input1.mp4yffmpeg -fflags +genpts -i input2_no_ts.avi -c copy input2.mp4

'mapa' selecciona fuentes de entrada, archivos en este caso. Su comando combina todas las pistas en una sola secuencia, no las separa como se desea.

El comando en la respuesta de @SaaruLindestakke los mantiene como flujos separados. mapno combina flujos; solo puede seleccionar flujos de entrada (no archivos).