Moving Picture Experts Group: Unterschied zwischen den Versionen

Aus Mikiwiki
Wechseln zu: Navigation, Suche
(Informationen über eine MPEG-Datei)
(Informationen über eine MPEG-Datei)
Zeile 101: Zeile 101:
 
  transcode v1.0.2 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
 
  transcode v1.0.2 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
 
  [transcode] (probe) suggested AV correction -D 0 (0 ms) | AV 0 ms | 0 ms
 
  [transcode] (probe) suggested AV correction -D 0 (0 ms) | AV 0 ms | 0 ms
  [transcode] auto-probing source Stax-Volt tour 1967.mpg (ok)
+
  [transcode] auto-probing source file.mpg (ok)
 
  [transcode] V: import format    | MPEG    (V=mpeg2|A=mp3)
 
  [transcode] V: import format    | MPEG    (V=mpeg2|A=mp3)
 
  [transcode] V: AV demux/sync    | (0) sync AV at PTS start - demuxer disabled
 
  [transcode] V: AV demux/sync    | (0) sync AV at PTS start - demuxer disabled
Zeile 121: Zeile 121:
 
  [export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
 
  [export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
 
  [import_mp3.so] MP3->PCM
 
  [import_mp3.so] MP3->PCM
  [import_mp3.so] tcextract -a 0 -i "Stax-Volt tour 1967.mpg" -x mp2 -d 0 | tcdec
+
  [import_mp3.so] tcextract -a 0 -i "file" -x mp2 -d 0 | tcdecode -x mp2 -d 0 -z 0
  ode -x mp2 -d 0 -z 0
 
 
  tc_memcpy: using sse for memcpy
 
  tc_memcpy: using sse for memcpy
 
  (extract_mp3.c) missing start code at 0x1214
 
  (extract_mp3.c) missing start code at 0x1214
 
  (extract_mp3.c) incorrect zero-byte padding detected - ignored
 
  (extract_mp3.c) incorrect zero-byte padding detected - ignored
  [import_mpeg2.so] tcextract -x mpeg2 -i "Stax-Volt tour 1967.mpg" -d 0 | tcdeco
+
  [import_mpeg2.so] tcextract -x mpeg2 -i "file.mpg" -d 0 | tcdecode -x mpeg2 -d 0 -y yv12
  de -x mpeg2 -d 0 -y yv12
 
 
  tc_memcpy: using sse for memcpy
 
  tc_memcpy: using sse for memcpy
 
  (extract_mpeg2.c) missing start code at 0x1214
 
  (extract_mpeg2.c) missing start code at 0x1214

Version vom 25. Januar 2009, 16:34 Uhr

Die Moving Picture Experts Group / MPEG (dt. "Expertengruppe für bewegte Bilder") ist eine Vereinigung, die sich mit der Standardisierung der Datenkompression von Videodaten und den dazugehörenden Bereichen (z. B. Audiodatenkompression, Containerformate) beschäftigt. Im Alltag wird mit "MPEG" meist nicht die Expertengruppe, sondern ein spezieller MPEG-Standard bezeichnet.

Die hochoffizielle Bezeichnung für MPEG ist "International Organization for Standardization/International Electrotechnical Commission, Joint Technical Committee 1, Subcommittee 29, Working Group 11" (bzw. ISO/IEC JTC1/SC29/WG11). Oftmals wurden Ideen der Internationalen Fernmeldeunion / ITU aufgegriffen, erweitert und verbessert.

MPEG-Formate

Die MPEG hat folgende verlustbehaftete Komprimierungsformate standardisiert. Sämtliche H.26x Standards sind ITU-Standards. Aber sie gehören aufgrund der Zusammenarbeit mit MPEG dennoch dazu.

Name Veröffentlichung Beschreibung
H.261 1990 Bildtelefonie, Videokonferenzen über Integrated Services Digital Network / ISDN
MPEG-1 1993 Progressives Videoformat mit mehreren Layern, das unter anderem für Video-CDs verwendet wird. MPEG-1 ist der ursprüngliche Standard für die Datenkompression von Audio- und Videodaten; zum Audioteil gehört "MPEG-1 Layer 3" (besser bekannt als MP3). Der Teil des MPEG-1-Standards, der sich auf bewegte Bilder bezieht, stammt aus dem JPEG-Standard, der die Datenkompression von Standbildern erlaubt. Die Ausgabequalität bei gängigen Bitraten liegt unter der von Videofilmen.
MPEG-2
H.262
1994/1995 Transport-, Video- und Audioformate für Filme in Fernsehqualität. MPEG-2 arbeitet ähnlich wie MPEG-1, unterstützt aber den Bildaufbau mit Zeilenversatz (Interlaced Video) wie bei normalem Fernsehen. MPEG-2 definiert ausserdem Transport-Streams, die auf die Übertragung von digitalen Video- und Audiodaten über nicht zuverlässige Kanäle ausgelegt sind und für Fernsehausstrahlung genutzt werden. Mittlerweile hat sich MPEG-2 zum Standard für HDTV entwickelt. Es ist zudem auch das Format für SVCDs, DVDs und Digital Video Broadcasting / DVB verwendet. (Bitrate bis 15 Mbit/s)
H.263 1995/1996
H.263+ 1997/1998
H.263++ 2000
MPEG-3 (nie erschienen) Wurde als Standard für High Definition Television / HDTV entwickelt, später aber eingestellt, als sich MPEG-2 als ausreichend erwies.
MPEG-4 Version 1
MPEG-4 Version 2
MPEG-4 Version 3
1998/1999
1999/2000
2001
Ein offizieller Video-Kompressions-Standard

mit einer gegenüber MPEG-2 deutlich stärkere Datenkompression. Es handelt sich um eine Weiterentwicklung von MPEG-1 mit zusätzlichen Eigenschaften:

  • kompleses, an Quicktime angelehntes Containerformat
  • VRML-Unterstützung für 3D-Rendering
  • objektorientierte Composite-Dateien (inklusive Audio-, Video- und Virtual-Reality-Modellierung)
  • Unterstützung für Digitale Rechteverwaltung / DRM

Es gibt keinen Codec, dessen Name einfach MPEG-4 ist. MPEG-4 ist also ein Sammlung von Techniken, um Videos zu komprimieren. "MPEG-4-kompatibel" bedeutet, dass ein Codec Dateien erzeugt, die mit anderen MPEG-4-kompatiblen Codecs abgespielt werden können. Solche Videocodecs sind u. a. Xvid und Lav-MPEG-4. Die wesentlichen Einsatzgebiete sind Streaming über das Internet, CD-Produktion und Fernsehübertragung.

H.264 2002 Offizielle Terminologie des ITU oder MPEG-4 Teil 10 (offizielle MPEG Terminologie) ISO/IEC 14496-10 AVC. Im Sprachgebrauch auch H.26L, die Arbeit des JVT oder "JVT CODEC", Advanced Video Code (AVC), JM2.x, JM3.x und JM4.x genannt.
MPEG-7 2002 Ein System zur Beschreibung von Multimedia-Inhalten (u.a. Metadaten). Es bietet die Möglichkeit, unterschiedliche Multimediadaten miteinander zu verknüpfen und zusätzliche Informationen (z. B. Bild- oder Szenenbeschreibungen) einzubinden, um das Auffinden bestimmter Inhalte in komplexen Datenbanken einfacher zu gestalten.

Bisher war man bei der Suche nach bestimmten Bildern, Audiodaten oder Videoszenen darauf angewiesen, zumindest einen Teil des gesuchten Dateinamens zu kennen oder zu erraten. Mit Hilfe von MPEG-7 soll auch die Suche mittels Stichwort, Angaben zum Autor, Themen- oder Zielgruppen möglich werden. So soll MPEG-7 auch via Internet die Möglichkeit bieten, mit Hilfe von Stichwörtern bestimmte Szenen oder Bilder innerhalb von entsprechend aufbereiteten Datenbanken einfach zu finden.

MPEG-21 Ein geplanter Standard für ein "Multimedia Framework".
MPEG-A 2004 Standardisierung von "integrierten Lösungen" ("MPEG-Anwendungsformaten") für bestimmte, klar definierte Anwendungsfälle; referenziert Werkzeuge und Technologien sowohl aus anderen MPEG-Standards als auch von ausserhalb.
MPEG-B 2005 "MPEG Systems Technologies": Standardisierung von "Systems"-Technologien, die in mehreren MPEG-Standards Verwendung finden (z. B. binäre Codierung von XML).
MPEG-C 2005 "MPEG Video Technologies": Standardisierung von Video-Technologien, die in mehreren MPEG-Standards Verwendung finden (z. B. inverse Diskrete Kosinustransformation.
MPEG-D 2005 "MPEG Audio Technologies": Standardisierung von Audio-Technologien, die in mehreren MPEG-Standards Verwendung finden (z. B. "MPEG Surround" zur Codierung von Surround-Audiomaterial).
MPEG-E 2005 M3W (MPEG Multimedia Middleware)
MPEG 01.svg

MPEG standardisiert nur den Bitstream und den Decoder. Der Encoder wird nicht standardisiert, so dass noch Raum für Effizienzsteigerungen bleibt. Es werden zwar Musterimplementationen (verification models) vorgegeben, die aber weder besonders schnell noch besonders effizient sind, weshalb die meisten Implementierungen von MPEG-Encodern von Grund auf neu geschrieben sind.

Die MPEG spezifiziert sowohl Containerformate als auch Codecs. Dadurch können beispielsweise in MPEG-2 kodierte Videodaten auch in (technisch allerdings unterlegenen) AVI-Containern abgelegt werden und nicht nur in hauseigenen MPEG-Containern.

MPEG ist also kein einheitliches Dateiformat, sondern umfasst eine ganze Familie von Codecs. MPEG-Dateien können Video- und/oder Audiodaten. MPEG-Dateien sind immer nach den Standards MPEG-1 oder MPEG-2 komprimiert, können aber unterschiedliche Endungen haben; am häufigsten sind ".mpeg" und ".mpg". Für die DVD-Produktion gibt es weitere Endungen wie ".m2v" für Video und ".mp2" für Audio. Aufgrund der einheitlichen Kompressionsstandards können aber alle MPEG-1- und MPEG-2-Dateien unabhängig ihrer Endung als solche von den Programmen erkannt und wiedergegeben werden.

MPEG-Dateien kommen in unterschiedlichen Erscheinungsformen:

  • MPG ist die grundlegende Form des MPEG-Dateiformats. Es enthält MPEG-1-Video und MP2-Audio (MPEG-1 Layer 2) - oder selten MP1-Audio.
  • DAT ist dasselbe Format wie MPG mit einer anderen Endung und wird auf Video-CDs benutzt. Wegen der Art wie VCDs erzeugt werden und wie Linux entworfen wurde, können die DAT-Dateien einer VCD weder abgespielt noch kopiert werden. Zum Abspielen mit Mplayer muss die Option "-vcd" verwendet werden.
  • VOB ist das MPEG-Dateiformat bei DVDs. Es ist das gleiche wie MPG mit zusätzlicher Unterstützung für Untertitel oder nicht-MPEG-(AC3)-Audio. Es enthält MPEG-2-Video und normalerweise AC3-Audio - aber auch DTS, MP2 und unkomprimierte LPCMs sind erlaubt.
Typ MPEG
Codecs MPEG-1, MPEG-2
Editierbarkeit gering; Ausnahme: I-Frame-Only. In MPEG-Dateien bilden Serien von Frames unabhängige Gruppen, sodass eine MPEG-Datei mit einem Shell-Befehl wie dd oder cut geschnitten und zusammengefügt werden kann, wobei die Datei voll funktionsfähig bleibt.

MPEG-Dateien besitzen ein Feld, welches das Breiten-/Höhenverhältnis der Videodaten angibt. SVCDs haben beispielsweise Video mit einer Auflösung von 480x480, und im Header ist dieses Feld auf 4:3 gesetzt. Also wird es als 640x480 abgespielt. AVI-Dateien besitzen dieses Feld nicht, sodass diese während des Encodierens skaliert oder bei der Wiedergabe mit Mplayer die Option "-aspect" verwendet werden muss.

FAQ

Informationen über eine MPEG-Datei

Der Shell-Befehl mpgtx eignet sich zu Anzeige von Videocodec, Spielzeit, Seitenverhältnis, Auflösung, Framerate, Bitrate, Audicodec, Audiobitrate und Samplerate.

$ mpgtx -i file.mpg
Mpeg 1 System File [Video/Audio]
Muxrate : 1.41 Mbps
Estimated Duration: 01:06:28.99s
Size [352 x 240] 29.97 fps 1.15 Mbps
Audio : Mpeg 1 layer 2
224 kbps  44100 Hz
Stereo,  No emphasis

Der Shell-Befehl file zeigt folgende Informationen.

$ file file.mpg
file.mpg: MPEG sequence, v1, system multiplex

Der Medienencoder Transcode zeigt folgende Informationen.

$ transcode -i file.mpg -c 0-0
transcode v1.0.2 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
[transcode] (probe) suggested AV correction -D 0 (0 ms) | AV 0 ms | 0 ms
[transcode] auto-probing source file.mpg (ok)
[transcode] V: import format    | MPEG    (V=mpeg2|A=mp3)
[transcode] V: AV demux/sync    | (0) sync AV at PTS start - demuxer disabled
[transcode] V: import frame     | 352x288  1.22:1  encoded @ 4:3
[transcode] V: bits/pixel       | 0.710
[transcode] V: decoding fps,frc | 25.000,3
[transcode] V: Y'CbCr           | YV12/I420
[transcode] A: import format    | 0x50    MPEG layer-2 [44100,16,2]  224 kbps
[transcode] A: export           | disabled
[transcode] V: encoding fps,frc | 25.000,3
[transcode] A: bytes per frame  | 7056 (7056.000000)
[transcode] A: adjustment       | 0@1000
[transcode] V: IA32/AMD64 accel | sse2 (sse2 sse mmxext mmx asm C)
tc_memcpy: using sse for memcpy
[transcode] warning : no option -o found, encoded frames send to "/dev/null"
[transcode] V: video buffer     | 10 @ 352x288
[import_mp3.so] v0.1.4 (2003-08-04) (audio) MPEG
[import_mpeg2.so] v0.4.0 (2003-10-02) (video) MPEG2
[export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
[import_mp3.so] MP3->PCM
[import_mp3.so] tcextract -a 0 -i "file" -x mp2 -d 0 | tcdecode -x mp2 -d 0 -z 0
tc_memcpy: using sse for memcpy
(extract_mp3.c) missing start code at 0x1214
(extract_mp3.c) incorrect zero-byte padding detected - ignored
[import_mpeg2.so] tcextract -x mpeg2 -i "file.mpg" -d 0 | tcdecode -x mpeg2 -d 0 -y yv12
tc_memcpy: using sse for memcpy
(extract_mpeg2.c) missing start code at 0x1214
(extract_mpeg2.c) incorrect zero-byte padding detected - ignored
[decode_mpeg2.c] libmpeg2 0.4.0b loop decoder
[decode_mpeg2.c] libmpeg2 acceleration: mmxext

clean up | frame threads | unload modules | cancel signal | internal threads | done
[transcode] encoded 0 frames (0 dropped, 0 cloned), clip length   0.00 s

Bearbeitung einer MPEG-Datei

Eine MPEG-Datei ist aufgrund der Interframe-Kompression nicht zum Editieren geeignet, kann aber in verschiedenen Programmen zur Videobearbeitung zumindest geöffnet werden. Eine Ausnahme bildet hier das "I-Frame-Only"-Verfahren. Dabei handelt es sich um eine MPEG-Variante, bei der nur Intraframe-kodiert wird. Das "I-Frame-Only" ist ein echtes Bearbeitungsformat und eignet sich besonders gut für den Videoschnitt in hoher Qualität.

In MPEG-Dateien bilden Serien von Frames unabhängige Gruppen, sodass eine MPEG-Datei mit einem Shell-Befehl wie dd oder cut geschnitten und zusammengefügt werden kann, wobei die Datei voll funktionsfähig bleibt.

Extrahieren des Tons aus einer MPEG-Datei

Mplayer kann dazu verwendet werden, den Ton aus einer MPEG-Datei zu extrahieren. Die Option "-vo null" veranlasst Mplayer, die Videospur nicht auszugeben. Es erfolgt dabei eine MP2-Extraktion der Tonspur in die Datei "audio.mp2".

$ mplayer -vo null -nogui -dumpaudio -dumpfile audio.mp2 myvideo.mpg

Weblinks

Vorlage:dewi