Garrett D'Amore wrote: > Bart Smaalders wrote: >> Garrett D'Amore wrote: >>> Please let us know if there are any concerns about any of the above. >>> >> >> >> This looks good, Garrett. Can we also obsolete the ability to >> disable the mixer in mixerctl? I don't want to force all applications >> to have to deal with open calls to /dev/audio blocking indefinitely. > > Yes, I'm sorry -- I thought I had already indicated this in the > inception materials. It is not possible to disable the mixer. All > support for any kind of "exclusive mode" access was removed in the > Boomer gate a long time ago. :-) > > I suppose there might be certain *ancient* applications this breaks... > but such applications would not have played well with other uses of > the audio device anyway (include any use by desktop environments like > gnome!) > > -- Garrett > > A few more notes on this topic:
mixerctl has other changes: -e is silently ignored (and no longer documented) -i has very slightly different output (the format was never documented) -o returns a failure (you can't disable the mixer!) -v no longer dumps a meaningful audio_info structure -- this structure was intrinsic to SADA, and doesn't work well with OSS. The -v flag still means "verbose", but the details are quite different. When used by itself or with -i, no additional output is given: gdamore at tabasco{27}> mixerctl -iv Device: /dev/sound/0mixer Name = audio810#0 Config = NVIDIA AC'97 (CK804) HW Info = AC'97 codec: Avance Logic ALC655 And when used with new options, it tells you more about it. For example, with -c volume to query information about the volume control: gdamore at tabasco{30}> mixerctl -c volume DEVICE CONTROL VALUE POSSIBLE audio810#0 volume 75 0-100 gdamore at tabasco{32}> mixerctl -v -c volume Device: /dev/sound/0mixer Name = audio810#0 Config = NVIDIA AC'97 (CK804) HW Info = AC'97 codec: Avance Logic ALC655 CONTROL VALUE TYPE POSSIBLE volume 75 mono 0-100 With -C (dump all controls) it will show lots of information about each control: gdamore at tabasco{33}> mixerctl -v -C Device: /dev/sound/sndstat Name = audio#0 Config = Audio Common Code (pseudo) CONTROL VALUE TYPE POSSIBLE Device: /dev/sound/0mixer Name = audio810#0 Config = NVIDIA AC'97 (CK804) HW Info = AC'97 codec: Avance Logic ALC655 CONTROL VALUE TYPE POSSIBLE volume 75 mono 0-100 front 75:75 stereo 0-100:0-100 surround 75:75 stereo 0-100:0-100 center 75 mono 0-100 lfe 75 mono 0-100 record-gain 18:12 stereo 0-100:0-100 mic 0:0 stereo 0-100:0-100 line-in 0:0 stereo 0-100:0-100 cd 0:0 stereo 0-100:0-100 aux1-in 0:0 stereo 0-100:0-100 phone 0 mono 0-100 beep 75 mono 0-100 micboost off boolean on,off loopback off boolean on,off record-source mic enum mic,cd,aux1-in line-in,stereo-mix mono-mix,phone mic-source mic1 enum mic1,mic2 jack1 line-in enum line-in,surround jack2 mic enum mic,center/lfe And, when used with -c <control> -w <value>, it shows the effect being changed: gdamore at tabasco{34}> mixerctl -v -c volume -w 50 audio810#0: 'volume' set to '50' The fact is, that dumping the audio_info_t structure, while documented, was unlikely to have ever been particularly useful to anyone. We believe that the new output formats are far more useful, and somewhat in line with other commands like dladm. (And yes, we're working on a "parseable" version of the above formats, as well. That work is still not complete yet.) -- Garrett -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.opensolaris.org/pipermail/opensolaris-arc/attachments/20090128/6ffdf91c/attachment.html>