[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