Audiountertypen
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]
In den folgenden Tabellen sind Medienuntertyp-GUIDs für Audio aufgeführt. Gegebenenfalls listet jede Tabelle das entsprechende Formattag auf, das in Mmreg.h deklariert ist.
Nicht komprimierte Audiotypen
GUID | BESCHREIBUNG | Header | Äquivalentes Formattag |
---|---|---|---|
MEDIASUBTYPE_IEEE_FLOAT | IEEE-Gleitkommaaudio. | uuids.h | WAVE_FORMAT_IEEE_FLOAT (0x0003) |
MEDIASUBTYPE_PCM | PCM-Audio. | uuids.h | WAVE_FORMAT_PCM (0x0001) |
MPEG-4- und AAC-Audiotypen
GUID | BESCHREIBUNG | Header | Äquivalentes Formattag |
---|---|---|---|
MEDIASUBTYPE_MPEG_ADTS_AAC | Advanced Audio Coding (AAC) Audio im ADTS-Format (Audio Data Transport Stream). Der Formatblock ist eine WAVEFORMATEX-Struktur mit wFormatTag gleich WAVE_FORMAT_MPEG_ADTS_AAC. Die WAVEFORMATEX-Struktur gibt die AAC-LC-Kern-Abtastrate und die Anzahl der Kanäle vor dem Anwenden von SBR-Tools (Spektralbandreplikation) oder parametrischen Stereotools (PS) an, falls vorhanden. Nach der WAVEFORMATEX-Struktur sind keine zusätzlichen Daten erforderlich. |
wmcodecdsp.h | WAVE_FORMAT_MPEG_ADTS_AAC (0x1600) |
MEDIASUBTYPE_MPEG_HEAAC | High-Efficiency HE-AAC-Stream (Advanced Audio Coding). Der Formatblock ist eine HEAACWAVEFORMAT-Struktur . |
wmcodecdsp.h | WAVE_FORMAT_MPEG_HEAAC (0x1610) |
MEDIASUBTYPE_MPEG_LOAS | MPEG-4-Audiotransportdatenstrom mit einer Synchronisierungsebene (LOAS) und einer Multiplexebene (LATM). Der Formatblock ist eine WAVEFORMATEX-Struktur mit wFormatTag gleich WAVE_FORMAT_MPEG_LOAS. Die WAVEFORMATEX-Struktur gibt die AAC-LC-Kern-Abtastrate und die Anzahl der Kanäle an, bevor spektrale SBR- oder PS-Tools angewendet werden, sofern vorhanden. Nach der WAVEFORMATEX-Struktur sind keine zusätzlichen Daten erforderlich. |
wmcodecdsp.h | WAVE_FORMAT_MPEG_LOAS (0x1602) |
MEDIASUBTYPE_RAW_AAC1 | Unformatierter AAC. Der Formatblock ist eine WAVEFORMATEX-Struktur mit wFormatTag gleich WAVE_FORMAT_RAW_AAC1. Die WAVEFORMATEX-Struktur gibt die Samplerate und die Anzahl der Kanäle im decodierten Audio an, nachdem SBR- und PS-Tools angewendet wurden, sofern vorhanden. Auf die WAVEFORMATEX-Struktur folgen zusätzliche Bytes, die die AudioSpecificConfig()-Daten gemäß ISO/IEC 14496-3 (MPEG-4 Audio) enthalten. Die Länge der AudioSpecificConfig()-Daten beträgt 2 Bytes für AAC-LC oder HE-AAC mit impliziter Signalisierung von SBR/PS. Es ist mehr als 2 Bytes für HE-AAC mit expliziter Signalisierung von SBR/PS. |
wmcodecdps.h | WAVE_FORMAT_RAW_AAC1 (0x00FF) |
Dolby-Audiotypen
GUID | BESCHREIBUNG | Header | Äquivalentes Formattag |
---|---|---|---|
MEDIASUBTYPE_DOLBY_DDPLUS | Dolby Digital Plus-Audio. | wmcodecdsp.h | – |
MEDIASUBTYPE_DOLBY_AC3 | Dolby Digital (AC-3) Audio. | ksuuids.h | – |
MEDIASUBTYPE_DOLBY_AC3_SPDIF | Dolby AC-3 über S/PDIF. | uuids.h | WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092) |
MEDIASUBTYPE_DVM | DVM AC-3-Codec. Wird bei der Wiedergabe von AVI-Dateien mit Dolby Digital-Audio verwendet. Der Formatblock ist eine WAVEFORMATEX-Struktur mit dem Formattag gleich WAVE_FORMAT_DVM. |
wmcodecdsp.h | WAVE_FORMAT_DVM (0x2000) |
MEDIASUBTYPE_RAW_SPORT | AC-3 über S/PDIF; siehe Hinweise. | uuids.h | WAVE_FORMAT_RAW_SPORT (0x0240) |
MEDIASUBTYPE_SPDIF_TAG_241h | AC-3 über S/PDIF; siehe Hinweise. | uuids.h | WAVE_FORMAT_ESST_AC3 (0x0241) |
Verwenden Sie zum Angeben des aufgefüllten AC-3 den Untertyp MEDIASUBTYPE_DOLBY_AC3_SPDIF, der einem Formattag 0x0092 (WAVE_FORMAT_DOLBY_AC3_SPDIF) entspricht. Die Werte 0x240 und 0x241 wurden auch verwendet, um aufgefüllte AC-3 anzugeben, aber Microsoft empfiehlt die Verwendung von 0x0092.
Verschiedene Audiotypen
GUID | BESCHREIBUNG | Header | Äquivalentes Formattag |
---|---|---|---|
MEDIASUBTYPE_DRM_Audio | Audio mit DRM-Schutz (Digital Rights Management) | uuids.h | WAVE_FORMAT_DRM (0x0009) |
MEDIASUBTYPE_DTS | Digital Theater Systems (DTS) Audio. Der Formatblock ist eine WAVEFORMATEX-Struktur , deren Formattag gleich WAVE_FORMAT_UNKNOWN ist. |
ksuuids.h | – |
MEDIASUBTYPE_DTS2 | Digital Theater Systems (DTS) Audio. Der Formatblock ist eine WAVEFORMATEX-Struktur , deren Formattag gleich WAVE_FORMAT_DTS2 ist. Dieser Untertyp entspricht MEDIASUBTYPE_DTS verwendet jedoch ein anderes Formattag. |
wmcodecdsp.h | WAVE_FORMAT_DTS2 (0x2001) |
MEDIASUBTYPE_DVD_LPCM_AUDIO | DVD-Audiodaten. | ksuuids.h | – |
MEDIASUBTYPE_MPEG1AudioPayload | MPEG-1-Audionutzlast. | uuids.h | WAVE_FORMAT_MPEG (0x0050) |
MEDIASUBTYPE_MPEG1Packet | MPEG1-Audiopaket. | uuids.h | – |
MEDIASUBTYPE_MPEG1Payload | MPEG1-Audionutzlast. | uuids.h | – |
MEDIASUBTYPE_MPEG2_AUDIO | MPEG-2-Audiodaten. | ksuuids.h | – |
Audioformattags
Das Feld wFormatTag in der WAVEFORMATEX-Struktur gibt den Audioformattyp an. Medienbeispiele sind im Allgemeinen eine ganze Anzahl von Stichproben, wie im Feld wBitsPerSample in der WAVEFORMATEX-Struktur angegeben. Dies gilt nicht unbedingt für MPEG-Audiobeispiele, die aus paketisierten Streams stammen können und daher nicht unbedingt auf Beispiel-/Framegrenzen gepackt werden. Bei MPEG-Audio ist der Zeitstempel in einem Medienbeispiel der Zeitstempel für den ersten Frame, dessen erstes Byte im Medienbeispiel enthalten ist.
Medienuntertypen werden für jedes wFormatTag wie folgt definiert:
- Das Data1-Unterfeld der Untertyp-GUID ist identisch mit dem wFormatTag-Wert .
- Das Feld Daten 2 ist 0.
- Das Feld Daten 3 ist 0x0010.
- Das Feld Daten 4 ist 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71.
Daher ist für PCM-Audio der Untertyp GUID (definiert in uuids.h als MEDIASUBTYPE_PCM) wie folgt:
{00000001-0000-0010-8000-00AA00389B71}
Die CreateAudioMediaType-Funktion kann verwendet werden, um eine AM_MEDIA_TYPE-Struktur aus einer WAVEFORMATEX-Struktur zu erstellen.
Veraltete Audiotypen
Die folgenden Audiountertypen sind veraltet und sollten nicht verwendet werden:
- MEDIASUBTYPE_MPEG_RAW_AAC
- MEDIASUBTYPE_PCMAudioObsolete