一个用于监控摄像头占用状态的 ClassIsland 插件。
它不会读取摄像头画面,也不会尝试控制摄像头,只是通过 Windows 的 Media Foundation 接口监听摄像头当前是否正在被其它程序使用,并把这个状态提供给 ClassIsland 的规则系统。
- 监控指定摄像头是否正在被占用
- 在 ClassIsland 中提供
摄像头是否被使用规则 - 支持在设置页选择要监控的摄像头设备
- 支持跟随 ClassIsland 启动后自动开始监控
安装插件后,打开 ClassIsland 的应用设置,进入 CameraActivityMonitor 设置页。
在这里可以:
- 选择需要监控的摄像头。
- 点击“开启”开始监控,点击“关闭”停止监控。
- 如有需要,可以点击“刷新”重新读取摄像头列表。
- 打开“自动开启监控”后,ClassIsland 下次启动时会自动开始监控已选择的摄像头。
插件会注册一个规则:
摄像头是否被使用
当当前选中的摄像头正在被其它程序调用时,这个规则会处于生效状态。
- 使用文本组件,在 非
摄像头是否被使用时隐藏,实现被使用的提示文字 - 配合自动化功能,在摄像头状态变化时触发提醒或其它操作。
- 本插件依赖 Windows 的 Media Foundation 摄像头活动监控接口,因此只支持 Windows。
- 插件只判断摄像头是否被占用,不会读取、保存或上传摄像头画面。
- 当前规则只暴露“是否正在使用”的状态,不显示正在使用摄像头的具体进程。(之后有时间会更新)
- 如果摄像头列表为空,可以先确认系统里能否正常识别摄像头,然后回到设置页点击“刷新”。
- Windows 10 1703 及以上
- ClassIsland 2.0+
项目基于 .NET 8 和 ClassIsland Plugin SDK。
本地构建插件包可以运行:
./tools/publish.ps1脚本会执行 Release 发布,并启用 CreateCipx 生成插件包。
- 插件图标由 @LiPolymer 提供:#1 😋😋
- 本项目使用 CsWin32 生成 Windows API 的 C# 绑定
本项目使用 AGPLv3 许可证。