Emgu.CV.VideoCapture.Retrieve始终返回false的问题

2019.5.10

程序中用emgu.cv来从监控的RTSP视频中抓图像出来做后续的处理。

之前一直是正常的,能抓到图像。昨天突然发现抓不到图像了,跟踪调试后发现是VideoCapture.Retrive函数始终返回false。

搜索了一番,几乎没有这样的问题

这种情况,要么是我的程序哪里存在低级或者特别的问题,大家都不怎么会犯,要么是新问题,还没人在网上说起。

先自己分析吧。

》》是网络问题?

在同一台机器上,同时用VLC打开RTSP,播放正常,排除网络原因。

》》机器一直用休眠,是不是太久没重启了?

这个原因有点玄学,还是试了试,问题照旧。

》》是第三方库的原因?

从另一台机器上拷了第三方库替换掉本地的对应文件,图像抓到了。太好了,比较一下文件应该就能定位 问题原因所在了。

一个一个的排除,最终确定cvextern.dll这个文件有问题

Emgu.CV.VideoCapture.Retrieve始终返回false的问题Emgu.CV.VideoCapture.Retrieve始终返回false的问题

将4.0替换成老版本,视频图像就抓出来了。