DirectSound 轉譯器篩選器
[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
此篩選準則會使用 DirectSound 來轉譯音訊。 此篩選準則目前是音波音效的預設音訊轉譯器。
除了其基本音效轉譯功能之外,此篩選器還可以處理 DirectSound API 呼叫。 使用 IAMDirectSound 方法來設定及擷取將處理音效播放的視窗。 DirectSound 音訊轉譯器是 DirectShow 的預設音訊轉譯篩選器。
標籤 | 值 |
---|---|
篩選介面 | IAMAudioRendererStats、IAMClockQuerye、IAMDirectSound、IAMResourceControl、IBaseFilter、IBasicAudio、IDirectSound3DBuffer、IDirectSound3dListener、IMediaPosition、IMediaSeeking、IQualityControl、IReferenceClock |
輸入釘選媒體類型 | 主要類型:MEDIATYPE_AudioSubtypes:
|
輸入針腳介面 | IMemInputPin、IPin、IPinConnection、IQualityControl |
輸出釘選媒體類型 | 不適用。 |
輸出針腳介面 | 不適用。 |
篩選 CLSID | CLSID_DSoundRender |
屬性頁 CLSID | CLSID_AudioProperties,CLSID_AudioRendererAdvancedProperties |
可執行檔 | quartz.dll |
優點 | MERIT_PREFERRED |
篩選類別 | CLSID_AudioRendererCategory |
備註
此篩選器可作為音訊裝置的包裝函式。 若要列舉使用者系統上可用的音訊裝置,請使用 ICreateDevEnum 介面搭配音訊轉譯器類別 (CLSID_AudioRendererCategory) 。 針對每個音訊裝置,音訊轉譯器類別包含兩個篩選實例。 其中一個對應至 DirectSound 轉譯器,另一個對應至 Audio Renderer (WaveOut) 篩選。 DirectSound 實例具有易記名稱 「DirectSound: DeviceName」,其中 DeviceName 是裝置的名稱。 WaveOut 實例具有易記名稱 DeviceName。
音訊轉譯器類別包含兩個額外的篩選實例,名為 「預設 DirectSound 裝置」和「預設 WaveOut 裝置」。這些會對應至使用者透過主控台選擇的預設音效裝置。 它們實際上是對應至上一個段落中所述的其中一組。 例如,如果系統有兩個音訊裝置:裝置 A 和裝置 B,音訊轉譯器類別將會包含下列內容:
- 裝置 A
- DirectSound:裝置 A
- 裝置 B
- DirectSound:裝置 B
- 預設 DirectSound 裝置
- 預設 WaveOut 裝置
如果使用者選取 [裝置 A] 作為預設裝置,則 [預設 DirectSound 裝置] 相當於 「DirectSound: Device A」,而 [預設 WaveOut 裝置] 相當於 「Device A」。如果使用者選取 [裝置 B] 作為預設裝置,這些對應將會變更。
「預設 DirectSound 裝置」已獲指派MERIT_PREFERRED。 其他人有優點MERIT_DO_NOT_USE。 因此,Intelligent Connect 一律會選擇預設的 DirectSound 裝置。
DirectSound 轉譯器篩選器支援透過 DirectSound IDirectSound3DBuffer 和 IDirectSound3dListener 介面的 3D 音效。 您也可以查詢這些介面目前版本的篩選, IDirectSound3DBuffer8 和 IDirectSound3dListener8。 在呼叫這些介面上的方法之前,請先執行圖形。