Un fichier .avi n’est pas composé exclusivement du flux vidéo. Il y a aussi des informations de contrôle, dont un index du flux et des descripteurs de codec.
Il ne faut pas oublier que cat met “bêtement” les deux fichiers à la suite l’un de l’autre sans tenir compte le moins du monde de leur contenu.
Quand tu concatènes deux .avi ensemble, tu te retrouves donc avec un seul gros fichier contenant :
- le premier en-tête, qui ne reconnaît que le premier flux vidéo
- le premier flux vidéo (jusqu’ici, tout va bien)
- le deuxième en-tête qui n’a rien à faire là et est, au mieux, ignoré en silence lors de la lecture, et au pire va provoquer l’arrêt de la lecture
- le deuxième flux vidéo qui n’est référencé nulle part vu que le deuxième en-tête est ignoré et que le premier n’a aucune idée de son existence
Pas étonnant qu’il y ait des soucis dès que tu essayes de lire au-delà de la première partie, c’est plutôt si ça fonctionnait que ça serait hallucinant.
Donc, seule solution : utiliser un outil qui sait manipuler la vidéo. Avidemux est très bien pour ça.