[resolu] Video mp4 corrompue...

Video mp4 corrompue... [resolu] - Traitement Vidéo - Video & Son

Marsh Posté le 04-09-2012 à 20:15:01    

Salut a tous,
 
 
Je post ici car je n'ai pas trouvé de sujet pouvant réellement m'aider.
 
Je souhaiterai réparer ou corriger une video au format .3GP (MP4)
 
voici les extraits de GSpot :

Citation :


isom: MP4  Base Media v1 [IS0 14496-12:2003]
- 3gp4: 3GPP Media (.3GP) Release 4


 
 
J'ai filmé cela avec mon portable et l'appli a plantée...  
J'ai pu retrouver un fichier .mp4.tmp que j'ai recopier sur mon PC mais je n'arrive pas a trouver un outils ou comment le corriger... c'est comme ci l'appli n'a pas pu fermer le fichier ou terminer une conversion ou traitement dessus... (c'est la camera d'un Nexus donc Google App pour info)
 
l'entete a l'air bonne, j'ai ouvert le fichier avec un editeur hexadécimale et après les premières lignes
j'avais pas mal de lignes avec des 00 00 00 00 00  
 
Media info indique :
 

Citation :

Général
Nombre                                   : 279
Nombre de pistes de ce type              : 1
Type de flux                             : General
Type de flux                             : Général
Identifiant du flux                      : 0
Nom complet                              : D:\VID_20120904_135007.mp4
Nom du dossier                           : D:
Nom du fichier                           : VID_20120904_135007
Extension du fichier                     : mp4
Format                                   : MPEG-4
Format                                   : MPEG-4
Format/Extensions généralement utilisées : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
Nom commercial                           : MPEG-4
Profil du format                         : Base Media
InternetMediaType                        : video/mp4
Identifiant du codec                     : isom
Identifiant du codec/Url                 : http://www.apple.com/quicktime/dow [...] alone.html
Codec                                    : MPEG-4
Codec                                    : MPEG-4
Codec/Extensions généralement utilisées  : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
Taille du fichier                        : 366251765
Taille du fichier                        : 349 Mio
Taille du fichier                        : 349 Mio
Taille du fichier                        : 349 Mio
Taille du fichier                        : 349 Mio
Taille du fichier                        : 349,3 Mio
Taille du flux                           : 366251765
Taille du flux                           : 349 Mio (100%)
Taille du flux                           : 349 Mio
Taille du flux                           : 349 Mio
Taille du flux                           : 349 Mio
Taille du flux                           : 349,3 Mio
Taille du flux                           : 349 Mio (100%)
Proportion de ce flux                    : 1.00000
HeaderSize                               : 405024
DataSize                                 : 365846741
FooterSize                               : 0
IsStreamable                             : No
Date de création du fichier              : UTC 2012-09-04 14:25:38.700
Date de création du fichier (local)      : 2012-09-04 16:25:38.700
Date de dernière modification du fichier : UTC 2012-09-04 13:15:33.000
Date de dernière modification du fichier : 2012-09-04 15:15:33.000


 
Si dejà l'entete est lisible avec ces outils, est ce que quelque chose est possible ou ?
 
merci de votre aide ;)


Message édité par -Darmi- le 06-09-2012 à 19:15:43
Reply

Marsh Posté le 04-09-2012 à 20:15:01   

Reply

Marsh Posté le 04-09-2012 à 20:22:01    

Bonsoir,
 
L'en tête n'a pas été correctement écrite en mémoire, raison pour laquelle tu as des 00 au lieu d'autres nombres attendus. Il est peut-être possible de corriger les nombres sur l'éditeur hexa mais j'ignore comment et je ne crois pas que ce soit simple du tout. Ce type d'opérations restent envisageables si on veut modifier le profil ou le level d'un encodage AVC car il suffit de modifier certains nombres sur l'hexa mais dans ton cas c'est peut-être plus aléatoire...il faudrait savoir ce qui n'a pas été écrit correctement lors de la génération de ton fichier.

Reply

Marsh Posté le 04-09-2012 à 20:40:06    

hetre a écrit :

Bonsoir,
 
L'en tête n'a pas été correctement écrite en mémoire, raison pour laquelle tu as des 00 au lieu d'autres nombres attendus. Il est peut-être possible de corriger les nombres sur l'éditeur hexa mais j'ignore comment et je ne crois pas que ce soit simple du tout. Ce type d'opérations restent envisageables si on veut modifier le profil ou le level d'un encodage AVC car il suffit de modifier certains nombres sur l'hexa mais dans ton cas c'est peut-être plus aléatoire...il faudrait savoir ce qui n'a pas été écrit correctement lors de la génération de ton fichier.


 
Ok merci
 
