※ ChatGPTを利用し、要約された質問です(原文:DirectSoundのノイズについて)
DirectSoundのノイズについて
このQ&Aのポイント
DirectSoundを使用する際に、意図的な停止や音量調整が原因でノイズが発生することがあります。
ノイズの原因は、プライマリバッファに先行して書き込まれたゴミが残っているためと考えられます。
解決策として、プライマリバッファに0を書き込む方法や、複数音再生時の途切れを防ぐ方法が必要です。
いろいろ調べたりやってみたりしたのですがうまくいかないので質問させてください。
DirectSoundを使って音を鳴らすとき、再生されきる前に意図的にStop()を使って止めたりSetVolumeで完全に無音にさせたり、ないしは途中で周波数を変えたりすると、「ブチ」っというノイズが鳴ってしまいます。(ならないときもあるけどほとんどの場合でなります)
調べた限り原因はおそらくはプライマリバッファに先行して書き込まれたゴミが残っているためだとは思うのですが、解決策がまったくわかりません。
プライマリバッファに0を書き込もうとしてもサイズが調べられないのでLock出来ないし、仮に出来たとしても、複数音再生されているときにひとつだけ停止させた時、他の再生中の音も途切れてしまうような気がしてなりません。
どなたか解決策をご存知でしょうか?
ご存知でしたらよろしくおねがいします。