核心用法
Camera Skill 通过 ffmpeg 调用 MacBook 的 AVFoundation 框架访问物理摄像头,支持 Brio 100(外接显示器正面)与 FaceTime HD(笔记本侧角)两台设备。使用时必须先执行 5 秒预热片段以让自动曝光收敛,再从视频尾部截取最后一帧作为静态照片输出至 /tmp。
显著优点
- 双机位灵活:正面直拍与侧面轮廓可并行获取,适合身份核验或立体建模场景
- 参数已调优:Brio 用默认像素格式,FaceTime 强制 nv12 避免缓冲区崩溃,可靠性经过实测
- 输出轻量化:单张 JPEG 仅 80–100 KB,利于即时传输与存储
潜在缺点与局限
- 独占锁冲突:Photo Booth 等应用占用摄像头时会直接失败,需手动前置检查
- 临时文件残留:预热视频默认不自动清理,长期运行可能堆积磁盘
- 无隐私确认:技能层未内建拍摄提示音或 LED 指示灯控制,依赖系统默认行为
- 平台锁定:AVFoundation 与硬编码设备索引决定了仅 macOS 可用,无跨平台移植性
适合人群
- 需快速自检头像或证件照的本地用户
- 构建多视角人脸数据集的开发测试者
- 在受控环境(单人单设备)下自动化采集的脚本工作流
常规风险
- 隐私合规:静默调用摄像头可能触发企业安全策略或法律合规问题,建议在调用前显式告知用户
- 临时目录安全:
/tmp文件权限依赖 umask,多用户系统可能存在可读风险,敏感场景应移至用户专属目录并加密