Subtipos de audio

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

En las tablas siguientes se enumeran los GUID de subtipo de medios para audio. Si procede, cada tabla muestra la etiqueta de formato equivalente, declarada en Mmreg.h.

Tipos de audio sin comprimir

GUID Descripción Encabezado Etiqueta de formato equivalente
MEDIASUBTYPE_IEEE_FLOAT Audio de punto flotante IEEE. uuids.h WAVE_FORMAT_IEEE_FLOAT (0x0003)
MEDIASUBTYPE_PCM Audio PCM. uuids.h WAVE_FORMAT_PCM (0x0001)

Tipos de audio MPEG-4 y AAC

GUID Descripción Encabezado Etiqueta de formato equivalente
MEDIASUBTYPE_MPEG_ADTS_AAC Audio avanzado de codificación de audio (AAC) en formato de secuencia de transporte de datos de audio (ADTS).
El bloque de formato es una estructura WAVEFORMATEX con wFormatTag igual a WAVE_FORMAT_MPEG_ADTS_AAC.
La estructura WAVEFORMATEX especifica la frecuencia de muestreo AAC-LC principal y el número de canales, antes de aplicar herramientas de replicación de banda espectral (SBR) o estéreo paramétrico (PS), si están presentes.
No se requiere ningún dato adicional después de la estructura WAVEFORMATEX .
wmcodecdsp.h WAVE_FORMAT_MPEG_ADTS_AAC (0x1600)
MEDIASUBTYPE_MPEG_HEAAC High-Efficiency secuencia de codificación de audio avanzada (HE-AAC).
El bloque de formato es una estructura HEAACWAVEFORMAT .
wmcodecdsp.h WAVE_FORMAT_MPEG_HEAAC (0x1610)
MEDIASUBTYPE_MPEG_LOAS Secuencia de transporte de audio MPEG-4 con una capa de sincronización (LOAS) y una capa multiplex (LATM).
El bloque de formato es una estructura WAVEFORMATEX con wFormatTag igual a WAVE_FORMAT_MPEG_LOAS.
La estructura WAVEFORMATEX especifica la frecuencia de muestreo AAC-LC principal y el número de canales, antes de aplicar herramientas SBR o PS espectrales, si están presentes.
No se requiere ningún dato adicional después de la estructura WAVEFORMATEX .
wmcodecdsp.h WAVE_FORMAT_MPEG_LOAS (0x1602)
MEDIASUBTYPE_RAW_AAC1 AAC sin formato.
El bloque de formato es una estructura WAVEFORMATEX con wFormatTag igual a WAVE_FORMAT_RAW_AAC1.
La estructura WAVEFORMATEX especifica la frecuencia de muestreo y el número de canales en el audio descodificado después de aplicar las herramientas SBR y PS, si están presentes.
La estructura WAVEFORMATEX va seguida de bytes adicionales que contienen los datos AudioSpecificConfig(), tal y como se define en ISO/IEC 14496-3 (MPEG-4 Audio).
La longitud de los datos AudioSpecificConfig() es de 2 bytes para AAC-LC o HE-AAC con señalización implícita de SBR/PS. Es más de 2 bytes para HE-AAC con señalización explícita de SBR/PS.
wmcodecdps.h WAVE_FORMAT_RAW_AAC1 (0x00FF)

Tipos de audio Dolby

GUID Descripción Encabezado Etiqueta de formato equivalente
MEDIASUBTYPE_DOLBY_DDPLUS Audio Dolby Digital Plus. wmcodecdsp.h N/D
MEDIASUBTYPE_DOLBY_AC3 Audio Dolby Digital (AC-3). ksuuids.h N/D
MEDIASUBTYPE_DOLBY_AC3_SPDIF Dolby AC-3 sobre S/PDIF. uuids.h WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092)
MEDIASUBTYPE_DVM Códec DVM AC-3. Se usa al reproducir archivos AVI con audio Dolby Digital.
El bloque de formato es una estructura WAVEFORMATEX con la etiqueta de formato igual a WAVE_FORMAT_DVM.
wmcodecdsp.h WAVE_FORMAT_DVM (0x2000)
MEDIASUBTYPE_RAW_SPORT AC-3 sobre S/PDIF; vea Comentarios. uuids.h WAVE_FORMAT_RAW_SPORT (0x0240)
MEDIASUBTYPE_SPDIF_TAG_241h AC-3 sobre S/PDIF; vea Comentarios. uuids.h WAVE_FORMAT_ESST_AC3 (0x0241)

