MP4-Datei defekt, wie retten?

Status
Nicht offen für weitere Antworten.

matzematzematze

Erfahrener Benutzer
#1
Hallo zusammen,

eine meiner *.mp4 FPV-Video-Dateien hat einen Defekt, da Sie nicht sauber beendet/geschlossen wurde. :mad:

Hat einer von Euch eine Möglichkeit diese ggf. zu reparieren oder kennt eine einfache möglichkeit hierzu?
(sind 120MB in HD720 / ca. 2 Minuten)

Viele Grüße
Matthias
 

schmiernippel

Erfahrener Benutzer
#5
Das hier funktioniert super :

"Das Tool: "HD Video Repair Utility" kann die Dateien beenden und macht die Videos wieder brauchbar.
Wenn ihr nicht dafür zahlen wollt, werden nur 50% des Videos repariert. Mit einem Hexeditor zB „HxD“ könnt ihr das Video öffnen und den Video-Hexcode einfach ein paar Mal unten dran kopieren. Kopiert aber lieber nicht den Header (Anfang des Hexcodes) mit, sondern erst ein paar Zeilen weiter unten. Das Speichert ihr dann als Videofile (MP4 Endung). Nun ist in der Hälfte die vom Tools wiederhergestellt werden alles mit drin"

Hat bei mir immer wunderbar funktioniert! Und daher beim Programm selber nichts verändert wird ist die Methode auch völlig legal !

Hier der DL Link : http://grauonline.de/cmsimple2_6/en/?download=videorepair.zip

MfG
 
#6
Der Trick über DOS das Video einfach doppelt so groß/lang zu machen und es dann mit dem tool HD Video Repair Utility zu 50% zu reparieren funktioniert einwandfrei. Leider speichert die GoPro die letzten Sekunden (in meinem Fall genau 30 Sekunden) wohl nicht ab.

Also für alle GoPro Besitzer mit nicht korrekt beendeten Aufnahmen:

1) MS DOS öffnen und z.b. directory C: aufrufen (Eingabe: cd\)
2) Das defekte videofile auf C: legen und in video1 umbenennen
3) Das videofile kopieren und video2 nennen
4) in MS DOS eingeben (die Dateiendungen anpassen auf eure):
copy/b video1.mp4+video2.mp4 repaired
5) MS DOS erstellt eine neue Datei repaired.mp4 die nun zwei mal das defekte videofile enthält
6) Dieses file mit dem tool HD Video Repair Utility reparieren

Damit hat man sein kaputtes Video zu 100%. Eventuell schreibt MS DOS das es keinen Zugriff auf das Videofile hat, dann müsst ihr mit Rechtsklick einfach das file für Jeden freigeben (lesen/schreiben).

Warum ich keine Skrupel habe dieses tolle, teure Tool zu umgehen? Weil das ein Halsabschneider ist. Ein defektes Video entsteht weil die meisten HD Kameras den "header" des files zum Schluß schreiben. Fehlt der, kann kein Player das file lesen - zum Beispiel wenn die Aufnahme nicht beendet wird. Somit muss man nur im Skript IRGENDEINEN header einfügen und das file ist lesbar, nichts anderes macht dieses "tolle" tool. Und das um so viel Geld? Ehrlich, das ist nicht fair.

Somit.. ich hoffe diesen Beitrag finden viele über Google und niemand bezahlt 29€ für 5 reparierte Videos.

Grüße,
Phil
 
#8
Und das sagst du mir nicht?? :D

Ich hab wirklich tagelang nach einer Lösung für Windows User gesucht.. wie auch immer, zumindest gibts jetzt eine Erklärung für Faule auf Deutsch ;)
 

sunny

Well-known member
#9
http://goprouser.freeforums.org/stickie-corrupt-video-file-restore-repair-utility-t1013.html

Wer sich mit dem englischen Forum nicht anfreuden kann, hier noch mal eine Anleitung in deutscher Sprache



Zitat von hema

Hallo Jürgen,

super Tipp ! Habe mich heute ein paar Stunden rangesetzt und konnte fast alle mp4-Files wieder restaurieren, nur einige wenige ruckeln, ansonsten Originalqualität, außer dass der Ton fehlt, aber das ist unproblematisch. Tatsächlich war dein Tipp auch der einzige der wirklich funktioniert hat. Alle Hinweise in den verschiedenen Foren im Netz sonst erfolglos, auch sämtliche Restaurierungs-Software, außer PC Inspector File Recovery, damit konnte ich die SDHC-Karte wieder erkennen und die Daten sichern, allerdings ohne sie lesen zu können. Offenkundig waren die Header defekt.

Hier eine kurze übersetzte Zusammenfassung des von JÜrgen verlinkten Tipps aus dem "GoProUser.freeforums.org" für alle, die gleiche Probleme haben:

"...ich hatte die RAW-Video-Daten gerettet, aber keinen Header, der mir erlaubt hätte, sie zu lesen."

