Gstreamer:gst_element_factory_make():总是失败并返回NULL:Qt5

AB *_*lim 2 windows gstreamer qt5

我的问题是,我无法创建 Gstreamer 元素。我正在Gstreamer使用Qt 5.2.1

我在做什么 :

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

我已经验证过:

  1. 检查共享对象是否在 $(libdir)/gstreamer-0.10/ 中。(它在那里)。
  2. gst-inspect-0.10 rtspsrc. (它提供了插件的详细信息)。
  3. gst-launch-0.10 fakesrc !my_all_plugin !fakesink(它工作正常)。

我也尝试过替代选项:

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 失败等等,但仍然有问题。

非常感谢提前。

Mar*_*ley 5

尝试制作一个不同的元素,看看它是否有效,例如:

gst_element_factory_make("fakesrc", NULL);
Run Code Online (Sandbox Code Playgroud)

如果这也失败了,那么很可能是您的环境设置不正确。您可以尝试将环境变量设置为GST_PLUGIN_PATH包含 gstreamer 插件的目录。