Comment réparer un fichier AVI cassé?

24

J'ai un fichier .avi d'environ 110 Mo. Lorsque j'essaie de le lire avec VLC Media Player, il dit quelque chose comme "Ce fichier est cassé. Vous essayez de réparer?" et après avoir fait son truc, il est toujours incapable de le jouer.

Existe-t-il un autre logiciel qui peut éventuellement obtenir la vidéo qu'il peut en retirer? Peut-être un spécialiste de ce genre de choses? Je ne suis pas très optimiste parce que je pensais que si quelque chose pouvait être joué, VLC aurait réussi à le faire, mais je pensais que je lui donnerais un coup quand même ...

Paolo Bergantino
la source

Réponses:

12

J'ai eu de la chance dans le passé avec de nombreux AVI cassés / incomplets utilisant DivFix , mais je ne sais pas si cela fonctionne bien sur quelque chose après Windows XP.

Une version plus récente est DivFix ++ :

DivXFix ++ est conçu pour réparer les flux de fichiers AVI cassés en reconstruisant une partie d'index du fichier. Ceci est très utile lorsque vous essayez de prévisualiser des films sans partie d'index, comme certains fichiers sont actuellement téléchargés à partir de réseaux ed2k ou bittorent. DivFix ++ est une réécriture complète du programme "DivFix" en raison de ses bugs et de ses faibles performances.

Nick Josevski
la source
2
Impressionnant. Je l'ai fait pour un fichier vidéo de 799 Mo et cela a fonctionné comme un charme. En fait, ce fichier AVI lors de la lecture avec VLC est arrivé avec la même erreur. Il n'a jamais joué sur Windows Media Player. Maintenant, il joue également parfaitement dans Windows Media Player. Nick - Merci beaucoup!
Kanini
@Kanini, content que DivFix ait aidé :)
Nick Josevski
14

Voici quelques programmes qui pourraient vous aider:

  • VLC devrait vous proposer de corriger l'index d'un fichier AVI cassé lorsque vous ouvrez le fichier.
  • DivFix ++
  • AviFiXP (ne fonctionne que sur Windows)

Il y a un tutoriel complet sur la réparation des fichiers AVI cassés ici: Réparer les fichiers AVI cassés ou corrompus - AfterDawn: Guides

Vous pouvez également essayer de reconstruire le conteneur en effectuant une copie de flux binaire avec FFmpeg :

ffmpeg -i input.avi -c copy output.avi
slhck
la source
1
Avec ffmpeg 0.6.2, utilisez -vcodec copy -acodec copyau lieu de -c copy. J'ai utilisé (pour Windows) cette version . J'avais un tas de fichiers à corriger. DivFix ++ s'est écrasé sur moi. ffmpeg était super. Merci.
sinelaw
ffmpeg a corrigé l'index cassé de mes fichiers vidéo avi
Elias Estatistics
3

VirtualDub peut faire des choses assez étonnantes avec des fichiers AVI cassés. Ouvrez simplement le fichier dans VirtualDub, laissez-le cuire, puis s'il est ouvert avec succès, enregistrez-le à nouveau en tant que nouveau fichier AVI. Habituellement, vous n'avez même pas besoin de modifier les paramètres de compression.

Electrons_Ahoy
la source
Ah, VirtualDub est une bonne recommandation mais il n'a pas pu faire de squat avec.
Paolo Bergantino
Mec, désolé d'entendre ça. J'espère que vous trouverez quelque chose qui fonctionne - notant plus frustrant qu'un fichier de 100 Mo que vous ne pouvez pas utiliser!
Electrons_Ahoy
2

Il y a un SuperDecoder appelé .

ont pu lire des fichiers et des CD / DVD vraiment foireux avec. Vous pouvez lui donner un coup de feu.

MN
la source
2

J'ai eu quelques AVI que VLC n'a même pas essayé de réparer et DivFix ++ m'a donné des erreurs de recherche. Les faire passer par ffmpeg n'a pas fonctionné, mais l'a mencoderfait (c'est très rapide):

mencoder -idx input.avi -ovc copy -oac copy -o output.avi

(mencoder fait partie du mplayerpackage sur la plupart des systèmes, par exemple brew install mplayersur Homebrew.)

Voir aussi: Comment puis-je vérifier l'intégrité d'un fichier avi et le réparer automatiquement sous Linux?

William Turrell
la source
1

Toutes les bonnes idées sur la façon de réparer l'index AVI cassé (ma préférence est ffmpeg), mais contribuant ici à trouver des fichiers avi qui ont l'index cassé pour les tester et les réparer de manière proactive. Après avoir essayé sans succès d'utiliser mediainfo ffprobeet d'autres pour détecter les fichiers dont vlc se plaindrait, j'ai finalement décidé d'utiliser vlccar c'était celui qui se plaignait. Voici un extrait qui peut être utile dans le cadre d'une analyse et d'un script de réparation automatisé.

if grep -q "avi demux error" \
    <(cvlc --vout null --aout null --stop-time 2 "${VIDFILE}" vlc://quit 2>&1 )
    # alternate ways to stop after two seconds
    #<(timeout 2 cvlc --vout null --aout null "${VIDFILE}" 2>&1)
    #<(cvlc --vout null --aout null "${VIDFILE}"  2>&1 & sleep 2; kill $!)
then
    echo "avi demux error: ${VIDFILE}"
    exit 1
fi

Remarque: les autres méthodes d'arrêt (pour ne pas lire toute la vidéo avant de quitter) sont incluses car certaines versions de VLC ont un bogue dans --stop-time et d'autres systèmes peuvent ne pas en avoir timeout.

user2070305
la source
-1

J'ai eu jusqu'à présent une bonne expérience avec Media Player Classic et The KMPlayer. Ils peuvent lire des fichiers qui ont été partiellement téléchargés ou divisés en parties (par hjsplit par exemple).

Je pense qu'ils peuvent jouer le vôtre.

Bien que cela dépende également du type de codec et donc ...

Tour
la source