Freigeben über


DirectSound-Rendererfilter

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Dieser Filter rendert Audio mithilfe von DirectSound. Dieser Filter ist derzeit der Standard-Audiorenderer für Wellenformsound.

Zusätzlich zu den grundlegenden Funktionen des Soundrenderings kann dieser Filter DirectSound-API-Aufrufe verarbeiten. Verwenden Sie die IAMDirectSound-Methoden , um das Fenster festzulegen und abzurufen, das die Soundwiedergabe behandelt. DirectSound Audio Renderer ist der Standard-Audiorenderingfilter für DirectShow.

Bezeichnung Wert
Filterschnittstellen IAMAudioRendererStats, IAMClockSlave, IAMDirectSound, IAMResourceControl, IBaseFilter, IBasicAudio, IDirectSound3DBuffer, IDirectSound3dListener, IMediaPosition, IMediaSeeking, IQualityControl, IReferenceClock
Eingabeheftmedientypen Haupttyp: MEDIATYPE_AudioSubtypes:
  • MEDIASUBTYPE_PCM
  • MEDIASUBTYPE_IEEE_FLOAT
  • MEDIASUBTYPE_DOLBY_AC3_SPDIF
  • MEDIASUBTYPE_RAW_SPORT
  • MEDIASUBTYPE_SPDIF_TAG_241h
  • MEDIASUBTYPE_DRM_Audio
Formattyp: FORMAT_WaveFormatEx
Eingabenadelschnittstellen IMemInputPin, IPin, IPinConnection, IQualityControl
Ausgabeheftmedientypen Nicht zutreffend
Ausgabepinschnittstellen Nicht zutreffend
CLSID filtern CLSID_DSoundRender
Eigenschaftenseite CLSID CLSID_AudioProperties, CLSID_AudioRendererAdvancedProperties
Ausführbare Datei quartz.dll
Verdienst MERIT_PREFERRED
Filterkategorie CLSID_AudioRendererCategory

Bemerkungen

Dieser Filter fungiert als Wrapper für ein Audiogerät. Um die im System des Benutzers verfügbaren Audiogeräte aufzulisten, verwenden Sie die ICreateDevEnum-Schnittstelle mit der Kategorie Audiorenderer (CLSID_AudioRendererCategory). Für jedes Audiogerät enthält die Audiorenderer-Kategorie zwei Filterinstanzen. Eine davon entspricht dem DirectSound-Renderer, der andere dem Filter Audiorenderer (WaveOut). Die DirectSound-instance hat den Anzeigenamen "DirectSound: DeviceName", wobei DeviceName der Name des Geräts ist. Die WaveOut-instance hat den Anzeigenamen DeviceName.

Die Audiorendererkategorie enthält zwei zusätzliche Filterinstanzen mit dem Namen "Default DirectSound Device" und "Default WaveOut Device". Diese entsprechen dem Standard-Soundgerät, das vom Benutzer über die Systemsteuerung ausgewählt wird. Sie sind tatsächlich einem der Paare zugeordnet, die im vorherigen Absatz beschrieben wurden. Wenn das System beispielsweise über zwei Audiogeräte verfügt: Gerät A und Gerät B, enthält die Kategorie Audiorenderer Folgendes:

  • Gerät A
  • DirectSound: Gerät A
  • Gerät B
  • DirectSound: Gerät B
  • DirectSound-Standardgerät
  • WaveOut-Standardgerät

Wenn der Benutzer Gerät A als Standardgerät ausgewählt hat, entspricht "DirectSound-Standardgerät" "DirectSound: Gerät A", und "WaveOut-Standardgerät" entspricht "Gerät A". Wenn der Benutzer Gerät B als Standardgerät auswählt, ändern sich diese Zuordnungen.

Dem "DirectSound-Standardgerät" wird MERIT_PREFERRED zugewiesen. Die anderen haben Verdienste MERIT_DO_NOT_USE. Daher wählt Intelligent Connect immer das DirectSound-Standardgerät aus.

Der DirectSound Renderer-Filter unterstützt 3D-Sound über die Schnittstellen DirectSound IDirectSound3DBuffer und IDirectSound3dListener . Sie können den Filter auch für die aktuellen Versionen dieser Schnittstellen abfragen, IDirectSound3DBuffer8 und IDirectSound3dListener8. Führen Sie das Diagramm aus, bevor Sie Methoden für diese Schnittstellen aufrufen.

DirectShow-Filter