Para especificar AC-3 rellenado, use el subtipo MEDIASUBTYPE_DOLBY_AC3_SPDIF, que corresponde a una etiqueta de formato de 0x0092 (WAVE_FORMAT_DOLBY_AC3_SPDIF). Los valores 0x240 y 0x241 también se han usado para indicar ac-3 rellenado, pero Microsoft fomenta el uso de 0x0092.

Tipos de audio varios

GUID Descripción Encabezado Etiqueta de formato equivalente
MEDIASUBTYPE_DRM_Audio Audio con protección de administración de derechos digitales (DRM). uuids.h WAVE_FORMAT_DRM (0x0009)
MEDIASUBTYPE_DTS Audio de Digital Theater Systems (DTS).
El bloque de formato es una estructura WAVEFORMATEX con la etiqueta de formato igual a WAVE_FORMAT_UNKNOWN.
ksuuids.h N/D
MEDIASUBTYPE_DTS2 Audio de Digital Theater Systems (DTS).
El bloque de formato es una estructura WAVEFORMATEX con la etiqueta de formato igual a WAVE_FORMAT_DTS2.
Este subtipo es equivalente a MEDIASUBTYPE_DTS , pero usa una etiqueta de formato diferente.
wmcodecdsp.h WAVE_FORMAT_DTS2 (0x2001)
MEDIASUBTYPE_DVD_LPCM_AUDIO Datos de audio de DVD. ksuuids.h N/D
MEDIASUBTYPE_MPEG1AudioPayload Carga de audio MPEG-1. uuids.h WAVE_FORMAT_MPEG (0x0050)
MEDIASUBTYPE_MPEG1Packet Paquete de audio MPEG1. uuids.h N/D
MEDIASUBTYPE_MPEG1Payload Carga de audio MPEG1. uuids.h N/D
MEDIASUBTYPE_MPEG2_AUDIO Datos de audio MPEG-2. ksuuids.h N/D

Etiquetas de formato de audio

El campo wFormatTag de la estructura WAVEFORMATEX especifica el tipo de formato de audio. Las muestras multimedia suelen ser un número entero de muestras, tal como se especifica en el campo wBitsPerSample en la estructura WAVEFORMATEX . Esto no es necesariamente cierto para las muestras de audio MPEG que pueden provenir de secuencias empaquetadas y, por lo tanto, no se empaquetan necesariamente en límites de ejemplo o marco. En el caso del audio MPEG, la marca de tiempo en un ejemplo multimedia es la marca de tiempo del primer fotograma cuyo primer byte se encuentra en el ejemplo multimedia.

Los subtipos multimedia se definen para cada wFormatTag de la siguiente manera:

  • El subcampo Data1 del GUID de subtipo es el mismo que el valor de wFormatTag .
  • El campo Datos 2 es 0.
  • El campo Datos 3 es 0x0010.
  • El campo Datos 4 es 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71.

Por lo tanto, para el audio PCM, el GUID del subtipo (definido en uuids.h como MEDIASUBTYPE_PCM) es:

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

La función CreateAudioMediaType se puede usar para crear una estructura de AM_MEDIA_TYPE a partir de una estructura WAVEFORMATEX .

Tipos de audio obsoletos

Los siguientes subtipos de audio están obsoletos y no se deben usar:

  • MEDIASUBTYPE_MPEG_RAW_AAC
  • MEDIASUBTYPE_PCMAudioObsolete

Consulte también

AM_MEDIA_TYPE

Tipos de medios