Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом примере приложения демонстрируется атенация потока путем реализации проигрывателя мультимедиа, отображающего поведение затенения по умолчанию, предоставляемое системой, отказ от утихающих событий и реализация пользовательской обработки при получении событий утки. Этот пример должен использоваться в сочетании с DuckingCaptureSample. Дополнительные сведения о утках или затенении потока см. в по умолчанию.
В этом разделе содержатся следующие разделы.
Описание
В этом примере показаны следующие функции.
- DirectShow для воспроизведения файла мультимедиа.
- WASAPI для управления потоками и обработки событий утки.
Требования
| Продукт | Версия |
|---|---|
| пакета SDK для Windows | Windows 7 |
| Visual Studio | 2008 |
Скачивание примера
Этот пример доступен в следующих расположениях.
| Местоположение | Путь или URL-адрес |
|---|---|
| Пакет Windows SDK | \Program Files\Microsoft SDKs\Windows\v7.0\Samples\Media\Audio\DuckingMediaPlayer\... |
Создание примера
Чтобы создать пример DuckingMediaPlayer, выполните следующие действия.
- Откройте DuckingMediaPlayer.sln в Visual Studio 2008.
- В окне выберите конфигурацию решения отладки или выпуска, выберите меню сборки сборки в строке меню и выберите параметр Сборка. Если вы не открываете Visual Studio из оболочки CMD для пакета SDK, Visual Studio не будет иметь доступа к среде сборки пакета SDK. В этом случае пример не будет создаваться, если вы явно не задаете переменную среды MSSdk, которая используется в файле проекта DuckingMediaPlayer.vcproj.
Запуск примера
При успешной сборке приложения создается исполняемый файл DuckingMediaPlayer.exe. Чтобы запустить его, выберите начать отладку или запустить без отладки в меню отладки или введите DuckingMediaPlayer в командном окне.
Чтобы просмотреть демонстрацию утки, необходимо одновременно выполнить DuckingMediaPlayer и DuckingCaptureSample. DuckingCaptureSample открывает поток связи и сигнализирует системе о создании события утки. DuckingMediaPlayer уведомляется системой при возникновении события утки, а проигрыватель мультимедиа выполняет действие, запрошенное пользователем.
Чтобы отключить поведение утки, выполните следующие действия:
- В окне DuckingCaptureSample выберите Использовать устройство ввода по умолчаниюи нажмите кнопку Пуск, чтобы начать сеанс записи с устройства связи.
- В DuckingMediaPlayer выберите файл мультимедиа для воспроизведения и укажите параметр утки, как отказаться от утки.
Обратите внимание, что файл мультимедиа воспроизводится без каких-либо прерываний. События, создаваемые системой при открытии потока коммуникации, игнорируются.
Чтобы продемонстрировать поведение уток по умолчанию, предоставленное системой, выполните следующие действия:
- Выберите параметр звуков на панели управления. На вкладке Коммуникации выберите Уменьшить объем других звуков на 80%.
- В окне DuckingCaptureSample выберите Использовать устройство ввода по умолчаниюи нажмите кнопку Пуск, чтобы начать сеанс записи с устройства связи.
- В DuckingMediaPlayer выберите файл мультимедиа для воспроизведения без выбора любого из параметров утки.
- В окне DuckingCaptureSample щелкните Остановить, чтобы остановить поток связи.
Обратите внимание, что когда DuckingCaptureSample открывает поток обмена данными, файл мультимедиа, воспроизводимый DuckingMediaPlayer без прерываний, но уровень тома снижается. При остановке сеанса связи том сбрасывается на исходный параметр. Это поведение затенения потока — это поведение, используемое системой по умолчанию.
Чтобы просмотреть настраиваемое поведение утки, реализованное проигрывателем мультимедиа, выполните следующие действия:
- В окне DuckingCaptureSample выберите Использовать устройство ввода по умолчаниюи нажмите кнопку Пуск, чтобы начать сеанс записи с устройства связи.
- В DuckingMediaPlayer выберите файл мультимедиа для воспроизведения и укажите параметр утки, как Приостановить на уток.
- В окне DuckingCaptureSample щелкните Остановить, чтобы остановить поток связи.
Обратите внимание, что когда DuckingCaptureSample открывает поток обмена данными, файл мультимедиа, воспроизводимый DuckingMediaPlayer, приостановлен. Воспроизведение возобновляется при остановке сеанса связи. Это поведение затухания потока — это поведение утки, реализованное проигрывателем мультимедиа.
DuckingMediaPlayer также демонстрирует, как интегрировать управление громкостями для каждого приложения с миксером томов.
Дополнительные сведения о функции аттестации потока см. в интерфейсе по умолчанию.
Связанные разделы
-
Примеры пакета SDK , использующие основные API аудио