我的问题是,我无法创建Gstreamer元素。我正在使用Qt 5.2.1
创建Gstreamer
项目
我在做什么 :
gst_init( NULL, NULL );
GstElement *m_pipeline = gst_pipeline_new ("pipeline1");
GstElement *m_rtspSrc = gst_element_factory_make("rtspsrc", "MyRtspSrc");
但是gst_element_factory_make
总是返回NULL
.
我已验证的内容:
- 已检查共享对象是否在 $(libdir)/gstreamer-0.10/中。 (它就在那里)。
-
gst-inspect-0.10 rtspsrc
. (它提供了插件的详细信息)。 - GST-launch-0.10 假货 ! my_all_plugin ! 假水槽 (它工作正常)。
我也尝试了替代选项:
GstElementFactory *factory = gst_element_factory_find ("rtspsrc");
if(factory)
GstElement *m_rtspSrc = gst_element_factory_create (factory, "MyRtspSrc");
但是, gst_element_factory_find
找不到rtspsrc
.
请帮助我解决这个问题。
我也用谷歌搜索过。但找不到任何解决方案。我也参考了一些StackOverflow文章。
像GStreamer一样,gst_element_factory_make失败等等,但仍然存在问题。
提前非常感谢。
尝试创建一个不同的元素,看看它是否有效,例如:
gst_element_factory_make("fakesrc", NULL);
如果这也失败了,则可能是您的环境设置不正确。您可以尝试将环境变量GST_PLUGIN_PATH
设置为包含 gstreamer 插件的目录。