summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMichael Smith <msmith@xiph.org>2008-06-20 17:02:48 +0000
committerMichael Smith <msmith@xiph.org>2008-06-20 17:02:48 +0000
commit23f5a075ab19a7e65a478269e3ee9a0db52c368e (patch)
tree916568f7d7d8b815d6283e10cc0857ca21d9c0f4 /sys
parent9d2564874a5bf4b47c80dbf086f52644afb83ffd (diff)
sys/xvimage/xvimagesink.c: Don't set colour balance values on the Xv port if the user hasn't changed them (via proper...
Original commit message from CVS: * 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.
Diffstat (limited to 'sys')
-rw-r--r--sys/xvimage/xvimagesink.c5
1 files changed, 5 insertions, 0 deletions
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. */