【问题标题】:How to detect if a microphone is used by any application如何检测麦克风是否被任何应用程序使用
【发布时间】:2022-06-14 05:19:25
【问题描述】:

我编写了一个程序,根据我是否在开会来改变我的灯光。检测到这一点的最简单方法是检查麦克风是否打开。目前,我检查屏幕上是否出现麦克风图标(OpenCv):

我确定这不是最佳解决方案。 Java 中有什么方法可以检测到正在使用麦克风的事实吗?

【问题讨论】:

  • 我想说这在纯 java 中甚至是不可能的。我认为找出这一点的唯一方法是“询问”麦克风/音频驱动程序。我想这在 linux 中使用 alsa 和一些 bash 命令可能很容易,但在 Windows 中可能更困难......也许你有机会使用 WMI?!?

标签: java windows microphone


【解决方案1】:

几年前我在研究如何通过网络传输音频,我写了一个简单丑陋的项目。

并检查我使用的麦克风是否可以使用:

javax.sound.sampled.TargetDataLine microphone = AudioSystem.getTargetDataLine(null);
if (!microphone.isOpen()) {
    // ...
}

也许这是一个有点无用的信息,但我希望它可以是有用的方向!

课程链接:MicrophoneReader.java

【讨论】:

    猜你喜欢
    • 2016-06-08
    • 1970-01-01
    • 2019-03-11
    • 1970-01-01
    • 2011-01-14
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多