Hi ossdevs,

the kmix patch progressed further in my absense. However, there are still 
plently of bugs with the implementation that need to be fixed. Those bugs are 
actually only a consequence of my lack of knowledge about the OSSv4 mixer API.
So I've got the following questions (for now):

1) How do I find the proper maxium value of a control?
The docs mention that it's possible that actually only a discrete range of 
values between ext.minvalue and ext.minvalue are supported by the underlying 
device (with automatic rounding etc.). Now I've got an HD audio (ALC883) here 
with the control "code1.jack.int-speaker1" of type MIXT_STEREOSLIDER [ + 
MIXF_CENITBEL ], with minvalue 0 and maxvalue 399. However, the maximum value 
(set with ossxmix before) reported when reading from the mixer is 299, which 
is about 75% of maximum. I've browsed the source of ossxmix, but I don't 
really understand how it does detect the actually supported maximum.
Currently the maxvalue-minvalue range is used by kmix and applied to the 
respective slider. So with this approach 100% volume in ossxmix for this 
control matches 75% in kmix, which is obviously wrong. I wonder whether a 
better a approach for sliders would be to allow 0-100 only (or 0-1000 for 
finer granularity) and write [ ext.minvalue + (sliderValue/100) * 
(ext.maxvalue - ext.minvalue) ] to the mixer.

2) How do I need to handle MIXT_HEXVALUE and MIXT_VALUE?

Best regards

apriori
_______________________________________________
oss-devel mailing list
oss-devel@mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel

Reply via email to