Ein Erklärungsversuch von
Björn Eisert Stand: 1995
Und
179877
haben sich den
in diesem Monat schon angetan.. =8)
Inhalt :
Motion Pictures Expert Group,
gegründet Ende 1989, off.Name: ISO/IEC JTC1 SC29 WG11
- ISO - international organization for standardization
- IEC - international electro-technical commission
- JTC1 - joint technical committee 1
- SC29 - sub-comittee 29
- WG11 - Work Group 1 (moving pictures with audio)
Zielsetzung ist die Spezifikation eines Modells zur Kompression von Bewegtbildern und
Tonspuren. Erste Modellspezifikationen erfolgen 1990, Santa Clara.
Die einzelnen Algorithmen sollen nicht festgelegt werden, nur das Modell an sich.
- Es ist eine 'block-based motion compensation prediction (MCP)', eine zeitliche DPCM
aufbauend auf festen Samplegröße (8 Bit), einen 4:2:0 Farbraum, feste Macroblocks, variablen
Kodetabellen.
- Die die Stufen sind: MCP -> DCT -> ZZ -> Q -> RLC -> VLC
- Mit den Kompressionsraten bei Intraframes von 1:6-80 und Interframes von 1:70-1000 wird im Mittel eine Gesamtkompression von 1:150-400 erreicht.
Verwandte Formate:
- H.216 / p.64 : Keine B-Frames, Übertragung in n*64kBit (ISDN)
- AVI, FLC/FLI, : Deltaframes, keine Interframes, keine DCT
- JPEG : Stand bzw. Einzelbilder, Sampling mit max 11Bits
- JBIG : SW-Bilder (Faxe)
- MHEG : Softwarestandart im Bereich Multimedia/Hypermedia
- CD-I CD-Video : MPEG-1 ca. 150-250 KByte/s
MPEG I
Santa Clara Draft 1991
Standart ISO/IEC 11172, August 1993
0,9 - 1,5 MBit/s
Audio
MPEG II
DIS September 1994
IS-Status vorr.1996
1,5 - 15 MBit/s (TV app. 6 MBit/s)
Audiospuren 384 KBit/s - 2 MBit/s HIFI
Weitere geplante Features:
4:2:0, 4:2:2 4:4:4 Sampling, interlace-Formate, 3:2-Anpassung, (30/25fps)
sowie konstante & variable Bitraten.
MPEG IV
Arbeitsbeginn July 1994
extrem langsame/kleine Bitraten/ kleine Zwischenspeicher
Suche nach Kompressionsalgorythmen / Verfahren
Zu MPEG I
Das grundsätzliche Verfahren einer MPEG-Kodierung besteht aus dem Versuch,
möglichst viele Bildteile nur durch die Differenz des Bildinhaltes zum vorherig kodierten
Bild zu beschreiben.
Dieses geschieht im Gegensatz z.B. zu den AVI/FLI-Formaten mit einer
zusätzlichen Funktion der Bewegungskompensation (Motioncompensation). Diese Funktion
ermittelt Verschiebung von Bildteilen, wie sie bei Kameraschwenks oder sich bewegenden
Objekten entstehen. Die Bewegung von diesen Bildteilen können dann in Form von einfachen
zweidimensionalen Verschiebungsvektoren ausgedrückt werden. So kommt beispielsweise ein
langsamer Kameraschwenk fast ohne die Kodierung von direkten Bildinformationen aus. Eine
weitere Eigenschaft zur Erhöhung der Datenreduktion ist die Interpolation von
Bildbereichen über die Zeit, die Kodierung von Differenzen innerhalb sich bewegender Teile.
Ein wirklich hoher Komprimierungsfaktor kann allerdings nur durch Weglassen wenig
relevanter Reizinformationen bzw. deren Gewichtung bezüglich der
menschlichen Wahrnehmung erfolgen. Im optischen und akustischen Spektrum sind die
menschlichen Sinne nicht linear empfindlich und reagieren im Zusammenhang mit bereits
aufgenommenen Reizen dynamisch empfindlich. Mit diesem Wissen ist es möglich solche
'Wahrnehmungstoleranzen' geschickt zur Datenreduktion zu nutzen.
Das Weglassen bestimmter Informationen läßt sich am einfachsten durch komplexe
Filterfunktionen bewerkstelligen. Hierzu müssen die Bildinformationen mit einer der
Fourriertransformation ähnlichen Funktion, der Diskreten Kosinustransformation (DCT) in
die komplexe Ebene bzw. den Frequenzraum transformiert werden. Hier erscheinen Bildinhalte
mit hohen Bildinformationsschwankungen u.a. lageindifferent.
Bereiche mit hohem Detailreichtum bzw. mit häufigen Datenänderungen erscheinen im hochfrequenten
Teil der DCT-Ausgabe, entsprechend werden monotone Bildteile im niederfrequenten Spektrum abgebildet.
Neben den
wahrnehmungsspezifischen Filterfunktionen (Farb- oder Kontrastwahrnehmung) ist eine
weitere Funktion bezüglich der Abbildung in festen Rastern
für eine Datenreduktion
folgendermaßen anschaulich.
Bildinformationswechsel, welche in ihrer Frequenz das Darstellungsraster (hier die Bitmap)
übersteigen, können sowieso nicht mehr richtig dargestellt werden, Informationswechsel mit
einer geringfügig unter dem Raster liegenden Wechselfrequenz verursachen störende Effekte,
wie beispielsweise einer Moireestreuung und tragen somit ebenfalls nicht mehr sinnvoll
zu der korrekten Bildinformation bei.
Nach dem Herausfiltern dieser Bereiche sowie der Wertung entsprechender
Wahrnehmungsspezifischer Gesichtspunkte liegen in dem Frequenzspektrum nur noch wenige
Spektrallinien relevant vor. Dieses Spektrum kann nun wiederum vektorisiert und
zusammen mit den Bewegungsvektoren (RLE) längenkodiert werden. Abschließend kann eine
weitere Komprimierung durch die Suche nach einem optimalen Übertragungsalphabet (hier durch
eine Huffmankodierung) durchgeführt werden.
Nach diesen Optimierungsphasen lassen sich je nach Art und Weise der Bildinformationen und
des Verhältnisses von interpolierten zu kodierten Originalbildern sowie der
gewünschten Bildqualität mittlere Kompressionsraten von 1:100 bis fast 1:800 erreichen.
Betrachtet man diesbezüglich die mittleren Kompressionsraten datenerhaltender
Packalgorythmen mit Raten zwischen 1:2 bis 1:6 erscheint der immense zusätzliche
Rechenaufwand gerade im Hinblick auf die Originalgröße eines 90 min. Filmes mit etwa 34
GBytes als einzige sinnvolle Möglichkeit der digitalen Übertragung oder Speicherung.
Bilder:
MPEG-Engine
,
Bilder..... StandartEchtfarbBitmap RGB 24Bit pro Pixel
* Bitmaps, RGB vs. YUV, Retina
Die in der Rechneranwendung üblichen Repräsentationen von Bilddaten stellen bei der
überwiegenden Zahl der Schwarzweißdarstellungen Vektorformate wie z.B. Postscript und bei
der Darstellung von farbigen Bildern sogenannte Bitmaps dar. Bitmaps führen pro Bildpunkt
eine entsprechend der Farbauflösung genaue Information der drei Grundfarben Rot Grün Blau
mit sich. Sind die Formate 'Echtfarbfähig , so werden die RGB-Werte direkt pro Bildpunkt
angegeben, ansonsten über eine Zuordnungstabelle (z.B. bei 256 aus ...) abgebildet. Diese
Darstellung entsprechend der drei additiven Grundfarben birgt eine Reihe von Problemen und
verschenkt im allgemeinen Platz für Informationen. Neben dem ungünstigen nötigen
Übertragungsalphabet ist diese Darstellung auch insofern unnatürlich, als daß
die menschliche
Wahrnehmung nicht linear ist. Betrachtet man den Augenhintergrund, so bestehen die zur
Verfügung stehenden Rezeptoren aus einer großen Anzahl von helligkeitsempfindlichen
Bereichen (Zählung der einfallenden Photonen pro Zeit) mit einer mittleren
Auflösungsfähigkeit von ca. 100 Graustufen aber großer dynamischer Empfindlichkeit. Die
Zahl der farbempfindlichen Rezeptoren (Energie der einfallenden Photonen) ist bedeutend
geringer. Diese sind wesentlich helligkeitsunempfindlicher (wörtlich: Bei Nacht sind alle
Katzen grau..') können aber in ihrem 'Arbeitsbereich' eine wesentlich nuanciertere
Einteilung von Farbwerten bzw. Energieniveaus vornehmen. So ist es zu erklären, daß das
menschliche Auge gegen die geringe Graustufung einige Millionen Farbnuancen unterscheiden
kann. Wendet man dieses auf eine Farbdarstellung an, so ist von dieser zunächst die
Helligkeitsinformation zu trennen, wobei hier die Menge der Punkte entscheidender als
ihre Informationstiefe ist. Die eigentliche Farbinformation läßt sich anhand des
Energiespektrums als Farbvektoren günstig und kompakt beschreiben; hier ist die einzelne
Genauigkeit von wesentlich höherer Bedeutung, als die Menge dieser Informationen.
In der praktischen Anwendung führt dies zu der Y-Cb-Cy bzw. YUV-Darstellung, mit dem
Y-Teil der Helligkeitsinformation und den Cb/Cy bzw. U/V Farbvektoren.
Die o.g. Mengenbeschränkung wirkt sich in einem MPEG-I-Strom folgendermaßen aus: Von jedem
ursprünglichen Bildpunkt wird die Helligkeitsinformation berechnet, in horizontaler und
vertikaler Richtung des Bildes, aber nur jeder zweite Bildpunkt zur Bestimmung der
Farbinformation herangezogen. Auf je 4 Helligkeitsinformationen kommt also nur eine
Farbinformation; man schreibt 4:2:0. Stellt man die Werte in Byteform dar, so erfolgt
hierdurch schon eine Halbierung der Bildinformation ohne wesentlichen Informationsverlust.
Weitere ab MPEG II vorgesehene Auswahlarten sind ein 4:2:2 und ein 4:4:4-Sampling für
besonders hochwertige Farbdarstellungen.
Unterteilung in Blöcke
* Blöcke a 8*8, Makroblöcke 2*2 Blöcke (16*16 Pixel)
Für die weitere Verarbeitung werden 8*8 Bildpunkte (bei 4:2:0 also entsprechend je 64Y und
16U/V -Werte) zu sog. Blöcken zusammengefaßt; für die Erkennung von Bewegungen von
Bildteilen werden je vier von diesen wiederum zu Makroblöcken, größtenteils aus
Performancegründen, zusammengefaßt. Diese Zusammenfassung ist auch im Hinblick auf die
spätere Diskrete Kosinustransformation (DCT) und die entsprechende
Überführung in den
Frequenzraum anschaulich.
Sofern man in diesen Blöcken entsprechend der Gleichförmigkeit
von Helligkeits und Farbverteilungen von niederfrequenten Bildbereichen bzw. bei hoher
vorhandener Dynamik in diesen Blöcken von Bildbereichen im höheren Frequenzspektrum
sprechen und damit über die folgende Kodierung dieser Blöcke entscheiden kann.
Weiterhin ist der bei der mehrfachen Transformation und Bearbeitung entstehende
Abbildungsfehler leicht als mittlere bzw. maximale statistische Abweichung
Transformierten und Orginalblöcken innerhalb dieser kleinen Bildbereiche einfach zu
fassen und zu interpretieren. Beachtet man noch die gewünschte Übertragung in einem
seriellen Bitstrom, so sind kleine Beschreibungseinheiten resistenter gegen
Übertragungsfehler in Bezug auf das dekodierte Gesamtbild.
Bilder:
MPEG-Engine
,
Die Erkennung von sich bewegenden Bildteilen findet im bisherigen Stadium nur auf Basis
von Verschiebungen statt. Denkbar wären jedoch auch weiterführende Transformationen wie
Drehungen und Skalierungen. Einen in diese Richtung gehenden Ansatz stellt die
MPEG-Software von Barnsley auf der Basis iterierter Funktionensysteme (IFS) dar, welche
bis jetzt allerdings nicht standardisiert ist und eine immense Rechenleistung bei der
Kodierung voraussetzt, wohl aber aufgrund der hohen erreichbaren Kompressionsraten im
Zusammenhang mit MPEG IV interessant werden könnte.
Eine Vielzahl von Kamera und Objektbewegungen lassen sich jedoch schon in Form von
einfachen Verschiebungen in der Ebene beschreiben. So besteht ein langsamer Kameraschwenk
zum größten Teil aus verschobenen Bildbereichen, nur der Rand enthält wirklich neue Daten.
Diese 'alten' Bildbereiche lassen sich für jeden Makroblock ( 4*( 8*8 + 4*4) Bytes = 320
Bytes) in einem einzigen Verschiebungsvektor ohne Informationsverlust ausdrücken (i.A. 2
Bytes). Durch die folgende RLE und Huffmannkodierung schrumpft die zu kodierende Schar
gleicher Informationen (Bewegungsvektoren gleichen Inhalts) noch weiter.
Betrachtet man sich bewegende Objekte, so ist das Verfahren fast identisch, nur sind
eventuell in Makroblöcken eingeschlossene Hintergrundbereiche nicht mehr so einfach zu
beschreiben. Hier greifen weitere Kontrollmechanismen. Zum einen wird eine statistische
mittlere Abweichung zum alten Makroblock sowie die größte enthaltene Abweichung zu
folgenden Überlegungen herangezogen:
Sind die Fehler gering, so wird auf eine Angleichung des Bildinhaltes vollständig
verzichtet und wieder nur der Bewegungsvektor übertragen. Ist der maximale Fehler und der
mittlere Fehler innerhalb gewisser Grenzen, so wird die Differenz des
Makroblockes mit kodiert und übertragen. Ist der maximale Fehler und/oder die mittlere
Abweichung sehr groß, so wird auf den Verschiebungsvektor verzichtet und der Block als
ganzes kodiert. Auch ist es aus Performancegründen nicht immer sinnvoll, für jeden
Makroblock das gesamte Bild abzusuchen, sondern eine gewisse Nachbarschaft
vorauszusetzen. In der H.261 Norm, welche mit geringen Bitraten und Echtzeitverfahren
auskommen muß, ist diese Grenze beispielsweise auf +/- 15 Pixel festgesetzt.
Diese Erkennung von sich bewegenden Bildteilen beruht zudem ggf. auf einer Folge von
mehreren Bildern, welche somit untereinander referenziert werden. Hier unterscheidet man
zwischen referenzierten Bildern ( Interframes)
und solchen, welche nur auf sich selbst
verweisen, sogenannte Intraframes
oder Originalbilder. Diese sind beispielsweise bei
abrupten Bildwechseln oder Schnitten sinnvoll, aber auch im normalen Ablauf von Zeit zu
Zeit notwendig um einerseits die Abbildungsfehler nicht unbemerkt zu groß werden zu
lassen, andererseits in der Behandlung eines Bildstromes, um Bildsequenzen relativ
direkt anspringen zu können, schneller vorwärts oder rückwärts abspielen zu können
sowie Übertragungsfehler auf kurze Sequenzen einzudämmen. Einige der derzeitigen Codecs
verzichten auf die Interframes und kodieren nur
Intraframes.
Bei den Interframes wird wiederum zwischen Predicted-Frames und Bidirektional
Predicted-Frames unterschieden. Die P-Frames referenzieren auf Intraframes oder
voranlaufende P-Frames, die B-Frames referenzieren auf das je nächste vor- und nachlaufende
Intra- oder P-Frame und werden selbst nicht mehr als Referenzen herangezogen. Je nachdem,
ob ein P-Frame auf ein nachfolgendes oder voranlaufendes Bild referenziert wird, spricht man
von einem Forward- oder Backwardpredicted-Frame. Eine übliche Reihenfolge wäre
beispielsweise ein Intraframe, je drei B-Frames, ein P-Frame, wieder je drei B-Frames und
ein eigentlich zur nächsten Sequenz gehörendes Intraframe. Die Kodierungssequenz würde
praktischerweise lauten: "Referenziere das P-Frame vom Intraframe,
referenziere/differenziere dann das dritte, zweite und erste B-Frame aus der ersten
B-Sequenz vom Intra- und dem P-Frame. Referenziere dann das erste, zweite und dritte
B-Frame vom P-Frame und dem nachfolgenden Intraframe".
Die Sequenz der I/P/ B-Frames ist bei
der Kodierung frei wählbar und vom Bildmaterial, geforderter Kompression, Bildqualität,
maximaler Datenübertragungsrate sowie des maximalen erlaubten Dekodieraufwandes abhängig.
Dieses schlägt sich beispielsweise wieder in der H.261 nieder, in welcher keine B-Frames
vorgesehen werden.
Bilder:
MPEG-Engine
,
Framefolge
,
Wie bereits mehrfach erwähnt, ist eine weitere wesentliche Funktion die Überführung der
Pixeldaten in den Frequenzraum. Hier wird entsprechend der zweidimensionalen Ausdehnung
eines Einzelbildes bzw. der bereits zusammengefaßten Blöcke von 8*8 Pixeln eine
zweidimensionale Diskrete Kosinustransformation angewendet. Diese unterscheidet sich im
wesentlichen von der bekannteren Fourriertransformation durch die Beschränkung auf die
symmetrischen Frequenzanteile, die der Kosinusfunktionen (cos(-x)=cos(x)). Hier läßt sich
anschaulich nur beobachten, daß sich Bilddetails entsprechend ihrer Ausdehnung und
Detailhaltigkeit in entsprechend niedrig- oder höherwertigen Pixelwechselfrequenzen
ausdrücken lassen. Die sich daraus ergebenden Vorteile sind neben der direkten Anwendung
komplexer Filterfunktionen und Wertungskriterien (s.a. Quantisierung/Wertung) auch die
Reduktion von notwendiger Beschreibung (Daten) bei bestimmten Mustern. Betrachtet man
beispielsweise ein schachbrettartiges Muster, so läßt sich dieses durch zwei Koeffizienten
einer DCT ausdrücken, wobei die Frequenz den Quotienten einer periodischen
Hell-Dunkelsequenz gegenüber dem Darstellungs(Pixel)rasters in jeweils X- und Y-Richtung
darstellt. Die restlichen Koeffizienten liegen nahe Null und können vernachlässigt werden.
Schwebungen, wie sie z.B. bei dem Auftreten zweier ähnlicher Töne auftreten bilden schon
komplexere Muster, können aber mit einem zusätzlichen Koeffizienten beschrieben werden.
Stellt man sich nun komplexere Bildmuster vor und betrachtet die endliche Ausdehnung
dieser, lassen sich fast alle Muster in wesentlich weniger
DCT-Koeffizienten, als direkten
Pixelinformationen darstellen. Einzig ein echtes 'weißes Rauschen', welches in realen
Bilddaten selten gebraucht wird, würde offensichtlich den gleichen Umfang an
DCT-Koeffizienten wie Pixeldaten benötigen.
Die durch die DCT gewonnenen Koeffizienten können nun
entsprechend mehrerer Parameter
gewichtet oder quantifiziert werden. Die wichtigsten hier zu nennenden Gewichtungen
beziehen sich auf Überlegungen zur Minimierung von Rauschanteilen und Verzeichnungen in
einem festen Darstellungsraster sowie der Verzicht auf wenig wahrnehmungsrelevante
Bildinformationen. Dieses stellt den verlustbehafteten Teil dieses Verfahrens dar. Zwar
entstehen bereits in der DCT/IDCT Rundungsfehler,
sie sind aber im Bezug auf die
Sichtbarkeit in den Bilddaten zu vernachlässigen.
Viele dieser Parameter basieren auf Erfahrungswerten, einige grundsätzliche Aussagen sind
jedoch schnell einsichtig. Versucht man beispielsweise Details mit einer höheren Auflösung
als das zur Verfügung stehende Darstellungsraster abzubilden, sind diese zumindest nicht
mehr direkt darstellbar, in vielen Fällen erscheinen sogar völlig andere Muster. Auch
die weitere Verarbeitung von Frequenzen nahe unterhalb der Grenzfrequenz des zur Verfügung
stehenden Abbildungsrasters führt zu Fehlabbildungen oder Bildverfälschungen.
Betrachtet man beispielsweise Farbverläufe auf sich bewegenden Objekten, so ist die
Wahrnehmung dieser eher eingeschränkt, solange die mittleren Farbwerte eingehalten werden,
ist die gesamte Zahl der einzelnen Farben innerhalb dieses Verlaufes nicht mehr so
wichtig. Auch ist die exakte Farbreproduktion nur im Verhältnis zu umgebenden Farben und
Kontrasten relevant, da das menschliche Farbgedächtnis nicht sehr exakt ist.
Dieses und eine Reihe weiterer optischer (oder akustischer) Effekte können in Form von
Gewichtungen noch eine Reihe weiterer DCT-Koeffizienten auf kleine Werte drücken oder ganz
verschwinden lassen.
In der Implementation setzt hier ein Rückkopplungspfad ein, der die bis hierhin
entstandenen Werte zurückgewichtet und einer inversen DCT (IDCT)
in YUV-Bilddaten
zurückverwandelt. Die Differenz zu den Orginalteilen entscheidet dann über weitere zu
übertragende Informationen zum Ausgleich von Fehlern oder die Einbindung von
Originalblöcken, sog. Intrablocks.
Bilder:
MPEG-Engine
,
Thresholds
,
Die durch die DCT und Gewichtung entstehenden Felder mit nur noch wenigen relevanten
Werten müssen zur weiteren Übertragung in eine serielle Form oder Vektor gebracht werden.
Hierzu wird in einer Zickzacklinie von der Koordinate (0,0) bzw. dem Koeffizienten mit der
Frequenz 0 (DC) in Richtung immer höherer Frequenzbereiche bis zum 64.Wert an
Position (7,7) die Tabelle folgendermaßen abgetragen:
(0;0),(1;0),(0;1),(0;2),(1;1),(2;0),(3;0).....(6;7),(7;7)
Hierbei sind die in diesem Vektor stehenden Werte entsprechend häufig gleich oder
nahe null, je weiter sie hinten stehen, da sie immer höhere Frequenzbereiche
charakterisieren.
Durch eine RLE lassen sich nun Wort oder Bitfolgen einfach zusammenfassen, indem
die Menge der aufeinanderfolgenden gleichen Werte angegeben und nicht jeder Wert einzeln
kodiert wird.
Optimiert man nun noch die zur Darstellung einer Folge notwendigen Wörter entsprechend
ihrer Häufigkeit auf die Wortlänge oder Zeichenlänge in einer Gruppe (Huffmankodierung),
lassen sich weitere Informationseinheiten einsparen.
Die Größe dieser Gruppen richtet sich nach der mittleren Zahl der Blöcke oder Teilbilder,
welche in einer Verarbeitungseinheit zur z.B. direkten Anwahl von Einzelbildern oder
bestimmten Zeiteinheit übertragen werden können.
Zum Thema Kompression:
Interessanterweise fiel bei der Frage, 'Wie sind diese Files jetzt am besten in die Uni zu
bekommen ?' auf, daß bei dem Einsatz eines hochoptimierenden datenerhaltenden Packprogramms
(ARJ 2.41 Copyright (c) 1990-93 Robert K Jung. Jung 03 1993) die MPEG-Files noch wesentlich
zu komprimieren waren. Die eigentliche Erwartung war eine nur minimale, intuitiv die
header betreffende Kompression, es zeigte sich aber eine mittlere Kompression um etwa 40%.
Dieses legt den Schluß nahe, daß angewendete Huffmanverfahren noch weiter zu optimieren
ist, zumal der ARJ-Packer auf einem Huffmann-basierten Verfahren aufsetzt. Ein Testversuch
mit einem etwas älteren auf dem Lempel-Ziv-Huffmanverfahren beruhenden Packprogramm ( Lh2
Peter Fitzsimmons 89/09/19 Version 2.14) ergab ein ähnliches Bild mit einer Kompression um
etwas mehr als 30% in weniger als zwei Sekunden für die 5 Testfilme.
Hier scheinen die Einschränkungen bezüglich der besseren Hardwareimplementierung der
Huffman-Kodetabellen gerade auch in Hinblick auf den immensen Aufwand einer DCT/IDCT
zumindest bei multimedialen (nicht strikt Echtzeit-) Anwendungen als unzeitgemäß.
ARJ 2.41 Copyright (c) 1990-93 Robert K Jung. Jun 03 1993
All Rights Reserved. U.S. Patent No. 5,140,321 and patent pending.
*** This SHAREWARE program is NOT REGISTERED for use in a business, commercial,
*** government, or institutional environment except for evaluation purposes.
Processing archive: MPGDEMOS.ARJ
Archive created: 1995-03-05 16:10:54, modified: 1995-03-05 16:10:54
Filename Original Compressed Ratio DateTime modified CRC-32 AttrBTPMGVX
------------ ---------- ---------- ----- ----------------- -------- -----------
FLC_FOR.FLI 4513990 517923 0.115 95-03-04 23:37:40 71218153 A--W B 1
IBPIBP_.MPG 43692 37009 0.847 95-03-05 15:58:44 44715E5C A--W B 1
IBPUR.MPG 131085 89037 0.679 95-03-04 20:41:34 82E48644 A--W B 1
INTRAPUR.MPG 243788 156803 0.643 95-03-04 20:37:46 19939F3D A--W B 1
IPPPPXX.MPG 25920 14792 0.571 95-03-05 15:32:50 5DCE7A63 A--W B 1
STANDART.MPG 56331 45044 0.800 95-03-05 15:20:02 CBC4D27F A--W B 1
----------- ---------- ---------- -----
6 files 5014806 860608 0.172
Die Sequenz besteht aus 82 Bildern, der größe 352*240 24 Bit Farben
BMPs : 20,3 MB Standartbildformat, unkomprimiert
YUVs : 10 MB 1: 2 Rohinformation, 24 Bit/Pel
FLI/FLC : 4,3 MB 1: 4,7 Deltakoding, Differenzen zum Vorläufer
Intra : 238 kB 1: 88 Keine Motionestimation
IBpur : 128 kB 1:163 Je ein Intra- und ein Bidirectional interpoliertes Bild
Ibbpbb (Standart): 55 kB 1:378
IPP...82 : 25,3 kB 1:822
IBB...82 :
ibbbbpbbbbpbbbb : 42 kB 1:490
Das Demo als FLI (Vorsicht, 4,4 MB)
Das Demo nur mit INTRA-Frames
Das Demo mit sich abwechselnden I/ B-Frames
Das Demo in IBBPBB-Sequenz
Das Demo in IBBBPBBBPBBB-Sequenz
Das Demo mit einem Intra und 60 Predicted-Bildern
, Die MPEG-Engine
, die Framefolgen
, die Thresholds
, und zum Sampling
Dieses Dokument wird z.Zt. durch Björn Eisert
betreut, webmaster der cybersite