DirectSound 轉譯器篩選器

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

此篩選準則會使用 DirectSound 來轉譯音訊。 此篩選準則目前是音波音效的預設音訊轉譯器。

除了其基本音效轉譯功能之外,此篩選器還可以處理 DirectSound API 呼叫。 使用 IAMDirectSound 方法來設定及擷取將處理音效播放的視窗。 DirectSound 音訊轉譯器是 DirectShow 的預設音訊轉譯篩選器。

標籤
篩選介面 IAMAudioRendererStatsIAMClockQueryeIAMDirectSoundIAMResourceControlIBaseFilterIBasicAudioIDirectSound3DBuffer、IDirectSound3dListenerIMediaPositionIMediaSeekingIQualityControlIReferenceClock
輸入釘選媒體類型 主要類型:MEDIATYPE_AudioSubtypes:
  • MEDIASUBTYPE_PCM
  • MEDIASUBTYPE_IEEE_FLOAT
  • MEDIASUBTYPE_DOLBY_AC3_SPDIF
  • MEDIASUBTYPE_RAW_SPORT
  • MEDIASUBTYPE_SPDIF_TAG_241h
  • MEDIASUBTYPE_DRM_Audio
格式類型:FORMAT_WaveFormatEx
輸入針腳介面 IMemInputPin、IPin、IPinConnectionIQualityControl
輸出釘選媒體類型 不適用。
輸出針腳介面 不適用。
篩選 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 IDirectSound3DBufferIDirectSound3dListener 介面的 3D 音效。 您也可以查詢這些介面目前版本的篩選, IDirectSound3DBuffer8IDirectSound3dListener8。 在呼叫這些介面上的方法之前,請先執行圖形。

DirectShow 篩選