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.

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.
Windows 7.
Nur Schreibzugriff.
100
CODECAPI_AVDecVideoThumbnailGenerationMode Gibt den Modus für die Generierung der Miniaturansicht an.
Windows 7.
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
Wmcodecdsp.h
DLL
MP4SDecd.dll

Siehe auch

Codecobjekte