Commit 0e4d8ef5 authored by Clive Wright's avatar Clive Wright Committed by Tim-Philipp Müller

sys/oss4/oss4-mixer-slider.c: Apparently mono sliders have the mono value...

sys/oss4/oss4-mixer-slider.c: Apparently mono sliders have the mono value repeated in the upper bits, so mask those o...

Original commit message from CVS:
Based on patch by: Clive Wright <clive_wright ntlworld com>
* sys/oss4/oss4-mixer-slider.c: (gst_oss4_mixer_slider_unpack_volume):
Apparently mono sliders have the mono value repeated in the upper bits,
so mask those out when reading them. Probably makes the mixer applet
work properly in some more cases.
parent b33c37c2
......@@ -96,11 +96,17 @@ gst_oss4_mixer_slider_unpack_volume (GstOss4MixerSlider * s, int v,
val = (guint32) v;
switch (s->mc->mixext.type) {
case MIXT_MONOSLIDER:
case MIXT_MONOSLIDER16:
case MIXT_SLIDER:
volumes[0] = val;
break;
case MIXT_MONOSLIDER:
/* oss repeats the value in the upper bits, as if it was stereo */
volumes[0] = val & 0x00ff;
break;
case MIXT_MONOSLIDER16:
/* oss repeats the value in the upper bits, as if it was stereo */
volumes[0] = val & 0x0000ffff;
break;
case MIXT_STEREOSLIDER:
volumes[0] = (val & 0x00ff);
volumes[1] = (val & 0xff00) >> 8;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment