【发布时间】:2010-07-07 17:29:31
【问题描述】:
很简单的问题。在 DirectSound API 的 MSDN documentation 中,他们声明当我的应用程序处于焦点时,它将是唯一可听的程序。这正是我想要发生的事情,但是当设置这个标志并通过我的应用程序播放声音时,我仍然可以听到我电脑上的背景音乐。
所以问题是,为什么?是因为应用程序使用不同的低级 API 播放背景音乐,因此使用不同的混合缓冲区?还是我需要调整一些其他小技巧才能成为唯一可听的应用程序。
我问了一个类似/相关的问题here,但没有任何回应。但是,如果您不知道特定 DirectSound 问题的答案,但您知道如何成为唯一具有不同 API 的可听应用程序,请再次告诉我!
谢谢,我使用的是 Windows XP 32 位专业版,如果有什么不同的话。
【问题讨论】:
-
您使用的是哪个版本的 IDirectSound 接口?我假设您的目标平台不是 WinCE,因为在 WinCE 的文档中,它说不支持独占输出。 IDirectSound8 接口的文档有以下关于独占标志的说明:对于 DirectX 8.0 及更高版本,与 DSSCL_PRIORITY 具有相同的效果。
-
感谢您的评论,这可能就是为什么它不让我拥有独家输出,目标是 XP,但使用 DX 10.0 与 PRIORITY 相同。呃。
标签: c++ windows directsound