MPEG-4 Part 2 Videodecoder
Der MPEG4 Part 2 Videodecoder decodiert Videostreams, die gemäß dem MPEG4 Part 2-Standard codiert wurden.
Sie können eine Instanz des MPEG4 Part 2 Videodecoders erstellen, indem Sie CoCreateInstance aufrufen. Verwenden Sie zum Erstellen einer Instanz des Decoders, der sich als DirectX Media Object (DMO) verhält, den Klassenbezeichner CLSID_CMpeg4sDecMediaObject. Verwenden Sie zum Erstellen einer Instanz des Decoders, der sich als Media Foundation Transform (MFT) verhält, den Klassenbezeichner CLSID_CMpeg4sDecMFT.
Eingabetypen
Der MPEG4 Part 2-Videodecoder unterstützt die folgenden Eingabemedientypen.
- MEDIASUBTYPE_M4S2
- MEDIASUBTYPE_m4s2
- MEDIASUBTYPE_MP4V
- MEDIASUBTYPE_mp4v
- MEDIASUBTYPE_MP4S (veraltet)
- MEDIASUBTYPE_MP4S (veraltet)
Ausgabetypen
Der MPEG4 Part 2 Videodecoder unterstützt die folgenden Ausgabemedienuntertypen, wenn er als DMO fungiert.
- MEDIASUBTYPE_YV12
- MEDIASUBTYPE_NV12
- MEDIASUBTYPE_YUY2
- MEDIASUBTYPE_UYVY
- MEDIASUBTYPE_YVYU
- MEDIASUBTYPE_NV11
- MEDIASUBTYPE_RGB32
- MEDIASUBTYPE_RGB24
- MEDIASUBTYPE_ RGB565
- MEDIASUBTYPE_RGB555
- MEDIASUBTYPE_RGB8
Der MPEG4 Part 2 Videodecoder unterstützt die folgenden Ausgabemedienuntertypen, wenn er als MFT fungiert.
- MEDIASUBTYPE_NV12
- MEDIASUBTYPE_YV12
Formate
Der MPEG4 Part 2 Videodecoder akzeptiert die folgenden Formate.
- VIDEOINFOHEADER
- VIDEOINFOHEADER2 (VIH2)
- MFVideoInfo
- MPEG2VIDEOINFO (Nur der VIH2-Teil der Kopfzeile wird verwendet.)
Schnittstellen für das DMO
Wenn Sie eine Instanz des MPEG4 Part 2 Videodecoders als DMO erstellen, macht der Decoder die folgenden Schnittstellen verfügbar.
Sie können eine IMediaObject-Schnittstelle abrufen, indem Sie CoCreateInstance aufrufen, und Sie können eine ICodecAPI-Schnittstelle abrufen, indem Sie QueryInterface aufrufen.
Schnittstellen für die MFT
Wenn Sie eine Instanz des MPEG2 Part 2 Videodecoders als MFT erstellen, macht der Decoder die folgenden Schnittstellen verfügbar.
Sie können einen Zeiger auf die IMFTransform-Schnittstelle abrufen, indem Sie CoCreateInstance aufrufen, und Sie können einen Zeiger auf die IMFAttributes-Schnittstelle abrufen, indem Sie IMFTransform::GetAttributes aufrufen. Sie können einen Zeiger auf die IMFQualityAdvise- oder IMFQualityAdvise2-Schnittstelle abrufen, indem Sie QueryInterface auf der MFT aufrufen. Sie können einen Zeiger auf die IMFRateControl- oder IMFRateSupport-Schnittstelle abrufen, indem Sie MFGetService aufrufen und den Dienstbezeichner MF_RATE_CONTROL_SERVICE übergeben.
Profile und Ebenen
Die MPEG4-Spezifikation definiert mehrere Profile, von denen jedes die Tools angibt, die ein Encoder zum Generieren eines codierten Datenstroms verwenden kann. Der MPEG4 Part2 Videodecoder unterstützt zwei dieser Profile: Simple Visual Profile und Advanced Simple Profile. Mit anderen Worten, der MPEG4 Part 2 Videodecoder kann Datenströme decodieren, die entsprechend dem Simple Visual Profile oder dem Advanced Simple Profile codiert wurden.
Das Simple Visual Profile unterstützt die einfache Übertragung von Video mit niedriger Bitrate im progressiven Modus. Es unterstützt nur Intra- und Vorhersagebilder. Außerdem wird der kurze Headermodus unterstützt, der abwärtskompatibel mit dem H.263-Basisprofil ist. Ab Windows 10 unterstützt der MPEG-4 Part 2 Videodecoder auch H.263v2 (H.263+), der benutzerdefinierte Bildgrößen unterstützt.
Das Advanced Simple Profile unterstützt alle Werkzeuge des Simple Visual Profile und darüber hinaus Interlaced Video, B-Frames, Viertelpel-Bewegungsausgleich, zusätzliche Quantisierungstabellen und globalen Bewegungsausgleich.
Die MPEG4-Spezifikation definiert auch mehrere Ebenen, von denen jede Einschränkungen für den von einem Encoder generierten Ausgabedatenstrom angibt.
Die folgende Tabelle zeigt die Profile und Ebenen sowie typische Auflösungen, die vom MPEG4 Part 2 Videodecoder unterstützt werden.
Profil | Ebene | Typische Auflösung |
---|---|---|
Simple Visual | 0 | 176 x 144 |
Simple Visual | 1 | 176 x 144 |
Simple Visual | 2 | 352 x 288 |
Simple Visual | 3 | 352 x 288 |
SimpleVisual | 4a | 640 x 480 |
Simple Visual | 5 | 720 x 576 |
Advanced Simple | 0 | 176 x 144 |
Advanced Simple | 1 | 176 x 144 |
Advanced Simple | 2 | 352 x 288 |
Advanced Simple | 3 | 352 x 288 |
Advanced Simple | 3b | 352 x 288 |
Advanced Simple | 4 | 352 x 756 |
Advanced Simple | 5 | 720 x 576 |
Weitere Informationen zu Profilen und Ebenen finden Sie in der MPEG4 Part 2-Spezifikation (ISO/IEC 14496-2): Informationstechnologie – Codierung von audiovisuellen Objekten – Teil 2: Visual.
Decodereigenschaften
Verwenden Sie zum Festlegen von Eigenschaften für den MPEG4 Part 2 Videodecoder die ICodecAPI-Schnittstelle oder die IMFAttributes-Schnittstelle.
Der MPEG4 Part 2-Videodecoder unterstützt die folgenden Eigenschaften.
Eigenschaft | Beschreibung | Standardwert |
---|---|---|
CODECAPI_AVDecVideoSWPowerLevel | Gibt den Leistungspegel an.
Nur Schreibzugriff. |
100 |
CODECAPI_AVDecVideoThumbnailGenerationMode | Gibt den Modus für die Generierung der Miniaturansicht an.
Nur Schreibzugriff. |
VARIANT_FALSE |
Hinweise
Die GUIDs (Globally Unique Identifiers) für RGB-Medienuntertypen unterscheiden sich je nachdem, ob ein Decoder als DMO oder MFT fungiert. Die GUIDs für Nicht-RGB-Medienuntertypen sind identisch, unabhängig davon, ob ein Decoder als DMO oder MFT fungiert. Informationen zu den GUIDs, die Medienuntertypen darstellen, finden Sie unter Medientypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows Server 2008 R2 [nur Desktop-Apps] |
Header |
|
DLL |
|
Siehe auch