Sottotipi audio
[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.
Le tabelle seguenti elencano i GUID del sottotipo multimediale per l'audio. Se applicabile, ogni tabella elenca il tag di formato equivalente, dichiarato in Mmreg.h.
Tipi audio non compressi
GUID | Descrizione | Intestazione | Tag di formato equivalente |
---|---|---|---|
MEDIASUBTYPE_IEEE_FLOAT | Audio a virgola mobile IEEE. | uuids.h | WAVE_FORMAT_IEEE_FLOAT (0x0003 ) |
MEDIASUBTYPE_PCM | Audio PCM. | uuids.h | WAVE_FORMAT_PCM (0x0001 ) |
Tipi audio MPEG-4 e AAC
GUID | Descrizione | Intestazione | Tag di formato equivalente |
---|---|---|---|
MEDIASUBTYPE_MPEG_ADTS_AAC | Audio avanzato di codifica audio (AAC) in formato AdTS (Audio Data Transport Stream). Il blocco di formato è una struttura WAVEFORMATEX con wFormatTag uguale a WAVE_FORMAT_MPEG_ADTS_AAC. La struttura WAVEFORMATEX specifica la frequenza di esempio AAC-LC di base e il numero di canali, prima di applicare gli strumenti SBR (Spectral Band Replication) o stereo parametrici (PS), se presenti. Non sono necessari dati aggiuntivi dopo la struttura WAVEFORMATEX . |
wmcodecdsp.h | WAVE_FORMAT_MPEG_ADTS_AAC (0x1600 ) |
MEDIASUBTYPE_MPEG_HEAAC | High-Efficiency flusso advanced audio coding (HE-AAC). Il blocco di formato è una struttura HEAACWAVEFORMAT . |
wmcodecdsp.h | WAVE_FORMAT_MPEG_HEAAC (0x1610 ) |
MEDIASUBTYPE_MPEG_LOAS | Flusso di trasporto audio MPEG-4 con un livello di sincronizzazione (LOAS) e un livello multiplex (LATM). Il blocco di formato è una struttura WAVEFORMATEX con wFormatTag uguale a WAVE_FORMAT_MPEG_LOAS. La struttura WAVEFORMATEX specifica la frequenza di esempio AAC-LC di base e il numero di canali, prima di applicare strumenti SBR o PS spectrali, se presente. Non sono necessari dati aggiuntivi dopo la struttura WAVEFORMATEX . |
wmcodecdsp.h | WAVE_FORMAT_MPEG_LOAS (0x1602 ) |
MEDIASUBTYPE_RAW_AAC1 | AAC non elaborato. Il blocco di formato è una struttura WAVEFORMATEX con wFormatTag uguale a WAVE_FORMAT_RAW_AAC1. La struttura WAVEFORMATEX specifica la frequenza di esempio e il numero di canali nell'audio decodificato dopo aver applicato gli strumenti SBR e PS, se presenti. La struttura WAVEFORMATEX è seguita da byte aggiuntivi che contengono i dati AudioSpecificConfig(), come definito da ISO/IEC 14496-3 (MPEG-4 Audio). La lunghezza dei dati AudioSpecificConfig() è di 2 byte per AAC-LC o HE-AAC con segnali impliciti di SBR/PS. Si tratta di più di 2 byte per HE-AAC con segnale esplicito di SBR/PS. |
wmcodecdps.h | WAVE_FORMAT_RAW_AAC1 (0x00FF ) |
Tipi audio dolby
GUID | Descrizione | Intestazione | Tag di 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 su S/PDIF. | uuids.h | WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092 ) |
MEDIASUBTYPE_DVM | Codec DVM AC-3. Usato durante la riproduzione di file AVI con audio Dolby Digital. Il blocco di formato è una struttura WAVEFORMATEX con il tag di formato uguale a WAVE_FORMAT_DVM. |
wmcodecdsp.h | WAVE_FORMAT_DVM (0x2000 ) |
MEDIASUBTYPE_RAW_SPORT | AC-3 su S/PDIF; vedere Osservazioni. | uuids.h | WAVE_FORMAT_RAW_SPORT (0x0240 ) |
MEDIASUBTYPE_SPDIF_TAG_241h | AC-3 su S/PDIF; vedere Osservazioni. | uuids.h | WAVE_FORMAT_ESST_AC3 (0x0241 ) |
Per specificare AC-3 riempimento, usare il sottotipo MEDIASUBTYPE_DOLBY_AC3_SPDIF, che corrisponde a un tag di formato di 0x0092 (WAVE_FORMAT_DOLBY_AC3_SPDIF). I valori 0x240 e 0x241 sono stati usati anche per indicare ac-3 riempimento, ma Microsoft incoraggia l'uso di 0x0092.
Tipi audio vari
GUID | Descrizione | Intestazione | Tag di formato equivalente |
---|---|---|---|
MEDIASUBTYPE_DRM_Audio | Audio con protezione DRM (Digital Rights Management). | uuids.h | WAVE_FORMAT_DRM (0x0009 ) |
MEDIASUBTYPE_DTS | Audio DTS (Digital Theater Systems). Il blocco di formato è una struttura WAVEFORMATEX con il tag di formato uguale a WAVE_FORMAT_UNKNOWN. |
ksuuids.h | n/d |
MEDIASUBTYPE_DTS2 | Audio DTS (Digital Theater Systems). Il blocco di formato è una struttura WAVEFORMATEX con il tag di formato uguale a WAVE_FORMAT_DTS2. Questo sottotipo equivale a MEDIASUBTYPE_DTS , ma usa un tag di formato diverso. |
wmcodecdsp.h | WAVE_FORMAT_DTS2 (0x2001 ) |
MEDIASUBTYPE_DVD_LPCM_AUDIO | Dati audio DVD. | ksuuids.h | n/d |
MEDIASUBTYPE_MPEG1AudioPayload | Payload audio MPEG-1. | uuids.h | WAVE_FORMAT_MPEG (0x0050) |
MEDIASUBTYPE_MPEG1Packet | Pacchetto audio MPEG1. | uuids.h | n/d |
MEDIASUBTYPE_MPEG1Payload | Payload audio MPEG1. | uuids.h | n/d |
MEDIASUBTYPE_MPEG2_AUDIO | Dati audio MPEG-2. | ksuuids.h | n/d |
Tag di formato audio
Il campo wFormatTag nella struttura WAVEFORMATEX specifica il tipo di formato audio. Gli esempi multimediali sono in genere un numero intero di campioni come specificato nel campo wBitsPerSample nella struttura WAVEFORMATEX . Questo non è necessariamente vero per gli esempi audio MPEG che possono provenire da flussi in pacchetti e pertanto non sono necessariamente inseriti in un pacchetto su limiti di esempio/frame. Per l'audio MPEG il timestamp in un campione multimediale è il timestamp per il primo fotogramma il cui primo byte è contenuto nell'esempio multimediale.
I sottotipi multimediali vengono definiti per ogni wFormatTag come indicato di seguito:
- Il sottocampo Data1 del GUID del sottotipo corrisponde al valore wFormatTag .
- Il campo Dati 2 è 0.
- Il campo Dati 3 è 0x0010.
- Il campo Dati 4 è 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B 0x71.
Pertanto, per l'audio PCM il GUID del sottotipo (definito in uuids.h come MEDIASUBTYPE_PCM) è:
{00000001-0000-0010-8000-00AA00389B71}
La funzione CreateAudioMediaType può essere usata per creare una struttura AM_MEDIA_TYPE da una struttura WAVEFORMATEX .
Tipi audio obsoleti
I sottotipi audio seguenti sono obsoleti e non devono essere usati:
- MEDIASUBTYPE_MPEG_RAW_AAC
- MEDIASUBTYPE_PCMAudioObsolete