查看 Windows 10 上是否有应用程序正在使用麦克风
See if an app is using the Microphone on Windows 10
我正在尝试编写一个脚本,让我检查网络摄像头和麦克风是否在使用中。对于网络摄像头,我已经设法在 Python 中写了一些东西,但是到目前为止,我还没有找到为麦克风做同样事情的好方法。
在 Windows 中,您在 SysTray 中有一个专门的设置,当应用程序实际使用您的麦克风时会显示该设置(甚至显示是哪个应用程序):
很明显 Windows 知道它目前是否在使用(这就是我所需要的),甚至知道哪个应用程序正在使用它。但是我还没有找到任何方法来以任何方式读出这些信息。
是否有可能以某种方式从 Windows 本身获取数据?
在这一点上,我什至不介意使用哪种语言,Python、C#、PowerShell 或其他语言。
PS:我知道可能有一些方法可以在系统托盘中不显示麦克风的情况下访问它,但这种情况与我想要实现的目标无关。
我现在使用以下方法管理它 - 我只是截取桌面的屏幕截图并检查我希望出现在 SysTray 中的图标,以防某些应用程序正在使用麦克风。
为此我使用了可以通过 pip 安装的包 imagesearch:
pip3 安装 python-imageseach-drov0
然后我通过那个包截屏并检查该项目是否在屏幕上可见:
from python_imagesearch.imagesearch import imagesearch
pos = imagesearch(imagePath)
microphone_on = pos[0] != -1
if microphone_on:
print("Microphone is in use")
else:
print("Microphone is not in use")
imagePath 中定义的图像如下所示:
我在以下页面找到了包裹的信息:https://brokencode.io/how-to-easily-image-search-with-python/
识别效果非常好且速度很快,但当然这可能不是最佳解决方案,适用于您只想知道是否有任何东西正在使用麦克风的简单情况。如果有一些可用的 API 可以问,那会更好,但总比没有好,解决了我的问题。
我正在尝试编写一个脚本,让我检查网络摄像头和麦克风是否在使用中。对于网络摄像头,我已经设法在 Python 中写了一些东西,但是到目前为止,我还没有找到为麦克风做同样事情的好方法。
在 Windows 中,您在 SysTray 中有一个专门的设置,当应用程序实际使用您的麦克风时会显示该设置(甚至显示是哪个应用程序):
很明显 Windows 知道它目前是否在使用(这就是我所需要的),甚至知道哪个应用程序正在使用它。但是我还没有找到任何方法来以任何方式读出这些信息。
是否有可能以某种方式从 Windows 本身获取数据? 在这一点上,我什至不介意使用哪种语言,Python、C#、PowerShell 或其他语言。
PS:我知道可能有一些方法可以在系统托盘中不显示麦克风的情况下访问它,但这种情况与我想要实现的目标无关。
我现在使用以下方法管理它 - 我只是截取桌面的屏幕截图并检查我希望出现在 SysTray 中的图标,以防某些应用程序正在使用麦克风。
为此我使用了可以通过 pip 安装的包 imagesearch:
pip3 安装 python-imageseach-drov0
然后我通过那个包截屏并检查该项目是否在屏幕上可见:
from python_imagesearch.imagesearch import imagesearch
pos = imagesearch(imagePath)
microphone_on = pos[0] != -1
if microphone_on:
print("Microphone is in use")
else:
print("Microphone is not in use")
imagePath 中定义的图像如下所示:
我在以下页面找到了包裹的信息:https://brokencode.io/how-to-easily-image-search-with-python/
识别效果非常好且速度很快,但当然这可能不是最佳解决方案,适用于您只想知道是否有任何东西正在使用麦克风的简单情况。如果有一些可用的 API 可以问,那会更好,但总比没有好,解决了我的问题。