Sous-types audio

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Les tableaux suivants répertorient les GUID de sous-type multimédia pour l’audio. Le cas échéant, chaque table répertorie la balise de format équivalente, déclarée dans Mmreg.h.

Types audio non compressés

GUID Description En-tête Balise de format équivalent
MEDIASUBTYPE_IEEE_FLOAT Audio à virgule flottante IEEE. uuids.h WAVE_FORMAT_IEEE_FLOAT (0x0003)
MEDIASUBTYPE_PCM Audio PCM. uuids.h WAVE_FORMAT_PCM (0x0001)

Types audio MPEG-4 et AAC

GUID Description En-tête Balise de format équivalent
MEDIASUBTYPE_MPEG_ADTS_AAC Audio AAC (Advanced Audio Coding) au format ADTS (Audio Transport Stream).
Le bloc de format est une structure WAVEFORMATEX avec wFormatTag égal à WAVE_FORMAT_MPEG_ADTS_AAC.
La structure WAVEFORMATEX spécifie le taux d’échantillonnage principal AAC-LC et le nombre de canaux, avant d’appliquer des outils de réplication de bande spectrale (SBR) ou de stéréo paramétrique (PS), le cas échéant.
Aucune donnée supplémentaire n’est requise après la structure WAVEFORMATEX .
wmcodecdsp.h WAVE_FORMAT_MPEG_ADTS_AAC (0x1600)
MEDIASUBTYPE_MPEG_HEAAC High-Efficiency flux HE-AAC (Advanced Audio Coding).
Le bloc de format est une structure HEAACWAVEFORMAT .
wmcodecdsp.h WAVE_FORMAT_MPEG_HEAAC (0x1610)
MEDIASUBTYPE_MPEG_LOAS Flux de transport audio MPEG-4 avec une couche de synchronisation (LOAS) et une couche multiplex (LATM).
Le bloc de format est une structure WAVEFORMATEX avec wFormatTag égal à WAVE_FORMAT_MPEG_LOAS.
La structure WAVEFORMATEX spécifie le taux d’échantillonnage principal AAC-LC et le nombre de canaux, avant l’application des outils SBR ou PS spectrals, le cas échéant.
Aucune donnée supplémentaire n’est requise après la structure WAVEFORMATEX .
wmcodecdsp.h WAVE_FORMAT_MPEG_LOAS (0x1602)
MEDIASUBTYPE_RAW_AAC1 AAC brut.
Le bloc de format est une structure WAVEFORMATEX avec wFormatTag égal à WAVE_FORMAT_RAW_AAC1.
La structure WAVEFORMATEX spécifie le taux d’échantillonnage et le nombre de canaux dans l’audio décodé après l’application des outils SBR et PS, le cas échéant.
La structure WAVEFORMATEX est suivie d’octets supplémentaires qui contiennent les données AudioSpecificConfig(), comme défini par ISO/IEC 14496-3 (MPEG-4 Audio).
La longueur des données AudioSpecificConfig() est de 2 octets pour AAC-LC ou HE-AAC avec la signalisation implicite de SBR/PS. Elle est supérieure à 2 octets pour HE-AAC avec une signalisation explicite de SBR/PS.
wmcodecdps.h WAVE_FORMAT_RAW_AAC1 (0x00FF)

Dolby Audio Types

GUID Description En-tête Balise de format équivalent
MEDIASUBTYPE_DOLBY_DDPLUS Audio Dolby Digital Plus. wmcodecdsp.h n/a
MEDIASUBTYPE_DOLBY_AC3 Audio Dolby Digital (AC-3). ksuuids.h n/a
MEDIASUBTYPE_DOLBY_AC3_SPDIF Dolby AC-3 sur S/PDIF. uuids.h WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092)
MEDIASUBTYPE_DVM Codec DVM AC-3. Utilisé lors de la lecture de fichiers AVI avec l’audio Dolby Digital.
Le bloc de format est une structure WAVEFORMATEX dont la balise de format est égale à WAVE_FORMAT_DVM.
wmcodecdsp.h WAVE_FORMAT_DVM (0x2000)
MEDIASUBTYPE_RAW_SPORT AC-3 sur S/PDIF ; voir Remarques. uuids.h WAVE_FORMAT_RAW_SPORT (0x0240)
MEDIASUBTYPE_SPDIF_TAG_241h AC-3 sur S/PDIF ; voir Remarques. uuids.h WAVE_FORMAT_ESST_AC3 (0x0241)

