gpt4 book ai didi

c# - 检查应用程序是否发出声音

转载 作者:行者123 更新时间:2023-12-03 00:49:07 25 4
gpt4 key购买 nike

今天,我在这里问您,如果给定的应用程序正在发出声音,您如何“理解”。
在Windows 7和Windows 8上,我使用以下代码(库CSCore Audio)

[...]
AudioSessionManager2 sessionManager = GetDefaultAudioSessionManager2(DataFlow.Render);
AudioSessionEnumerator sessionEnumerator = sessionManager.GetSessionEnumerator();

AudioSessionControl2 sessionControl;
foreach (AudioSessionControl session in sessionEnumerator)
{
sessionControl = session.QueryInterface<AudioSessionControl2>();
if (sessionControl.Process.MainWindowTitle.StartsWith("my_test"))
{
sessione = sessionControl;
audio = session.QueryInterface<AudioMeterInformation>();
break;
}
}

control.Text = sessione.Process.MainWindowTitle + "[" + audio.PeakValue + "]";
[...]

它运作良好,但不适用于Windows XP。
有一种“通用”的方法吗?
如果有一种用Java做到这一点的方法会更好,那么请在Linux上工作(目前我不需要,但将来可能不需要)

最佳答案

抱歉,Windows XP无法查询进程的音频峰值。您还可以查看Windows XP Audio Mixer。没有显示峰值。

关于c# - 检查应用程序是否发出声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23182880/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com