Xcode中OpenCV C++调用Mac摄像头。由于在macOS 10.14中加入了隐私管理,直接调用摄像头会出现报错1
OpenCV: not authorized to capture video (status 0), requesting... OpenCV: camera failed to properly initialize!
所以涉及摄像头这类隐私问题的项目必须添加Info.plist
,在这注册摄像头权限。
注册摄像头权限
Photo Booth作为Mac原生的调用摄像头的app,天生带有设置权限的Info.plist
,我们只需要将Photo Booth的Info.plist
稍作修改,便可应用于我们的程序中。
当然,首先我们得在Xcode里配置OpenCV。
1、在/System/Applications/Photo Booth.app
中右击“显示包文件”,找到其中的/System/Applications/Photo Booth.app/Contents/Info.plist
,将这个Info.plist
拷贝用于修改。
2、修改Info.plist
将原本的Info.plist
进行下列修改。
3、将Info.plist
移入Xcode项目中
在Xcode项目的Product文件中右击里面的项目“Show In Folder”,将修改后的Info.plist
添加到该文件夹中。
摄像头注册配置完成。
OpenCV C++ 调用摄像头
1 |
|