我的问题是,我无法创建 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 fakesrc !我的所有插件! fakesink(它工作正常)。
我也尝试过其他选择:
GstElementFactory *factory = gst_element_factory_find ("rtspsrc");
如果(工厂)
GstElement *m_rtspSrc = gst_element_factory_create(工厂,“MyRtspSrc”);
但是,gst_element_factory_find
找不到rtspsrc
。
请帮我解决这个问题。
我也谷歌了一下。但是找不到任何解决办法。 我也引用了几篇 StackOverflow 文章。
赞GStreamer gst_element_factory_make fails等等,但仍然有问题。
非常感谢。
最佳答案
尝试制作一个不同的元素,看看是否可行,例如:
gst_element_factory_make("fakesrc", NULL);
如果同样失败,则可能是您的环境设置不正确。您可以尝试将环境变量 GST_PLUGIN_PATH
设置为包含您的 gstreamer 插件的目录。
关于windows - Gstreamer : gst_element_factory_make() : always fail and return NULL : Qt5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22878125/