linux gst_element_factory_make(“rtspsrc”,NULL)在qt5上失败

时间:2015-02-12 10:35:25

标签: linux qt5 gstreamer rtsp

我的问题是,为什么gst_element_factory_make ("rtspsrc", NULL)每次都会失败?我在Ubuntu 14.04上使用Qt5。 我成功地尝试了gst_element_factory_find ("rtspsrc"), 我也试过

  • gst-ispect rtspsrc
  • gst-inspect-0.10 rtspsrc
  • gst-inspect-1.0 rtspsrc

并且全部成功

这是我找到的链接 on tiku.ioon stackoverflowquabr.com,我试图按照说明操作,但也有同样的错误:

  

GStreamer-CRITICAL **:gst_bus_timed_pop_filtered:断言   ' GST_IS_BUS(巴士)'失败。

只有在执行gst_element_factory_make ("rtspsrc", NULL)时才会发生错误。

我尝试创建(成功))

gst_element_factory_make ("uridecodebin", NULL)
gst_element_factory_make ("fakesrc", NULL)
gst_element_factory_make ("v4l2src", NULL)

我没有错误。

这是我的.pro文件内容:

CONFIG += link_pkgconfig

PKGCONFIG += \
    gstreamer-0.10 \ 
    gstreamer-base-0.10 \
    gstreamer-interfaces-0.10 \
    gstreamer-audio-0.10 \
    gstreamer-video-0.10 \
    gstreamer-app-0.10 \
    gstreamer-rtsp-0.10 \
    gstreamer-rtp-0.10 

CONFIG   -= app_bundle

LIBS += -pthread \
        -lgstrtsp-0.10 \
        -lgstrtp-0.10 \
        -lgstreamer-0.10 \
        -lgstsdp-0.10 \
        -lgobject-2.0 \
        -lgmodule-2.0 \
        -lgthread-2.0 \
        -lxml2 \
        -lglib-2.0


QMAKE_CXXFLAGS += -fpermissive

但我的问题仍然存在。 任何帮助都会得到认可。

谢谢

1 个答案:

答案 0 :(得分:0)

经过几个小时的挖掘,我终于找到了答案。 这不是关于rtspsrc。

事实上,我不得不使用gstreamer-0.10,我尝试用该版本创建avdec_h264元素,而不是gstreamer-1.0。

但我终于转向ffdec_h264,这是gstreamer-0.10的元素,而且...我的程序现在像魅力一样运行。

gst_element_factory_make ("avdec_h264", NULL) // gave me the error with gstreame-0.10
gst_element_factory_make ("ffdec_h264", NULL) //  Right element to use with gstreamer-0.10

谢谢你。