2019.5.10
程序中用emgu.cv来从监控的RTSP视频中抓图像出来做后续的处理。
之前一直是正常的,能抓到图像。昨天突然发现抓不到图像了,跟踪调试后发现是VideoCapture.Retrive函数始终返回false。
搜索了一番,几乎没有这样的问题
这种情况,要么是我的程序哪里存在低级或者特别的问题,大家都不怎么会犯,要么是新问题,还没人在网上说起。
先自己分析吧。
》》是网络问题?
在同一台机器上,同时用VLC打开RTSP,播放正常,排除网络原因。
》》机器一直用休眠,是不是太久没重启了?
这个原因有点玄学,还是试了试,问题照旧。
》》是第三方库的原因?
从另一台机器上拷了第三方库替换掉本地的对应文件,图像抓到了。太好了,比较一下文件应该就能定位 问题原因所在了。
一个一个的排除,最终确定cvextern.dll这个文件有问题
将4.0替换成老版本,视频图像就抓出来了。