midi と wav オーディオの両方を生成するプログラムがあります。MIDI とオーディオの音量とバランスを別々に制御できるようにする必要があります。理論的には、呼び出すだけでよいようです。
unsigned short left = (unsigned short)(wavvol*wavbal/100.0);
unsigned short right = (unsigned short)(wavvol*(100-wavbal)/100.0);
MMRESULT err = waveOutSetVolume(hWaveOut, left | (right<<16)); // for audio
と
unsigned short left = (unsigned short)(midivol*midibal/100.0);
unsigned short right = (unsigned short)(midivol*(100-midibal)/100.0);
MMRESULT err = midiOutSetVolume(s_hmidiout, left | (right<<16)); // for midi
ミディ用
問題は、MIDI ボリュームをコントロールすることで Wave ボリュームと Visa-verse を設定することで、それらが窓の中で接着されているように見えることです。
それらを剥がす方法があるかどうか誰かが知っていますか?
ところで、私は Windows 7 を使用しています。Microsoft が win7 でオーディオを台無しにしたことは知っています。XP では、ミディとウェーブ用に別々のコントロールを備えたオーディオ コントロール パネルがありましたが、それはなくなったようです。彼らは今それを内部的に混ぜ合わせているだけで、APIレベルでもそれを公開していないと思うので、おそらく私は自分の質問に答えました.
より良い答えがあるかどうかを知りたいと思っています。
ありがとう、スティーブ