Поделиться через


Предоставление пользовательского поведения утки

Приложение может отказаться от действия по умолчанию, обрабатываемого системой, и заменить его пользовательской реализацией.

Приложение может предоставить пользовательское взаимодействие с утками. Например, Медиаплеер Windows предоставляет свой собственный интерфейс для утки путем приостановки текущего потока мультимедиа во время сеанса обмена данными и возобновления воспроизведения при закрытии сеанса. Пример приложения мультимедиа, реализующего утки, включается в примеры пакета SDK для Windows; Дополнительные сведения см. в разделе DuckingMediaPlayer. Чтобы имитировать опыт открытия и закрытия потоков коммуникации и создания событий утки, см. статью DuckingCaptureSample, которая также входит в примеры пакета SDK для Windows.

Приложение мультимедиа, которое воспроизводит звуки, которые должны быть оттенены, должны быть осведомлены о потоках связи, когда они открываются и закрываются в системе. Пользовательская реализация может быть предоставлена с помощью MediaFoundation, DirectShow или DirectSound, которые используют ОСНОВНЫЕ API аудио. Прямой клиент WASAPI также может переопределить обработку по умолчанию, если он знает, когда сеанс связи начинается и заканчивается.

Чтобы обеспечить пользовательский интерфейс утки, клиент WASAPI должен выполнить следующие задачи:

  1. Зарегистрируйтесь для получения утиных событий от диспетчера уток — компонента звуковой системы, обрабатывающей уведомления, связанные с изменениями потока коммуникации. Дополнительные сведения см. в этой записи.

    Примечание.

    Если клиент зарегистрирован для получения утиющих уведомлений, диспетчер утки отключает поведение по умолчанию, предоставленное системой. Если поведение по умолчанию отключено экспликтно (см . раздел "Отключение дакучих действий по умолчанию") и клиент не предоставляет замещающее поведение, приложение не испытывает никакого поведения утки.

     

  2. Прослушивайте уведомления о событиях ути, отправленные менеджером утки, и выполняйте требуемое поведение утки. Дополнительные сведения о реализации поведения утки см. в разделе "Рекомендации по реализации" для уведомлений о утках.

Использование устройства связи

Взаимодействие с утками по умолчанию

Отключение интерфейса утки по умолчанию

Рекомендации по реализации для уведомлений о утках

Получение событий утки