dynamic pipeline, getting not-negotiated error when adding filesink

Piotr Szychowski zikann at gmail.com
Mon Sep 2 11:17:14 PDT 2013


This works:

gst-launch -e v4l2src !
video/x-raw-yuv,width=640,height=480,framerate=30/1 ! tee
name=splitter ! queue ! autovideosink splitter. ! queue ! theoraenc !
oggmux ! filesink location=testogg.ogg

I'm trying to do the same in a dynamic way using python and pygst, the
autovideosink branch is always there and after user input I want to
attach the filesink.

    fileSink = self.getFileSink()    #creates the filesink Bin
    pad = fileSink.get_static_pad('sink')
    pad.set_blocked_async(True, self.padBlockedOnRecordStart, None)
    self.player.add(fileSink)
    fileSink.set_state(gst.STATE_PLAYING)
    self.player.get_by_name('splitter').link(fileSink)
    pad.set_blocked_async(False, self.padBlockedOnRecordStart, None)

on linking the splitter(tee) to the fileSink Bin I get this error:

Error: GStreamer encountered a general stream error.
gstbasesrc.c(2625): gst_base_src_loop ():
/GstPipeline:player/GstV4l2Src:video:
streaming task paused, reason not-negotiated (-4)

Any help would be appreciated.

Regards

Piotr Szychowski
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130902/7430efcc/attachment.html>


More information about the gstreamer-devel mailing list