Фильтр отрисовщика DirectSound
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Этот фильтр отрисовывает звук с помощью DirectSound. Этот фильтр в настоящее время является отрисовщиком звука по умолчанию для звукового сигнального формата.
Помимо основных возможностей отрисовки звука, этот фильтр может обрабатывать вызовы API DirectSound. Используйте методы IAMDirectSound , чтобы задать и получить окно, которое будет обрабатывать воспроизведение звука. Отрисовщик звука DirectSound — это фильтр отрисовки звука по умолчанию для DirectShow.
Метка | Значение |
---|---|
Интерфейсы фильтра | IAMAudioRendererStats, IAMClockSlave, 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, а другой — фильтру отрисовщика звука (WaveOut ). Экземпляр DirectSound имеет понятное имя "DirectSound: DeviceName", где DeviceName — это имя устройства. Экземпляр WaveOut имеет понятное имя DeviceName.
Категория отрисовщика звука содержит два дополнительных экземпляра фильтра с именами "Устройство DirectSound по умолчанию" и "Устройство WaveOut по умолчанию". Они соответствуют звуковому устройству по умолчанию, выбранному пользователем с помощью панель управления. На самом деле они сопоставляются с одной из пар, описанных в предыдущем абзаце. Например, если в системе есть два звуковых устройства, Устройство A и Устройство B, категория отрисовщика звука будет содержать следующее:
- Устройство A
- DirectSound: устройство A
- Устройство B
- DirectSound: устройство B
- Устройство DirectSound по умолчанию
- Устройство WaveOut по умолчанию
Если пользователь выбрал устройство A в качестве устройства по умолчанию, значение "Устройство DirectSound по умолчанию" эквивалентно "DirectSound: устройство A", а "Устройство WaveOut по умолчанию" — "Устройство A". Если пользователь выберет устройство B в качестве устройства по умолчанию, эти сопоставления будут изменены.
"Устройство DirectSound по умолчанию" имеет значение MERIT_PREFERRED. Другие имеют заслуги MERIT_DO_NOT_USE. Поэтому Intelligent Connect всегда выбирает устройство DirectSound по умолчанию.
Фильтр отрисовщика DirectSound поддерживает трехмерный звук через интерфейсы DirectSound IDirectSound3DBuffer и IDirectSound3dListener . Вы также можете запросить фильтр для текущих версий этих интерфейсов, IDirectSound3DBuffer8 и IDirectSound3dListener8. Запустите граф перед вызовом методов в этих интерфейсах.