oui j'ai enregistré une copie sans les lignes de 00 00 00 00  
et VLC lit le fichier, je vois la barre de progression bouger mais pas de son ni images... :(
 
et comment savoir ce qu'il manque...
il faut que je sache comment fonctionne l'appli...  :heink:  
 
j'ai regardé là :
http://www.garykessler.net/library/file_sigs.html
 
pas plus d'info sur le entêtes de fichiers video

Reply

Marsh Posté le 04-09-2012 à 20:44:54    

Je ne crois pas que moi  ni toi pouvons savoir quoi modifier, seul un expert pourrait te renseigner en ayant accès à ton fichier complet. Et ce n'est même pas sûr que ce soit possible de le faire d'ailleurs (à voir selon la gravité de corruption) et , pire encore, tu risques même d'endommager toi-même davantage encore le fichier en voulant modifier en mémoire les nombres alloués via l'éditeur hexadécimal. Il faut vraiment savoir ce qu'on fait. Il y a un certain nombre de nombres caractéristiques qui se trouvent en divers endroits lesquels sont suivis par d'autres nombres qui sont peut-être incorrects ou qu'il faut modifier. Si tu veux avoir une chance que quelqu'un t'aide il faudrait que tu upload l'intégralité du fichier afin que le ou les personnes susceptibles de t'aider puissent regarder sur l'éditeur hexa.

Reply

Marsh Posté le 06-09-2012 à 01:13:10    

Prends une nouvelle vidéo avec ton portable (une qui marche cette fois) et compare le header de ce fichier avec celui de ton fichier corrompu  ;)
Normalement ça devrait marcher en copiant les parties qu'il te manque depuis le header du bon fichier, SAUF pour le(s) octet(s) qui indiquent la taille des données. Y'a fort à parier que c'est cette donnée qu'il te manque (et ptetre d'autres) car c'est une donnée qu'on inscrit qu'à la fin de l'enregistrement une fois la taille finale connue.
Reste à trouver à quelle position cette info se trouve, c'est possible en procédant comme suit: prends 2 vidéos 3gp valides de durées différentes et compare les headers. les octets qui changent ont des chances de représenter la taille des données. Maintenant il faudra réécrire en hexadecimal la taille correcte pour ton fichier corrompu. Souvent cela correspond à la taille du fichier - (moins) taille du header, mais c'est qu'une supposition je connais pas le format 3gp. le mieux est de lire cette donnée sur un fichier valide, convertir la valeur en décimal, et voir à quoi ça correspond

Message cité 1 fois
Message édité par 350mhz le 06-09-2012 à 01:17:45
Reply

Marsh Posté le 06-09-2012 à 19:15:09    

350mhz a écrit :

Prends une nouvelle vidéo avec ton portable (une qui marche cette fois) et compare le header de ce fichier avec celui de ton fichier corrompu  ;)
Normalement ça devrait marcher en copiant les parties qu'il te manque depuis le header du bon fichier, SAUF pour le(s) octet(s) qui indiquent la taille des données. Y'a fort à parier que c'est cette donnée qu'il te manque (et ptetre d'autres) car c'est une donnée qu'on inscrit qu'à la fin de l'enregistrement une fois la taille finale connue.
Reste à trouver à quelle position cette info se trouve, c'est possible en procédant comme suit: prends 2 vidéos 3gp valides de durées différentes et compare les headers. les octets qui changent ont des chances de représenter la taille des données. Maintenant il faudra réécrire en hexadecimal la taille correcte pour ton fichier corrompu. Souvent cela correspond à la taille du fichier - (moins) taille du header, mais c'est qu'une supposition je connais pas le format 3gp. le mieux est de lire cette donnée sur un fichier valide, convertir la valeur en décimal, et voir à quoi ça correspond


Salut !
 
C'est ce que j'ai tenté de faire, j'ai joué avec l'entête, j'ai vérifié la fin du fichier, mais rien a faire...
 
jusqu'à ce que je trouve un topic sur les forum Android qui m'a bien aidé :
 
Alors pour ceux qui ont un souci comme moi de video MP4 3GP MOV etc:
 
essayez ce logiciel :
 
Grau-HD_Video_Repair_Utility
 

Citation :

Actuellement, notre logiciel peut automatiquement réparer endommagé mov, mp4, m4v, ou .3gp fichiers vidéo (en général, tous les fichiers vidéo basé sur le format conteneur QuickTime) qui utilisent l'un des formats codec suivants..:
 
    * avc1 (H264/AVC , used by most digital cameras, HD video cameras, iPhone, etc.) avc1 (H264/AVC, utilisé par la plupart des caméras numériques, caméras vidéo HD, iPhone, etc)
    * mp4v (H264/ISO, used by a few cameras) mp4v (H264/ISO, utilisé par quelques caméras)
    * MPG2 / xdvc / xd5d (MPEG-2 / XDCAM , used by Sony cameras) MPG2 / XDVC / xd5d (MPEG-2 / XDCAM, utilisé par les caméras Sony)
    * jpg (Motion JPEG, jpg (Motion JPEG, used by Panasonic cameras) utilisé par les caméras Panasonic)
    * icod (Apple Intermediate Codec , used by Final Cut) icod (Apple Intermediate Codec, utilisé par Final Cut)
    * dvc / dvpp / dvhp (DVCPRO / DVCPRO HD, used by Panasonic cameras) dvc / dvpp / dvhp (DVCPRO / DVCPRO HD, utilisé par les caméras Panasonic)
    * apch / apcn / apcs / apco / ap4h (ProRes 4444/422/LT/HQ/Proxy, used by Final Cut) APCH / APCN / apcs / APCO / ap4h (ProRes 4444/422/LT/HQ/Proxy, utilisé par Final Cut)


 
 
 
Il va justement prendre un fichier créé à partir de la même application ou appareil comme référence si celui ci est lisible
et corriger le fichier vidéo corrompu grâce a l'analyse de l'entête...
 
 
 
Tout simplement génial !
 
J'ai testé la version Demo gratuite, et comme j'ai pu récupérer ma vidéo ( avec un décalage du son mais ca je vais voir après)
 j'ai acheté la version complète (35€) pour recuperer les 100% du film
 
j'ai pu récupéré la vidéo de 6min de ma fille de 3ans et ca, ca n'a pas de prix :)
 
 
Donc merci a vous ;)
 
Sujet clos :)


Message édité par -Darmi- le 06-09-2012 à 19:16:41
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed