2 votos

La concatenación de los archivos AVI con varias pistas

Tengo un directorio de archivos AVI que me gustaría combinar en un solo archivo AVI. Estos archivos AVI de venir de una dash cam y tiene dos pistas de vídeo-una cámara frontal y una cámara trasera.

Traté de usar la sugerencia aquí para combinar los vídeos. Específicamente:

ffmpeg -f concat -i <(for f in $PWD/*.avi;do echo "file '$f'";done) -c copy output.avi

Esto funciona muy bien para la primera (frontal) de la pista de vídeo, pero elimina completamente la segunda (parte trasera) de la pista de vídeo.

¿Cómo puedo concatenar estos archivos y conservar ambas pistas de vídeo? Alternativamente, hay una manera de que yo pueda especificar la pista de vídeo para concatenar?

1voto

tubedogg Puntos 6827

Básicamente lo que tienes que hacer es demultiplexar cada archivo, y luego concatenar los archivos resultantes. Hay una manera de hacer esto con la concat filtro, pero requiere de re-codificación de todo como va.

Así que hay que hacer dos operaciones. En primer lugar, demultiplexar. (Nota: esto no se ha probado con ffmpeg, como no tengo los archivos de vídeo para realizar la prueba, pero en teoría debería funcionar.)

I=0;J=1;for f in $PWD/*.avi;do ffmpeg -i "$f" -map 0:v:0 -codec copy output$I.avi -map 0:v:1 -codec copy output$J.avi && I=$(($I+1)) && J=$(($J+1));done

A continuación, puede utilizar la concat demuxer como de costumbre:

ffmpeg -f concat -i <(for f in $PWD/*.avi;do echo "file '$f'";done) -c copy output.avi

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X