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