diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | sys/xvimage/xvimagesink.c | 5 |
2 files changed, 13 insertions, 0 deletions
@@ -1,5 +1,13 @@ 2008-06-20 Michael Smith <msmith@songbirdnest.com> + * sys/xvimage/xvimagesink.c: + Don't set colour balance values on the Xv port if the user hasn't + changed them (via properties or the interface). Avoids accumulating + rounding errors for the common case. + Partial fix for bug #537889. + +2008-06-20 Michael Smith <msmith@songbirdnest.com> + * gst/playback/gstdecodebin2.c: Ensure decodebin2 emits 'drained' signal once, and only once, when all pads are drained. diff --git a/sys/xvimage/xvimagesink.c b/sys/xvimage/xvimagesink.c index b96a2a90..135c1ff2 100644 --- a/sys/xvimage/xvimagesink.c +++ b/sys/xvimage/xvimagesink.c @@ -1027,6 +1027,11 @@ gst_xvimagesink_update_colorbalance (GstXvImageSink * xvimagesink) if (xvimagesink->xcontext == NULL) return; + /* Don't set the attributes if they haven't been changed, to avoid + * rounding errors changing the values */ + if (!xvimagesink->cb_changed) + return; + /* For each channel of the colorbalance we calculate the correct value doing range conversion and then set the Xv port attribute to match our values. */ |