共用方式為


音訊子類型

[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

下表列出音訊的媒體子類型 GUID。 如果適用,每個資料表都會列出在 Mmreg.h 中宣告的對等格式標記。

未壓縮的音訊類型

GUID 描述 標頭 對等格式標記
MEDIASUBTYPE_IEEE_FLOAT IEEE 浮點音訊。 uuids.h WAVE_FORMAT_IEEE_FLOAT (0x0003)
MEDIASUBTYPE_PCM PCM 音訊。 uuids.h WAVE_FORMAT_PCM (0x0001)

MPEG-4 和 AAC 音訊類型

GUID 描述 標頭 對等格式標記
MEDIASUBTYPE_MPEG_ADTS_AAC 音訊資料傳輸資料流程中的進階音訊編碼 (AAC) 音訊, (ADTS) 格式。
格式區塊是具有 wFormatTag等於WAVE_FORMAT_MPEG_ADTS_AAC的一個「其」的一種「其」STRUCTUREATEX結構。
在 (套用 SBR) 或參數式立體 (PS) 工具之前, 其會 先指定核心 AAC-LC 取樣率和通道數目。
在其 STRUCTUREATEX結構之後不需要其他資料。
wmcodecdsp.h WAVE_FORMAT_MPEG_ADTS_AAC (0x1600)
MEDIASUBTYPE_MPEG_HEAAC High-Efficiency進階音訊編碼 (HE-AAC) 資料流程。
格式區塊是 HEAACWAVEFORMAT 結構。
wmcodecdsp.h WAVE_FORMAT_MPEG_HEAAC (0x1610)
MEDIASUBTYPE_MPEG_LOAS 具有同步處理層的 MPEG-4 音訊廣播資料流程 (LOAS) 和多工層 (LATM) 。
格式區塊是具有 wFormatTag等於WAVE_FORMAT_MPEG_LOAS一個「其」的「其」STRUCTUREATEX結構。
在套用光纖 SBR 或 PS 工具之前, 其會 先指定核心 AAC-LC 取樣率和通道數目。
在其 STRUCTUREATEX結構之後不需要其他資料。
wmcodecdsp.h WAVE_FORMAT_MPEG_LOAS (0x1602)
MEDIASUBTYPE_RAW_AAC1 原始 AAC。
格式區塊是具有 wFormatTag等於WAVE_FORMAT_RAW_AAC1一個「其」的一種「其」STRUCTUREATEX結構。
在套用 SBR 和 PS 工具之後, 其會 指定解碼音訊中的取樣速率和通道數目。如果有的話,
根據 ISO/IEC 14496-3 (MPEG-4 音訊) 所定義, 後接包含 AudioSpecificConfig () 資料的其他位元組。
AudioSpecificConfig () 資料的長度是 AAC-LC 或 HE-AAC 的 2 個位元組,具有 SBR/PS 的隱含訊號。 HE-AAC 的 2 個位元組以上,具有 SBR/PS 的明確訊號。
wmcodecdps.h WAVE_FORMAT_RAW_AAC1 (0x00FF)

Dolby 音訊類型

GUID 描述 標頭 對等格式標記
MEDIASUBTYPE_DOLBY_DDPLUS Dolby Digital Plus 音訊。 wmcodecdsp.h n/a
MEDIASUBTYPE_DOLBY_AC3 Dolby Digital (AC-3) 音訊。 ksuuids.h n/a
MEDIASUBTYPE_DOLBY_AC3_SPDIF Dolby AC-3 over S/PDIF。 uuids.h WAVE_FORMAT_DOLBY_AC3_SPDIF (0x0092)
MEDIASUBTYPE_DVM DVM AC-3 編解碼器。 使用 Dolby Digital 音訊播放 AVI 檔案時使用。
格式區塊是 FORMATATEX 結構,其格式標籤等於 WAVE_FORMAT_DVM
wmcodecdsp.h WAVE_FORMAT_DVM (0x2000)
MEDIASUBTYPE_RAW_SPORT AC-3 over S/PDIF;請參閱。 uuids.h WAVE_FORMAT_RAW_SPORT (0x0240)
MEDIASUBTYPE_SPDIF_TAG_241h AC-3 over S/PDIF;請參閱。 uuids.h WAVE_FORMAT_ESST_AC3 (0x0241)

若要指定填補 AC-3,請使用子類型 MEDIASUBTYPE_DOLBY_AC3_SPDIF,其對應至0x0092 (WAVE_FORMAT_DOLBY_AC3_SPDIF) 的格式標記。 0x240和0x241的值也可用來指出填補 AC-3,但 Microsoft 鼓勵使用0x0092。

其他音訊類型

GUID 描述 標頭 對等格式標記
MEDIASUBTYPE_DRM_Audio 具有數位版權管理的音訊 (DRM) 保護。 uuids.h WAVE_FORMAT_DRM (0x0009)
MEDIASUBTYPE_DTS 數位藝術系統 (DTS) 音訊。
格式區塊是包含格式標籤等於WAVE_FORMAT_UNKNOWN一個顯示方式
ksuuids.h n/a
MEDIASUBTYPE_DTS2 數位藝術系統 (DTS) 音訊。
格式區塊是包含格式標籤等於WAVE_FORMAT_DTS2一個WAVE_FORMAT_DTS2的一個ATEX結構。
這個子類型相當於 MEDIASUBTYPE_DTS ,但使用不同的格式標記。
wmcodecdsp.h WAVE_FORMAT_DTS2 (0x2001)
MEDIASUBTYPE_DVD_LPCM_AUDIO DVD-音訊資料。 ksuuids.h n/a
MEDIASUBTYPE_MPEG1AudioPayload MPEG-1 音訊承載。 uuids.h WAVE_FORMAT_MPEG (0x0050)
MEDIASUBTYPE_MPEG1Packet MPEG1 音訊封包。 uuids.h n/a
MEDIASUBTYPE_MPEG1Payload MPEG1 音訊承載。 uuids.h n/a
MEDIASUBTYPE_MPEG2_AUDIO MPEG-2 音訊資料。 ksuuids.h n/a

音訊格式標籤

[][顯示格式]結構中的wFormatTag欄位會指定音訊格式類型。 媒體樣本通常是如在[顯示][WBitsPerSample] 欄位中所指定的整數樣本,而此欄位為[顯示] 結構。 這不一定適用于來自封包化資料流程的 MPEG 音訊範例,因此不一定封裝在樣本/畫面界限上。 對於 MPEG 音訊,媒體範例中的時間戳記是媒體範例中包含第一個位元組之第一個畫面的時間戳記。

每個 wFormatTag 都會定義媒體子類型,如下所示:

  • 子類型 GUID 的 Data1 子欄位與 wFormatTag 值相同。
  • [資料 2] 欄位為 0。
  • [資料 3] 欄位是0x0010。
  • [資料 4] 欄位為 0x80、0x00、0x00、0xAA、0x00、0x38、0x9B 0x71。

因此,針對 PCM 音訊,uuids.h 中定義的子類型 GUID (為 MEDIASUBTYPE_PCM) :

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

CreateAudioMediaType函式可用來從AM_MEDIA_TYPE結構建立AM_MEDIA_TYPE結構。

過時的音訊類型

下列音訊子類型已過時,不應使用:

  • MEDIASUBTYPE_MPEG_RAW_AAC
  • MEDIASUBTYPE_PCMAudioObsolete

另請參閱

AM_MEDIA_TYPE

媒體類型