Pour spécifier ac-3 rembourré, utilisez le sous-type MEDIASUBTYPE_DOLBY_AC3_SPDIF, qui correspond à une balise de format 0x0092 (WAVE_FORMAT_DOLBY_AC3_SPDIF). Les valeurs 0x240 et 0x241 ont également été utilisées pour indiquer ac-3 rembourré, mais Microsoft encourage l’utilisation de 0x0092.

Types audio divers

GUID Description En-tête Balise de format équivalent
MEDIASUBTYPE_DRM_Audio Audio avec protection de la gestion des droits numériques (DRM). uuids.h WAVE_FORMAT_DRM (0x0009)
MEDIASUBTYPE_DTS Audio DTS (Digital Theater Systems).
Le bloc de format est une structure WAVEFORMATEX dont la balise de format est égale à WAVE_FORMAT_UNKNOWN.
ksuuids.h n/a
MEDIASUBTYPE_DTS2 Audio DTS (Digital Theater Systems).
Le bloc de format est une structure WAVEFORMATEX dont la balise de format est égale à WAVE_FORMAT_DTS2.
Ce sous-type équivaut à MEDIASUBTYPE_DTS , mais utilise une balise de format différente.
wmcodecdsp.h WAVE_FORMAT_DTS2 (0x2001)
MEDIASUBTYPE_DVD_LPCM_AUDIO Données audio DVD. ksuuids.h n/a
MEDIASUBTYPE_MPEG1AudioPayload Charge utile audio MPEG-1. uuids.h WAVE_FORMAT_MPEG (0x0050)
MEDIASUBTYPE_MPEG1Packet Paquet audio MPEG1. uuids.h n/a
MEDIASUBTYPE_MPEG1Payload Charge utile audio MPEG1. uuids.h n/a
MEDIASUBTYPE_MPEG2_AUDIO Données audio MPEG-2. ksuuids.h n/a

Balises de format audio

Le champ wFormatTag de la structure WAVEFORMATEX spécifie le type de format audio. Les exemples multimédias sont généralement un nombre entier d’exemples, comme spécifié dans le champ wBitsPerSample de la structure WAVEFORMATEX . Cela n’est pas nécessairement vrai pour les exemples audio MPEG qui peuvent provenir de flux en paquets et ne sont donc pas nécessairement empaquetés sur les limites des exemples/images. Pour mpeg audio, l’horodatage dans un exemple multimédia est l’horodatage de la première image dont le premier octet est contenu dans l’exemple multimédia.

Les sous-types multimédias sont définis pour chaque wFormatTag comme suit :

  • Le sous-champ Data1 du GUID de sous-type est identique à la valeur wFormatTag .
  • Le champ Données 2 est 0.
  • Le champ Données 3 est 0x0010.
  • Le champ Données 4 est 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71.

Ainsi, pour l’audio PCM, le GUID de sous-type (défini dans uuids.h comme MEDIASUBTYPE_PCM) est :

{00000001-0000-0010-8000-00AA00389B71}

La fonction CreateAudioMediaType peut être utilisée pour créer une structure AM_MEDIA_TYPE à partir d’une structure WAVEFORMATEX .

Types audio obsolètes

Les sous-types audio suivants sont obsolètes et ne doivent pas être utilisés :

  • MEDIASUBTYPE_MPEG_RAW_AAC
  • MEDIASUBTYPE_PCMAudioObsolete

Voir aussi

AM_MEDIA_TYPE

Types de médias