我正在研究在后台播放音频的Windows 10应用程序。我想做的是允许计算机在播放音频时仍进入睡眠模式(例如,“电源和睡眠设置”,“XX分钟后睡眠”)。因此,我的意思是停止播放音频并进入睡眠状态(不要在睡眠状态下继续播放)。这有可能吗?在线搜索并没有取得丰硕的成果,因为我几乎只能找到有关如何防止睡眠的信息,而不能启用它。

运行powercfg.exe / requests显示音频播放确实可以防止睡眠:

SYSTEM:
[DRIVER] Realtek High Definition Audio (...)
An audio stream is currently in use.

我目前正在使用IAudioClientIAudioRenderClient接口(interface)通过client-> Start(),renderClient-> GetBuffer()进行回放。如有必要,我可以切换到其他API。但是,无论我使用什么,都需要允许其他应用程序(VLC,YouTube,Windows声音等)同时正常播放音频。

我的应用程序始终在使用它的系统上运行,我只是希望系统能够在设置的系统超时时进入睡眠状态。我还需要仅将此异常(exception)应用于我的应用程序-如果其他应用程序正在播放会阻止睡眠的音频,则系统不应进入睡眠状态。

是否有任何Windows API调用可以使Windows忽略我的应用程序播放音频并仍然让系统进入睡眠模式?

最佳答案

您今天要的是不可能的。当系统进入睡眠状态时,这实际上意味着系统中的处理器停止执行任何指令并关闭电源。尽管这不像关闭系统那样,它却非常接近。连接到处理器的所有设备也都掉电以节省电池/功耗。

关于windows - 播放Windows应用程序中的音频时允许计算机进入休眠状态,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53244581/

10-16 19:50