次の方法で共有


DuckingMediaPlayer

このサンプル アプリケーションは、メディア プレーヤーを実装することによりストリームの減衰をデモンストレーションしています。このデモンストレーションでは、システムによって提供される既定の減衰動作を示して、ダッキング イベントをオプトアウトし、ダッキング イベントの受信時にカスタム処理を実装しています。 このサンプルは、DuckingCaptureSample と組み合わせて使用する必要があります。 ダッキングまたはストリームの減衰について詳しくは、「既定のダッキング エクスペリエンス」をご覧ください。

このトピックは、次のセクションで構成されています。

説明

このサンプルでは、次の機能について説明します。

  • メディア ファイルを再生する DirectShow。
  • ストリーム管理とダッキング イベントの処理のための WASAPI

要件

Product バージョン
Windows SDK Windows 7
Visual Studio 2008

 

サンプルのダウンロード

このサンプルは、次の場所にあります。

場所 パス/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 サンプル