我正在开发一个在后台播放音频的 Windows 10 应用程序。我想做的是让计算机在播放音频时仍进入休眠模式(如电源和 sleep 设置,XX 分钟后 sleep )。我的意思是停止播放音频并进入休眠状态(在 sleep 状态下不继续播放)。这甚至可能吗?在线搜索并没有什么成果,因为我几乎只能找到有关如何防止 sleep 的信息,而不是启用它。
运行 powercfg.exe/requests 显示音频播放确实阻止了 sleep :
SYSTEM:
[DRIVER] Realtek High Definition Audio (...)
An audio stream is currently in use.
我目前正在使用 IAudioClient和 IAudioRenderClient回放接口(interface),通过client->Start(), renderClient->GetBuffer()。如有必要,我可以切换到不同的 API。但是,无论我使用什么,都需要允许其他应用程序(VLC、YouTube、Windows 声音等)同时正常播放音频。
我的应用程序始终在我使用它的系统上运行,我只是希望系统能够在设置的系统超时时进入休眠状态。我还需要将此异常(exception)仅应用于我的应用程序 - 如果其他应用程序正在播放会阻止 sleep 的音频,则系统不应 sleep 。
是否有任何 Windows API 调用可以使 Windows 忽略我的应用程序播放音频并仍然让系统进入休眠模式?
最佳答案
你所要求的今天是不可能的。当系统进入休眠状态时,它实质上意味着系统中的处理器停止执行任何指令并关闭电源。虽然这不像是关闭系统,但已经非常接近了。所有连接到处理器的设备也会断电以节省电池/功耗。
关于windows - 允许计算机在从 Windows 应用程序播放音频时进入休眠状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53244581/