vs2017+opencv3.4.15 VideoCapture 读取摄像头视频失败问题

  环境: win7 vs2017+opencv3.4.15

  首先 vs2010 + opencv3.0.0 VideoCapture 读取本地视频成功和摄像头视频都是没有问题的,改用vs2017 + opencv3.4.15 读取本地视频也没有问题,读取摄像头视频就出现以下错误(0x10FCBF00 (opencv_world3415.dll)处(位于 faceTrackerCvPro.exe 中)引发的异常: 0xC0000005: 读取位置 0x03791010 时发生访问冲突。):

vs2017+opencv3.4.15 VideoCapture 读取摄像头视频失败问题

 

  网上搜索,发现是VideoCapture 的默认参数是VideoCapture video(0,CAP_MSMF);

  我原先代码(VideoCapture video(CAP_ANY);)改为新的代码(VideoCapture video(CAP_ANY,CAP_DSHOW);)就没问题了。

  CAP_MSMF,CAP_DSHOW表示Media Foundation,DirectShow 两种流媒体处理接口。

参考:

https://blog.csdn.net/gjw61652/article/details/106878294/?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-1.no_search_link&spm=1001.2101.3001.4242

https://zhuanlan.zhihu.com/p/410853128

https://blog.csdn.net/Baple/article/details/32353833

 

上一篇:vs2017 文件GB2312格式,字符集unicode 编译出现常量中有换行符提示


下一篇:VS2017添加控制台图标