2 votes

Concaténation de fichiers AVI avec plusieurs pistes

J'ai un répertoire de fichiers AVI que je voudrais combiner en un seul fichier AVI. Ces fichiers AVI proviennent d'une caméra embarquée et comportent deux pistes vidéo : une caméra avant et une caméra arrière.

J'ai essayé d'utiliser la suggestion aquí pour combiner les vidéos. Plus précisément :

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

Cela fonctionne très bien pour la première piste vidéo (avant) mais supprime complètement la deuxième piste vidéo (arrière).

Comment puis-je concaténer ces fichiers et conserver les deux pistes vidéo ? Sinon, existe-t-il un moyen de spécifier la piste vidéo à concaténer ?

1voto

tubedogg Points 14839

Ce que vous devez faire, c'est démultiplexer chaque fichier, puis concaténer les fichiers résultants. Il existe un moyen de le faire avec la fonction filtre concat mais cela nécessite de tout ré-encoder au fur et à mesure.

Vous devez donc faire deux opérations. D'abord, démultiplexer. (Notez que ceci n'est pas testé avec ffmpeg, car je n'ai pas de fichiers vidéo à tester avec, mais devrait théoriquement fonctionner).

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

Ensuite, vous pouvez utiliser le démuxer concat comme d'habitude :

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

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X