Frage von Paul Lenz:Ich habe hier einige kaputte MPEG2-Dateien, in die durch
Festplattendefekt und Datenrettung Teile aus anderen
Dateien hineingerutscht sind. Nun versuche ich, die Dateien
zu analysieren und die fehlerhaften Teile auszuschneiden.
Auffällig ist, dass in allen Dateien der String 00 00 01 BA
immer wieder vorkommt, und zwar alle 2048 Bytes. Wenn ich
über die Spieldauer des Videos die Anzahl der Frames
ermittele und dann die Anzahl dieser Strings pro Frame
ausrechne, kommt ich auf einen Wert zwischen 10 und 20.
Was für Dinger sind das, die 10 bis 20 Mal in einem Frame
vorkommen?
Paul Lenz
--
Dies ist eine gültige Email-Adresse.
Vor SPAM und Viren schützt mich www.spavi.de
Antwort von JT:
"Paul Lenz"
wrote:
> Auffällig ist, dass in allen Dateien der String 00 00 01 BA
> immer wieder vorkommt, und zwar alle 2048 Bytes. Wenn ich
> über die Spieldauer des Videos die Anzahl der Frames
> ermittele und dann die Anzahl dieser Strings pro Frame
> ausrechne, kommt ich auf einen Wert zwischen 10 und 20.
> Was für Dinger sind das, die 10 bis 20 Mal in einem Frame
> vorkommen?
00 00 01 BA ist Kennzeichnung des Headers eines MPEG Packs. Ein Pack
besteht aus einem Header und eine beliebigen Anzahl nachfolgender
Packets. Das ist die Struktur eines MPEGs auf Systemebene.
Darin verpackt finden sich dann die logischen Strukturen, die weitgehend
unabhängig davon sind, auch wenn ein Packet entweder nur Audio oder nur
Video enthält IIRC.
Mehr Infos finden sich z.B. unter
http://dvd.sourceforge.net/dvdinfo/mpeghdrs.html
http://www.andrewduncan.ws/MPEG/MPEG-1 Picts.html
jt
Antwort von Paul Lenz:
"JT" schrieb:
> > Was für Dinger sind das, die 10 bis 20 Mal in einem Frame
> > vorkommen?
>
> 00 00 01 BA ist Kennzeichnung des Headers eines MPEG Packs.
> Ein Pack besteht aus einem Header und eine beliebigen Anzahl
> nachfolgender Packets.
Ehrlich gesagt, bin ich jetzt kein bisschen schlauer. Ich dachte
bisher, Frames sind die kleinste Einheit bei einem Video, aber
nun scheinen Frames noch ein Packs unterteilt zu sein, richtig?
Und wozu?
> Mehr Infos finden sich z.B. unter
> http://dvd.sourceforge.net/dvdinfo/mpeghdrs.html
> http://www.andrewduncan.ws/MPEG/MPEG-1 Picts.html
Besten Dank, den ersten Link kannte ich noch nicht.
Leider kann ich da auch nicht sehen, was ein Pack ist.
Paul Lenz
--
Dies ist eine gültige Email-Adresse.
Vor SPAM und Viren schützt mich www.spavi.de
Antwort von JT:
"Paul Lenz" wrote:
> "JT" schrieb:
>> 00 00 01 BA ist Kennzeichnung des Headers eines MPEG Packs.
>> Ein Pack besteht aus einem Header und eine beliebigen Anzahl
>> nachfolgender Packets.
>
> Ehrlich gesagt, bin ich jetzt kein bisschen schlauer. Ich dachte
> bisher, Frames sind die kleinste Einheit bei einem Video, aber
> nun scheinen Frames noch ein Packs unterteilt zu sein, richtig?
Packets haben mit der Aufteilung der enthaltenen Daten nicht allzuviel
zu tun. Man kann es sich vielleicht als so eine Art
"Transport-Verpackung" vorstellen - oder wie ein Netz-Daten-Paket.
In den Daten der Packets findet sich dann die logische Struktur, also
Audio, Pictures, GOPs, etc.
Ein Picture kann sich z.B. über eine Packetgrenze hinweg erstrecken.
> Und wozu?
Eben als Transportverpackung z.B. zum Mischen der unterschiedlichen
Streams.
jt