Microsoft DirectX 8.0 (Visual Basic) |
パフォーマンス オブジェクトは再生全般を管理する。パフォーマンス オブジェクトは、次のタスクを実行する。
ほとんどのアプリケーションは、DirectMusicPerformance8 オブジェクトを 1 つだけ使用するが、マスタ テンポやボリュームなどのパラメータの異なる複数のパフォーマンスを使用することもできる。
作成したパフォーマンスは、DirectMusicPerformance8.InitAudio の呼び出しによって初期化しなければならない。
InitAudio は、DirectSound8 オブジェクトをパフォーマンスに関連付けて、シンセサイザから出力されたサウンド データを DirectSound で管理できるようにする。DirectSound を単独で使用するアプリケーションでは、既存のオブジェクトを InitAudio に渡すか、このメソッドによって作成されたオブジェクトに変数を設定する。しかし、通常は、DirectSound8 オブジェクトにアクセスする必要はない。
InitAudio に渡さなければならない DMUS_AUDIOPARAMS 型に値を設定することによって、アプリケーションはシンセサイザの機能を要求したり、デフォルト以外のシンセサイザを設定できる。ほとんどのアプリケーションではこれを行う必要はなく、DMUS_AUDIOPARAMS.lValidData を 0 のままにしてデフォルトのシンセサイザと機能を要求する。
次のサンプル コードでは、パフォーマンスを作成し、初期化している。objDX は DirectX8 オブジェクトである。16 のパフォーマンス チャンネルと、ポート上で使用可能なすべての機能を持つ、デフォルトの標準オーディオパスを作成する。
Dim objDMPerformance as DirectMusicPerformance8 Dim audParams As DMUS_AUDIOPARAMS Set objDMPerformance = objDX.DirectMusicPerformanceCreate objDMPerformance.InitAudio Me.hWnd, DMUS_AUDIOF_ALL, audParams, _ Nothing, DMUS_APATH_SHARED_STEREOPLUSREVERB, 16