馃崚 Make setGenericVolume keep balance between channels
Previously setGenericVolume would apply the same amount of difference on all channels, making e.g. 100%/50% -> 80%/30%.
This commit changes it to keep the ratios equal instead, so that the resulting volume would be 80%/40%, keeping the balance the same.
BUG: 435840 FIXED-IN: 5.27.7
(cherry picked from commit cfe4a360)