Java - 检测应用程序是否输出声音

Aku*_*udo 5 java audio detection

对于我的周末项目,我正在尝试创建一个简单的程序,等待程序/进程输出任何声音,然后/如果它然后执行某些操作.

在伪代码中:

if (application.outputsSound()) {
    /* Do something */
}
Run Code Online (Sandbox Code Playgroud)

对于初学者来说,它可能是来自特定应用程序的任何声音,但如果基于存储的音频文件检测特定声音是合理的,那将非常酷.

我的想法:我想我需要某种本地库(JNI/JNA),但由于我是新手,如果有人能指出我正确的方向,它会非常巧妙.

Pet*_*abo 0

在 Windows 上,您可以使用IAudioSessionEnumerator 接口

https://msdn.microsoft.com/en-us/library/windows/desktop/dd368281(v=vs.85).aspx

尽管这并不完美,因为第三方音频堆栈不会出现,例如 ASIO。

在 Linux 上,这取决于您使用的环境类型。