Partilhar via


Filtro do Renderizador DirectSound

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Esse filtro renderiza o áudio usando DirectSound. Atualmente, esse filtro é o renderizador de áudio padrão para som de forma de onda.

Além dos recursos básicos de renderização de som, esse filtro pode processar chamadas à API DirectSound. Use os métodos IAMDirectSound para definir e recuperar a janela que manipulará a reprodução de som. O Renderizador de Áudio DirectSound é o filtro de renderização de áudio padrão para DirectShow.

Rótulo Valor
Filtrar Interfaces IAMAudioRendererStats, IAMClockSlave, IAMDirectSound, IAMResourceControl, IBaseFilter, IBasicAudio, IDirectSound3DBuffer, IDirectSound3dListener, IMediaPosition, IMediaSeeking, IQualityControl, IReferenceClock
Tipos de mídia de pino de entrada Tipo principal: MEDIATYPE_AudioSubtypes:
  • MEDIASUBTYPE_PCM
  • MEDIASUBTYPE_IEEE_FLOAT
  • MEDIASUBTYPE_DOLBY_AC3_SPDIF
  • MEDIASUBTYPE_RAW_SPORT
  • MEDIASUBTYPE_SPDIF_TAG_241h
  • MEDIASUBTYPE_DRM_Audio
Tipo de formato: FORMAT_WaveFormatEx
Interfaces de pino de entrada IMemInputPin, IPin, IPinConnection, IQualityControl
Tipos de mídia de pino de saída Não aplicável.
Interfaces de pino de saída Não aplicável.
Filtrar CLSID CLSID_DSoundRender
CLSID da página de propriedades CLSID_AudioProperties, CLSID_AudioRendererAdvancedProperties
Executável quartz.dll
Mérito MERIT_PREFERRED
Categoria de Filtro CLSID_AudioRendererCategory

Comentários

Esse filtro atua como um wrapper para um dispositivo de áudio. Para enumerar os dispositivos de áudio disponíveis no sistema do usuário, use a interface ICreateDevEnum com a categoria de renderizador de áudio (CLSID_AudioRendererCategory). Para cada dispositivo de áudio, a categoria do renderizador de áudio contém duas instâncias de filtro. Um deles corresponde ao Renderizador DirectSound e o outro corresponde ao filtro Do Renderizador de Áudio (WaveOut). A instância do DirectSound tem o nome amigável "DirectSound: DeviceName", em que DeviceName é o nome do dispositivo. A instância do WaveOut tem o nome amigável DeviceName.

A categoria do renderizador de áudio contém duas instâncias de filtro adicionais, chamadas "Dispositivo DirectSound Padrão" e "Dispositivo WaveOut Padrão". Eles correspondem ao dispositivo de som padrão, conforme escolhido pelo usuário por meio do Painel de Controle. Na verdade, eles são mapeamentos para um dos pares descritos no parágrafo anterior. Por exemplo, se o sistema tiver dois dispositivos de áudio, Dispositivo A e Dispositivo B, a categoria do renderizador de áudio conterá o seguinte:

  • Dispositivo A
  • DirectSound: Dispositivo A
  • Dispositivo B
  • DirectSound: Dispositivo B
  • Dispositivo DirectSound padrão
  • Dispositivo WaveOut padrão

Se o usuário selecionou o Dispositivo A como o dispositivo padrão, "Dispositivo DirectSound Padrão" será equivalente a "DirectSound: Dispositivo A" e "Dispositivo WaveOut Padrão" será equivalente a "Dispositivo A". Se o usuário selecionar o Dispositivo B como o dispositivo padrão, esses mapeamentos serão alterados.

"Dispositivo DirectSound padrão" recebe um mérito de MERIT_PREFERRED. Os outros têm mérito MERIT_DO_NOT_USE. Portanto, o Intelligent Connect sempre escolherá o dispositivo DirectSound padrão.

O filtro Renderizador DirectSound dá suporte ao som 3D por meio das interfaces DirectSound IDirectSound3DBuffer e IDirectSound3dListener . Você também pode consultar o filtro para as versões atuais dessas interfaces, IDirectSound3DBuffer8 e IDirectSound3dListener8. Execute o grafo antes de chamar métodos nessas interfaces.

Filtros do DirectShow