[Bug 797333] videoscale cannot change interpolation method

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Oct 27 12:47:20 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=797333

--- Comment #5 from Wilfried Philips <Wilfried.Philips at wphilips.eu> ---
I believe that your statement about the enum is incorrect, as 
the python interface handles this conversion. In the code 
below I read the property before and after setting it.
You can see from the output that it has actually set an enum value

        self.pipeline.set_state(Gst.State.NULL)
        print 'NN BEFORE', self.videoscale.get_property("method")
        self.videoscale.set_property("method", 'nearest-neighbour')
        self.pipeline.set_state(Gst.State.PLAYING)
        print 'NN AFTER', self.videoscale.get_property("method")

Disregarding the first error message (the usual gtk problems) below,
the value change can be seen in the lines "NN BEFORE" and ""NN after".
Also, the last line shows that the way of disabling the pipeline does not work
properly. The video freezes at this point. The same thing happens with
Gst.State.READY instead of Gst.State.NULL

(test.py:26337): Gtk-CRITICAL **: gtk_container_propagate_draw: assertion
'_gtk_widget_get_parent (child) == GTK_WIDGET (container)' failed
NN BEFORE <enum Bilinear (2-tap) of type __main__.GstVideoScaleMethod>
NN AFTER <enum Nearest Neighbour of type __main__.GstVideoScaleMethod>
('on_error():', (gerror=GLib.Error('Internal data stream error.',
'gst-stream-error-quark', 1), debug='gstavidemux.c(5770): gst_avi_demux_loop
():
/GstPipeline:pipeline0/GstBin:bin0/GstDecodeBin:decodebin0/GstAviDemux:avidemux1:\nstreaming
stopped, reason not-linked (-1)'))

I will attach a log file with GST_DEBUG=4 for the case where I set the pipeline
state to READY


There is some info on how to properly restart here:
http://gstreamer-devel.966125.n4.nabble.com/Restart-Pipeline-td4685703.html
but honestly, it seems quite complicated and I wonder if this is the right 
approach.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list