I recently put AIX 4.2.1 on a Powerstation 355 with an ultimedia
sound card in it. I installed ultimedia services, but was
disappointed with the mixer that comes with it (no balance control,
no ability to change outputs, etc.). Looking around the net, there
did not seem to be any alternatives available, so I took it upon
myself to build one to my liking. (I was hoping OSS might work, but
they do not support microchannel AIX boxes.)
After a little programming I had something suitable, but I cannot
find a way to access the audio device the same way the master_settings
tool can. Whenever I access the audio device, I seem to get exclusive
control, which prevents other applications from using audio at the
same time. I thought there might be another way of initializing the
device other than "play" or "record", but couldn't find one. I thought
there might be a special mixing device to use and found that
master_settings opens /dev/baud0/mstvol, but it seems to make little
difference when I go to use it.
When I use UMS, the interfaces I have found to access the device
require me to specify a mode -- either play or record, as far as
I can tell. When I use the raw audio ioctls from sys/audio.h,
all ioctls appear to fail unless I do an AUDIO_INIT first, which
appears to again require a similar mode setting, which locks me in
to exclusive access to the device. Tracing master_settings
seems to indicate that it uses a different ioctl than those listed
in sys/audio.h. Sigh.
I just need to know how to access the audio device to control
master audio settings. Since the master_settings application can
do it, I *know* there is a way to do it, but I cannot seem to find
any sample code or documentation explaining how to do it! Does anyone
here have ideas or information that might be useful?
Any help is greatly appreciated! Many thanks in advance!