音訊功能

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

針對音訊功能, IAMStreamConfig::GetStreamCaps 會傳回 一組AM_MEDIA_TYPEAUDIO_STREAM_CONFIG_CAPS 結構。 如同視訊,您可以使用這個來公開針腳上所有類型的音訊功能,例如資料速率,以及它是否支援單聲道或身歷聲。

如需與 GetStreamCaps 相關的影片相關範例,請參閱 影片功能

假設您支援以 11,025、22,050 和每秒 44,100 個樣本為 8 位或 16 位單聲道或立體 8 位或 16 位單聲道或身歷聲的 WAVEATEX) 結構所表示, (PCM) 波 (格式。 在此情況下,您會提供兩組結構。 第一個配對會有 AUDIO_STREAM_CONFIG_CAPS 功能結構,指出您至少支援 11,025 到每秒 22,050 個樣本,且資料細微性為每秒 11,025 個樣本, (細微性是支援的值) 之間的差異;每個樣本的最小 8 位到 16 位上限位,每個樣本的資料細微性為 8 位;和一個通道的最小值和兩個通道最大值。 第一組的媒體類型會是該範圍中的預設 PCM 格式,可能是 22 kbhertz (kHz) ,16 位身歷聲。 您的第二組是每秒最小和最大樣本數顯示 44,100 的功能;每個樣本 8 位 (最小) 和 16 位 (每個樣本的最大) 位,每個樣本的資料細微性為 8 位;和一個通道的最小值和兩個通道最大值。 媒體類型會是預設的 44 kHz 格式,可能是 44 kHz 16 位身歷聲。

如果您支援非 PCM 波格式,此方法所傳回的媒體類型可以顯示支援哪些非 PCM 格式, (預設取樣率、位元速率和通道) ,以及該媒體類型隨附的功能結構可以描述您所支援的其他取樣率、位元速率和通道。

公開擷取和壓縮格式