我正在尝试运行一个OpenCV程序,该程序会打开USB凸轮并传输视频。
该程序可以编译,但是当我运行它时,我得到以下GStreamer异常(这似乎与OpenCV或C ++源代码无关):
(TLD:5263): GStreamer-CRITICAL **: gst_element_make_from_uri: assertion 'gst_uri_is_valid (uri)' failed
OpenCV Error: Unspecified error (GStreamer: cannot link elements
) in CvVideoWriter_GStreamer::open, file /home/odroid/Desktop/middleware/CppLibs/opencv-2.4.13.6/modules/highgui/src/cap_gstreamer.cpp, line 1464
terminate called after throwing an instance of 'cv::Exception'
what(): /home/odroid/Desktop/middleware/CppLibs/opencv-2.4.13.6/modules/highgui/src/cap_gstreamer.cpp:1464: error: (-2) GStreamer: cannot link elements
in function CvVideoWriter_GStreamer::open
我正在使用odroid。
有人遇到过同样的问题吗?
我本以为这是软件包依赖性问题,但是我已经安装了xorg
libgl-gst
libgl1-mesa-*
,所以我现在很迷路。
编辑
确切地说,它是OpenCV的旧版本:它是2.4.13.6。
初始化VideoCapture的行如下(我只报告了相关的行):
int main(int argc,char** argv){
string devId;
VideoCapture capture;
if(argc>4)
{
int captureNumber;
string deviceId=argv[1];
captureNumber=atoi(argv[1]);
capture.open(captureNumber);
}
编辑2
在OSX上,相同的代码可以工作而不会出现此异常(只有动态库问题)。