Wie erkennt man EOF-Marker für MPEG?

967
rism

Ich verwende WinHex, um Dateien von der Festplatte wiederherzustellen. Mit Ausnahme von MPEG-Dateien ist es meistens sehr gut. Es scheint, dass fast jeder einzelne von ihnen in Dateien unterschiedlicher Größe, fast immer unter 1 MB, verkürzt wird.

Es erkennt den Beginn des Dateisynccodes von, 0x000001BAaber wenn die Hex-Offsets nach dem Ende der Datei durchsucht werden, erscheinen die ausgewählten EOFMarker völlig zufällig. Es gibt viel Ende, 0000aber dann verstehe ich das Format so, dass ein MPEG-Stream Null-Bit-Stuffing verwenden kann, um die strikte Einhaltung der Gesamtbitrate sicherzustellen ... Ich würde also nicht erwarten, dass 00000 das Ende der Dateimarkierung sein wird aus diesem Grund.

0000 EOF

Dann gibt es andere, die mit zufälligen Bytecodes enden:

zufällig eof

Was ich suche und nicht finden kann, sind entweder die "richtigen" EOFMarkierungscodes (nicht sicher, warum WinHex sie nicht verwendet) oder alternativ eine Art Inhalt-Längen-Header-Felder a'la HTTP, auf die ich schließen kann EOFvon SOF.

3
Mpeg was? Ich würde das Ende von Vids Vary sagen. ein paar überprüfend, erhielt ich das Programm, mit dem es am Ende bearbeitet wurde, oder es endet einfach mit 00 oder 00 00. Die Größe muss in den Kopfzeilen stehen, da die Programme in diesen Kopfzeilen suchen. Stream (zumindest ein Live-Stream) weiß nicht, wo er enden wird, daher kann er seine Größe nicht kennen und er könnte kalt werden. Haben Sie ungebrochene auf die gleiche Weise verarbeitet? Kann das Ende nicht finden, den Anfang der nächsten Datei finden? Das ist alles jenseits von mir. Helfen in der Festplattenstruktur die Daten, die im Cluster enden, dabei, das Ende zu finden? Psycogeek vor 11 Jahren 0

0 Antworten auf die Frage