MPEG-4
MPEG-4 ist ein MPEG-Standard (ISO/IEC-14496), der unter anderem Verfahren zur Video- und Audiodatenkompression beschreibt. Ursprünglich war das Ziel von MPEG-4, Systeme mit geringen Ressourcen oder schmalen Bandbreiten (Mobiltelefon, Video-Telefon, …) bei relativ geringen Qualitätseinbußen zu unterstützen. Da H.263, ein Standard der ITU zur Videodekodierung und -kompression, jene Voraussetzungen bereits zufriedenstellend verwirklicht hatte, wurde er ohne größere Änderungen als Teil 2 in MPEG-4 integriert.
Aktuell sind bis Ende 2018 fast alle Patente zum Teil 2 ausgelaufen, so dass dieser bald beliebig lizenzfrei genutzt werden kann.[1]
Zusätzlich zur Videodekodierung wurden auch noch einige Audiostandards, wie das bereits in MPEG-2 standardisierte Advanced Audio Coding (AAC) sowie die Unterstützung für Digitale Rechteverwaltung, die unter der englischen Bezeichnung Intellectual Property Management and Protection (IPMP) läuft, in den Standard aufgenommen.
Das offizielle Containerformat von MPEG-4 ist MP4.
Inhaltsverzeichnis
1 MPEG-4-Teile
2 Videodekodierung
2.1 Variable Längendekodierung
2.2 Inverses Abtasten
2.3 Inverse DC- und AC-Prädiktion
2.4 Inverse Quantisierung
2.5 Inverse Diskrete Kosinustransformation
3 Bekannte Codec-Implementierungen (MPEG-4-Codecs)
4 Transport
5 Referenz-Software
6 Siehe auch
7 Literatur
8 Weblinks
9 Einzelnachweise
MPEG-4-Teile |
MPEG-4 besteht aus mehreren Standards, die Teile (englisch parts) genannt werden, einschließlich der folgenden:
Teil 1 (ISO/IEC 14496-1): Systems
Teil 2 (ISO/IEC 14496-2): Visual. Hierzu zählen die bekannten MPEG-4 Codecs DivX und Xvid. Eines der vielen Profile in Teil 2 ist das Advanced Simple Profile (ASP).
Teil 3 (ISO/IEC 14496-3): Audio. Enthält die Beschreibungen von Advanced Audio Coding (einschließlich HE-AAC), Audio Lossless Coding, Scalable to Lossless, Direct Stream Transfer, CELP, HVXC und TwinVQ.
Teil 4 (ISO/IEC 14496-4): Conformance
Teil 5 (ISO/IEC 14496-5): Reference Software
Teil 6 (ISO/IEC 14496-6): Delivery Multimedia Integration Framework (DMIF).
Teil 7 (ISO/IEC 14496-7): Optimized Reference Software
Teil 8 (ISO/IEC 14496-8): Carriage on IP networks
Teil 9 (ISO/IEC 14496-9): Reference Hardware
Teil 10 (ISO/IEC 14496-10): Advanced Video Coding (AVC). Ein Codec für Videosignale, der technisch identisch zum H.264-Standard der ITU-T ist.
Teil 11 (ISO/IEC 14496-11): Scene description (BIFS) and Application engine (MPEG-J)
Teil 12 (ISO/IEC 14496-12): ISO Base Media File Format. Enthält die Beschreibung des Quicktime Containerformats.
Teil 13 (ISO/IEC 14496-13): Intellectual Property Management and Protection (IPMP) Extensions
Teil 14 (ISO/IEC 14496-14): MPEG-4 File Format (MP4). Containerformat für MPEG-4-Inhalt, basierend auf Teil 12.
Teil 15 (ISO/IEC 14496-15): AVC File Format. Containerformat für Teil-10-Videos, basierend auf Teil 12
Teil 16 (ISO/IEC 14496-16): Animation Framework eXtension (AFX)
Teil 17 (ISO/IEC 14496-17): Timed Text subtitle format
Teil 18 (ISO/IEC 14496-18): Font Compression and Streaming (for OpenType fonts)
Teil 19 (ISO/IEC 14496-19): Synthesized Texture Stream
Teil 20 (ISO/IEC 14496-20): Lightweight Scene Representation (LASeR)
Teil 21 (ISO/IEC 14496-21): MPEG-J Graphical Framework eXtension (GFX)
Teil 22 (ISO/IEC 14496-22): Open Font Format Specification (OFFS) basierend auf OpenType
Teil 23 (ISO/IEC 14496-23): Symbolic Music Representation (SMR)
Teil 24 (ISO/IEC 14496-24): Audio and systems interaction
Teil 25 (ISO/IEC 14496-25): 3D Graphics Compression Model
Teil 26 (ISO/IEC 14496-26): Audio Conformance (noch nicht fertig)
Teil 27 (ISO/IEC 14496-27): 3D Graphics Conformance (noch nicht fertig)
Teil 28 (ISO/IEC 14496-28): Composite Font (noch nicht fertig)
Teil 29 (ISO/IEC 14496-29): Web Video Coding (noch nicht fertig)
Teil 30 (ISO/IEC 14496-30): Timed text (and Other Visual Overlays) and associated images in ISO Base Media File Format (noch nicht fertig)
Teil 31 (ISO/IEC 14496-31): Video Coding for Browsers (noch nicht fertig)
(Stand Juli 2014).
Profile werden auch innerhalb der Teile definiert, weshalb die Implementierung eines Teils gewöhnlich keine Implementierung des ganzen Teils ist.
Videodekodierung |
Für das Advanced Simple Profile (ASP) kann der Dekoder-Teil für die globale Bewegungskompensation einfach weggelassen werden.
Variable Längendekodierung |
Die variable Längendekodierung (VLC) basiert auf dem Verfahren nach Huffman zur Redundanzreduktion. Die Codewörter werden mit Hilfe von Tabellen, sogenannten „look-up-tables“, dekodiert.
Inverses Abtasten |
Aus der variablen Längendekodierung erhält man ein eindimensionales Datenfeld QFS[n] mit Werten von 0 bis 63 für n. Diese Ausgabe wird an dieser Stelle in ein zweidimensionales Datenfeld konvertiert mit dem Bezeichner aus dem Blockschaltbild oben PQF[v][u], wobei v und u Werte von 0 bis 7 annehmen. In der folgenden Abbildung sind die drei definierten Muster zur Abtastung dargestellt.
Inverse DC- und AC-Prädiktion |
Diese anpassungsfähige Auswahl von DC- und AC-Prädiktionsrichtungen basiert auf einem Vergleich der horizontalen und vertikalen DC-Gradienten um den zu dekodierenden Block herum.
Inverse Quantisierung |
Der Quantisierungsprozess an sich ist reversibel und somit ein redundanzreduzierendes Verfahren. Allerdings stehen bei der Rekonstruktion der DCT-Koeffizienten eine beschränkte Anzahl von diskreten Werten zur Verfügung. Somit ist die inverse Quantisierung verlustbehaftet. Die beiden Vorteile des Quantisierungsprozesses sind:
- Für den Betrachter signifikante Koeffizienten, also jene, die maßgeblich zum Qualitätserhalt des Bildes beitragen, bleiben trotz geringfügiger Abweichung erhalten. Nicht signifikante Koeffizienten werden gestrichen. Typischerweise resultiert dies darin, dass der überwiegende Anteil der 64 Koeffizienten in der 8×8-Matrix nach der inversen Quantisierung null ist.
- Eine dünn besetzte Matrix mit einer beschränkten Anzahl von diskreten Werten kann effizient komprimiert werden.
Inverse Diskrete Kosinustransformation |
Die Inverse Diskrete Kosinustransformation (IDCT) ist ein Verfahren zur Irrelevanzreduktion.
Bekannte Codec-Implementierungen (MPEG-4-Codecs) |
- Video
- DivX
- Xvid
- HDX4
- 3ivx
FFmpeg enthält einen nativen MPEG-4 ASP Video Encoder und Decoder sowie einen H.264 Decoder
x264 Open-Source-Encoder für H.264
- Nero Digital Video (ASP, H.264)
- Apple QuickTime (MPEG-4 Video, H.263, H.264)
- Audio
- Psytel AAC, der Vorgänger von Nero AAC
- FAAC, ein AAC Encoder und FAAD2, ein Open Source Decoder
- FFmpeg unterstützt das Decoden und – experimentell – das Encoden von AAC und enthält einen ALS Decoder
- Systems (BIFS)
GPAC Project on Advanced Content, BIFS-Player, -Encoder sowie Authoring-Werkzeuge für interaktive MPEG-4-Inhalte
Transport |
Der Transport wird in MPEG-4-„Delivery Multimedia Integration Framework“ genannt. Die Funktion besteht darin, die eigentliche Quelle der multimedialen Datenströme zu verbergen, so dass der Player auf dem Terminal (evtl. PC) unabhängig von dem Transportnetz ist.
Als mögliche Szenarien sind standardisiert:
- lokal (beispielsweise auf der lokalen Festplatte)
- remote-interactive (Client-Server-Anwendung, wie Video On Demand)
- broadcast (unidirektionaler Empfang von Datenströmen).
Für den lokalen Fall ist das Dateiformat als „ISO Base Media File Format“ in MPEG-4 Teil 12 standardisiert. Das Unternehmen Apple stellte 1998 den ersten Quellcode zur Verfügung. Auf diesem wurde das MP4-Dateiformat im Teil 14 des Standards aufgebaut und entwickelt.
Referenz-Software |
- Implementation Modell 1 (IM1)
- IM1 – 2D
Siehe auch |
- Codec
- MPEG-1
- MPEG-7
- MPEG-4 Audio Lossless Coding
Literatur |
- Klaus Diepold, Sebastian Moeritz: Understanding MPEG-4. (Technology and Business Insights). Focal, Oxford 2005, ISBN 0-240-80594-1.
- Uwe Kühhirt, Marco Rittermann: Interaktive audiovisuelle Medien (MPEG-4-Multimediasysteme. Audiovisuelle 2-D- und 3-D-Szenen. Natürliche Medienobjekte. Synthetische Medienobjekte. Interaktionen. Digitale Medienkette). Fachbuchverlag Leipzig im Carl Hanser Verlag, München 2007, ISBN 978-3-446-40300-0.
- Fernando Pereira, Touradj Ebrahimi (Hrsg.): The MPEG-4 Book. Prentice Hall, Upper Saddle River NJ 2002, ISBN 0-130-61621-4.
- Iain E. G. Richardson: H.264 and MPEG-4 Video Compression. Video Coding for Next-Generation Multimedia. Reprinted edition. Wiley, Chichester u. a. 2008, ISBN 978-0-470-84837-1.
- Tilo Strutz: Bilddatenkompression. Grundlagen, Codierung, Wavelets, JPEG, MPEG, H.264 4., überarbeitete und ergänzte Auflage. Vieweg + Teubner, Wiesbaden 2009, ISBN 978-3-8348-0472-3.
- Aaron E. Walsh, Mikaël Bourges-Sévenier: MPEG-4 Jump-Start. Prentice Hall, Upper Saddle River NJ 2002, ISBN 0-130-60036-9.
- Wolfgang Wunderlich: Digitales Fernsehen HDTV, HDV, AVCHD für Ein- und Umsteiger. Auberge-TV-Verlag, La Vega DC 2007, ISBN 978-3-00-023484-2.
Weblinks |
Offizieller Überblick über MPEG-4 (englisch)
MPEG Industry Forum (englisch)- Was ist MPEG-4? Technische Hintergründe
Einzelnachweise |
↑ http://www.mpegla.com/main/programs/M4v/Documents/m4v-att1.pdf