The title is the error message thrown out when using the OPENCV Library of the system yum install under Linux to get the video frame. OpenCV called the Gstream API to process the video. The code that throws the error is as follows:
Http://ubuntuforums.org/archive/index.php/t-1730395.html
Http://stackoverflow.com/questions/4929721/opencv-python-grab-frames-from-a-video-file
The above two links to the answer are read, or there is no solution, said to be a missing gstream plug-in, can I re-yun install gstream-plug-in These plug-ins, Package Manager prompts have been installed the latest version. But running the project will still report the error, but some people install the plugin to solve.
When reading the above link, there is a question not clear is: FFMPEG and gstream is not functionally parallel relationship? (similar to the relationship between GTK and QT).
Search a bit. Found: http://1.guotie.sinaapp.com/?p=31
The above article says that the difference between the two is not very large, almost parallel. The content of the article is as follows:
Gstreamer,vlc,ffmpeg are open source processing of streaming media software, where the comparison does not involve features, just compare the source code.
About one weeks, the three software are a little understanding, a simple talk.
0. Development language
Are the use of C language development, FFmpeg is the most concise, GStreamer used GObject, obscure;
1. Comments
VLC code is completely non-annotated, the official website does not have any documents;
GStreamer's official online has the developer guidelines, after reading probably understand the GStreamer design framework, such as Element,pad,filter and other concepts, feeling design is quite good;
FFmpeg official online documents are not many, but the comments are too detailed, super praise;
2, the amount of code
VLC code acreage relatively few;
GStreamer divided into Core,plugin, and so on, the code is huge, and, GStreamer use GLIB2, feel very bad, poor readability;
FFmpeg file a lot, but the organization is very good, all of a sudden can find the essentials;
The amount of code is not accurate statistics, just a personal feeling;
3. Code Quality
I personally appreciate FFmpeg, the code is great;
The whole frame structure is divided into two main parts, one is codec, one is format, in two large directories, as the name implies, one is processing codec, one is acquiring raw data;
In format, you can see how the entire system works by just a few files:
AVFORMAT.H,AVIO.H,AVIO.C, etc.
4. Graphical interface
VLC has a graphical interface that works well under windows;
GStreamer is not very clear;
The ffmpeg does not have a graphical interface and provides only three command-line tools, and the options for these three tools are crazy. Three commands are Ffmpeg,ffplay,ffprobe, respectively.
FFmpeg is the code I highly recommend.
In the process of using the test, found that ffmpeg can not play Helix server's RTSP source, should be ffmpeg resolution RTP and helix incompatible caused by the time to find a reason, fix.
The difference between the two also has some details:
http://my.oschina.net/tangcong/blog/92876
The same audio Format,gstreamer and FFmpeg Demux came out of the form of the audio frame is not the same, recently encountered this problem.
1 to Real Audio,gstreamer output unit is packet (contains multiple frames), and ffmpeg output unit frame.
2 to Ogg,gstreamer output Vorbis packet, including the first three header packets, and ffmpeg only output audio packets, extradata the way to transfer header packets.
3 to Flac,gstreamer first output metadata block, then output data block, and ffmpeg only output data block.
GStreamer plugin:embedded video playback halted; module Decodebin20 reported:your GStreamer installation is missing a Plug-in.