Предоставление пользовательского поведения утки
Приложение может отказаться от действия по умолчанию, обрабатываемого системой, и заменить его пользовательской реализацией.
Приложение может предоставить пользовательское взаимодействие с утками. Например, Медиаплеер Windows предоставляет свой собственный интерфейс для утки путем приостановки текущего потока мультимедиа во время сеанса обмена данными и возобновления воспроизведения при закрытии сеанса. Пример приложения мультимедиа, реализующего утки, включается в примеры пакета SDK для Windows; Дополнительные сведения см. в разделе DuckingMediaPlayer. Чтобы имитировать опыт открытия и закрытия потоков коммуникации и создания событий утки, см. статью DuckingCaptureSample, которая также входит в примеры пакета SDK для Windows.
Приложение мультимедиа, которое воспроизводит звуки, которые должны быть оттенены, должны быть осведомлены о потоках связи, когда они открываются и закрываются в системе. Пользовательская реализация может быть предоставлена с помощью MediaFoundation, DirectShow или DirectSound, которые используют ОСНОВНЫЕ API аудио. Прямой клиент WASAPI также может переопределить обработку по умолчанию, если он знает, когда сеанс связи начинается и заканчивается.
Чтобы обеспечить пользовательский интерфейс утки, клиент WASAPI должен выполнить следующие задачи:
Зарегистрируйтесь для получения утиных событий от диспетчера уток — компонента звуковой системы, обрабатывающей уведомления, связанные с изменениями потока коммуникации. Дополнительные сведения см. в этой записи.
Примечание.
Если клиент зарегистрирован для получения утиющих уведомлений, диспетчер утки отключает поведение по умолчанию, предоставленное системой. Если поведение по умолчанию отключено экспликтно (см . раздел "Отключение дакучих действий по умолчанию") и клиент не предоставляет замещающее поведение, приложение не испытывает никакого поведения утки.
Прослушивайте уведомления о событиях ути, отправленные менеджером утки, и выполняйте требуемое поведение утки. Дополнительные сведения о реализации поведения утки см. в разделе "Рекомендации по реализации" для уведомлений о утках.
См. также