Anhand unbeschädigter mp4-Files konnte er die Header rekonstruieren.

"... Also schrieb ich ein Perl-Skript um meine beschädigten und nicht abspielbaren Videos zu reparieren. ... Wenn du Perl v5.8 oder höher noch nicht auf deinem PC installiert hast musst du das zuerst installieren....eine gute Free-Version bekommst du hier http://www.activestate.com/activeperl/downloads , außerdem brauchst du den VLC-MediaPlayer.... wenn du Perl installiert hast, kannst du prüfen ob es richtig installiert ist, indem du die DOS-Eingabeaufforderung öffnest und den Befehl eingibst: "perl -v". Dann müsste eine Auskunft erscheinen wie diese:

"This is perl 5, version 12, subversion 1 (v5.12.1) built for MSWin32-x86-multi-thread (with 3 registered patches, see perl -V for more detail)...".

Um deinen File zu reparieren empfehle ich dir einen Temp-Ordner anzulegen, z.B. C:\temp. Kopiere deine beschädigten Video-Files in diesen Temp-Ordner. Lade die zip-Datei herunter, die ich diesem Post angehängt habe. Es befindet sich lediglich ein Perl-Skript (.pl) darin. Kopiere diesen Perl-Skript in denselben Temp-Ordner, in dem sich deine Videos befinden. Öffne die DOS-Eingabeaufforderung und rufe deinen Temp-Ordner auf, z.B. mit dem Befehl "cd \temp". Führe das Skript mit folgendem Befehl aus:

"perl fix_header_v3a.pl <file_to_fix> [-options]"

Ersetze <file_to_fix> mit dem vollständigen Namen des Video-Files, den du reparieren möchtest und [-options] mit einer der beiden folgenden Möglichkeiten:

1. "-reso"
(Resolution/Auflösung) setze hierfür die Auflösung, in der der korrupte File aufgenommen wurde.
Standardmäßig auf 720P30 'r2' wenn nicht weiter bekannt.
Gültige Werte sind: 480p60, 720p30, 720p60, 960p30, 1080p30, r1, r2, r3, r4, or r5

2. "-ctts N"
Setze ctts auf N. Standardmäßig auf 0 wenn nichts weiter bekannt. Nutze das bei ruckelnder Wiedergabe in rekonstruierten Videos, passend für funktionsunfähige Frames.
Gültige Offsets sind 0-2 for 720p30 'r2' & 960p30 'r4'; 0-5 for 720p60 'r3' & 480p60 'r1'

Ein Beispiel: Wenn deine beschädigte Datei GOPR0001.mp4 heißt und du den File im 720P60 'r3' - Modus aufgenommen hast, müsstest du folgenden BEfehl in die DOS-Eingabeaufforderung eingeben:

"perl fix_header_v3a.pl GOPR0001.mp4 -reso r3"

Wenn alles funktioniert hat, müsstest du ein ERgebnis wie folgendes sehen:

"Attempting to fix GOPR0001.MP4

Found frame 000252 at 0083b65b
Opened file GOPR0001.MP4.restore.mp4 for writing

Found 252 (fc) frames, or approx 4s of video at 60fps
min size e2d, max size 30c4c
from 8008, to 839b5c
Calculated header size of 0x8000
Using ctts offset of 0
Using 1280 x 720 @ 60 fps
Copying frame 000252...
Done."


Das Skript wird einen neuen File mit dem selben Namen wie deine beschädigte Datei generieren, mit der Bezeichnung ".restore.mp4" am Ende. Du müsstest diesen File mit VLC abspielen können.
Wenn das Video sehr ruckelnd abgespielt wird, führe das recovery-Skript noch einmal aus und nutze einen anderen -ctts-Wert bis das Video gut wiedergegeben wird.
Der File wird ohne Audio wieder hergestellt. Momentan ist das Skript nicht intelligent genug, um verloren gegangenen Ton wieder herzustellen.

Bitte sei dir bewusst:
Dies ist ein "quick and dirty"- und nicht besonders robuster Code. Es ist nicht schädlich. Es kopiert die alten Daten in einen neuen File, also sorge dafür, dass du genug Speicherplatz zur Verfügung hast, wenn du das Skript ausführst. Es versucht nicht die Audiodaten wieder herzustellen. Die RAW-Audio-Daten bleiben erhalten, aber ich weiß zu wenig über mp4 /ACC, um sie wieder herzustellen."


Soweit die Zusammenfassung. Hoffe das hilft noch anderen. Ich konnte auf Anhieb fast alle mp4-Files wieder herstellen, lediglich einige ruckelten, da arbeite ich noch weiter.
Sollte etwas nicht ganz korrekt übersetzt sein, korrigiert mich bitte.

Danke, Markus
und der Quellenverweis: http://www.gleitschirmdrachenforum....fehler-Was-Tun?p=381419&viewfull=1#post381419
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten