ボリュームの設定には下記の関数を使用します。ボリュームは、1db(デシベル)の1/100の単位で設定します。設定できる値の範囲はポートによって決まっており、デフォルトのソフトウェアシンセサイザ(Microsoft Software Synthesizer)の場合、許容範囲は +20 ~ -200db ですが、実用範囲は +10 ~ -100dbです。ちなみにハードウェアMIDIポートでは、ボリュームの変更はサポートされていません。
// ボリュームを10.00dbに設定 long lVolume = 1000; g_lpPerformance->SetGlobalParam( GUID_PerfMasterVolume, &lVolume, sizeof(long) );
ボリュームの取得には下記の関数を使用します。
long lVolume; g_lpPerformance->GetGlobalParam( GUID_PerfMasterVolume, &lVolume, sizeof(long) );