[gstreamer-bugs] [Bug 584536] [PLUGIN-MOVE] Move shapewipe to -good

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sun Feb 7 13:50:41 PST 2010


https://bugzilla.gnome.org/show_bug.cgi?id=584536
  GStreamer | gst-plugins-good | git

--- Comment #8 from Wim Taymans <wim.taymans at gmail.com> 2010-02-07 21:50:36 UTC ---
Some comments:

 - the default property values need to be #defined at the start and then those
defines used in the
  paramspec and property init code.

 - the shutdown case can cause a deadlock. The case is when the state change
code from PAUSED to
  READY signals the gcond right before the chain function takes the mutex and
starts waiting for the
  gcond. One way of solving this is to use a boolean (flushing or something) to
indicate that a wait
  operation is needed or not. Then the flag should be set and the gcond
signaled inside the lock (one
  reason why signaling a gcond outside of a lock is not a good idea in most
cases).

 - When the shutdown is detected (assuming the deadlock is removed) in the
chain function, the chain
   function should return WRONG_STATE, not UNEXPECTED (which is only used for
EOS cases).

- When going to READY, gst_shape_wipe_reset() is called, which also resets the
property values that
  the user could have configured (or being modified by the user installed
controller). This is not
  expected behaviour of an element, the properties should keep the last
configured value.

- in the state change function, the if (transition ==
GST_STATE_CHANGE_PAUSED_TO_READY) should
  simply be moved into a case in the above switch block.

- A flush on the mask sinkpad should remove the queued mask buffer.

- it's nicer in the chain function to handle the error cases (and add
associated debug log) at the end
  of the function.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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