2010-07-07 58 views
1

我正在创建一个基本的信号发生器,并决定使用我的音频卡作为模拟输出。我选择使用DirectSound,因为...这似乎是一个不错的选择。增益音频输出的唯一控制,DirectSound

我已经完成并运行得非常好,但是现在我意识到我的代码使用辅助缓冲区,并且计算机上的其他任何声音都与我生成的信号混合在一起。这是一个问题,因为当我运行电机时,我不希望它发送一个MSN戳声作为命令。

为了获得完全控制权,我试图通过将我的合作级别设置为DSSCL_WRITEPRIMARY来接管系统。总而言之,这个策略让我很头疼,因为我在错误尝试完成这个设置后遇到了错误。有关使用主缓冲区的文档不是很好,我找不到任何非常好的示例。

所以我的问题是:

  1. 没有人有接管和写入primarybuffer一个很好的,工作的例子。

  2. 是否有一种更简单的方法输出波形到声卡,并确保我的应用程序具有完整的唯一控制?

谢谢

回答