다음을 통해 공유


DuckingMediaPlayer

이 샘플 애플리케이션은 시스템에서 제공하는 기본 감쇠 동작을 표시하고, 더킹 이벤트를 옵트아웃하고, 더킹 이벤트를 수신할 때 사용자 지정 처리를 구현하는 미디어 플레이어를 구현하여 스트림 감쇠를 보여 줍니다. 이 샘플은 DuckingCaptureSample을 사용하여 구성에 사용해야 합니다. 더킹 또는 스트림 감쇠에 대한 자세한 내용은 기본 더킹 환경을 참조하세요.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

설명

이 샘플에서는 다음 기능을 보여 줍니다.

  • 미디어 파일을 재생하는 DirectShow입니다.
  • 스트림 관리 및 더킹 이벤트 처리를 위한 WASAPI입니다.

요구 사항

제품 버전
Windows SDK Windows 7
Visual Studio 2008

 

샘플 다운로드

이 샘플은 다음 위치에서 사용할 수 있습니다.

위치 Path/URL
Windows SDK \Program Files\Microsoft SDKs\Windows\v7.0\Samples\Multimedia\Audio\DuckingMediaPlayer\...

 

예제 빌드

DuckingMediaPlayer 샘플을 빌드하려면 다음 단계를 사용합니다.

  1. Visual Studio 2008에서 DuckingMediaPlayer.sln을 엽니다.
  2. 창 내에서 디버그 또는 릴리스 솔루션 구성을 선택하고 메뉴 모음에서 빌드 메뉴를 선택하고 빌드 옵션을 선택합니다. SDK용 CMD 셸에서 Visual Studio를 열지 않으면 Visual Studio는 SDK 빌드 환경에 액세스할 수 없습니다. 이 경우 프로젝트 파일 DuckingMediaPlayer.vcproj에 사용되는 환경 변수 MSSdk를 명시적으로 설정하지 않으면 샘플이 빌드되지 않습니다.

샘플 실행

애플리케이션을 성공적으로 빌드하면 DuckingMediaPlayer.exe 실행 파일이 생성됩니다. 실행하려면 디버그 메뉴에서 디버깅 시작 또는 디버깅하지 않고 시작을 선택하거나 명령 창을 입력 DuckingMediaPlayer 합니다.

더킹 데모를 보려면 DuckingMediaPlayer 및 DuckingCaptureSample을 동시에 실행해야 합니다. DuckingCaptureSample은 통신 스트림을 열고 시스템에 더킹 이벤트를 생성하도록 신호를 보냅니다. DuckingMediaPlayer는 더킹 이벤트가 발생할 때 시스템에서 알림을 받고 미디어 플레이어는 사용자가 요청한 작업을 수행합니다.

더킹 동작을 사용하지 않도록 설정하려면 다음을 수행합니다.

  1. DuckingCaptureSample 창에서 기본 입력 디바이스 사용을 선택하고 시작을 클릭하여 통신 디바이스에서 캡처 세션을 시작합니다.
  2. DuckingMediaPlayer에서 재생할 미디어 파일을 선택하고 더킹 옵션을 더킹 옵트아웃으로 지정합니다.

미디어 파일은 중단 없이 재생됩니다. 통신 스트림이 열릴 때 시스템에서 생성된 이벤트는 무시됩니다.

시스템에서 제공하는 기본 더킹 동작을 보여 주려면 다음을 수행합니다.

  1. 제어판에서 소리 옵션을 선택합니다. 통신 탭에서 다른 소리의 볼륨을 80% 줄이기를 선택합니다.
  2. DuckingCaptureSample 창에서 기본 입력 디바이스 사용을 선택하고 시작을 클릭하여 통신 디바이스에서 캡처 세션을 시작합니다.
  3. DuckingMediaPlayer에서 더킹 옵션을 선택하지 않고 재생할 미디어 파일을 선택합니다.
  4. DuckingCaptureSample 창에서 중지 를 클릭하여 통신 스트림을 중지합니다.

DuckingCaptureSample이 통신 스트림을 열면 DuckingMediaPlayer에서 재생한 미디어 파일이 중단 없이 재생되지만 볼륨 수준이 낮아집니다. 통신 세션이 중지되면 볼륨이 원래 설정으로 다시 설정됩니다. 이 스트림 감쇠 동작은 시스템에서 구현하는 기본 더킹 동작입니다.

미디어 플레이어가 구현한 사용자 지정된 더킹 동작을 보려면 다음을 수행합니다.

  1. DuckingCaptureSample 창에서 기본 입력 디바이스 사용을 선택하고 시작을 클릭하여 통신 디바이스에서 캡처 세션을 시작합니다.
  2. DuckingMediaPlayer에서 재생할 미디어 파일을 선택하고 Duck에서 일시 중지로 더킹 옵션을 지정합니다.
  3. DuckingCaptureSample 창에서 중지 를 클릭하여 통신 스트림을 중지합니다.

DuckingCaptureSample이 통신 스트림을 열면 DuckingMediaPlayer에서 재생한 미디어 파일이 일시 중지됩니다. 통신 세션이 중지되면 재생이 다시 시작됩니다. 이 스트림 감쇠 동작은 미디어 플레이어가 구현한 더킹 동작입니다.

DuckingMediaPlayer는 또한 볼륨 믹서와 각 애플리케이션에 대한 볼륨 제어를 통합하는 방법을 보여 줍니다.

스트림 감쇠 기능에 대한 자세한 내용은 기본 더킹 환경을 참조하세요.

핵심 오디오 API를 사용하는 SDK 샘플