[linux-audio-user] HDSP & amixer: What's Changed?

thomas charbonnel thomas at undata.org
Sat Feb 12 20:27:22 EST 2005


Janina Sajka wrote :
> Something about amixer's control of the HDSP Multiface has changed. And,
> I can't seem to hack how to fix things. Please help!
> 
> I used to use the simple bash script (as published in Linux Journal)
> 
> #!/bin/bash
> for i in $(seq 1 18);do
> 	        amixer cset name=Chn,index=$i 32768
> 	done
> 
> to set all the channels to unity, but this script no longer works. I
> get:
> 	 
> amixer: Control default cinfo error: No such file or directory
> 
> Meanwhile, my hdsp is definitely clipping and I can't quite tell where
> to tweak it.
> 
> alsamixer is also no longer available, gives an error:
> 
> No mixer elems found
> 
> This is with Fedora 3, so alsa 1.0.6 and the alsa-firmware tools
> (hdsploader, hdspconfig, hdspmixer).
> 
> PS: hdspmixer is not accessible to me because I need an eyes-free
> interface.
> 
> I suppose knowing where/how to tweak the hdspmixer default presets might
> do it??
> 
> Thanks for any help.
> Janina

Hi Janina,

You have to use the 'Mixer' ctl with amixer (numid=5).
It takes three parameters: source, destination, and gain
source: 0-25 -> the physical inputs 
		(on the multiface only 0-17)
	26-51 -> the playbacks (software output)
		 (only 26-43 on the mf)
destination: 0-25 -> physical outputs (mf: 0-17)
	     26-27 -> line out (phone)
gain: 0-65536 -> 0 is minus infinity, 32768 is 0 dB, 65535 is + 6dB

You can use the following script, equivalent to the 1st hdspmixer
preset :

#! /bin/bash

for out_left in $(seq 0 2 25);
do
let out_right=$out_left+1
let in_left=$out_left+26
let in_right=$out_right+26
amixer cset numid=5 $in_left,$out_left,32768
amixer cset numid=5 $in_left,26,16384
amixer cset numid=5 $in_right,$out_right,32768
amixer cset numid=5 $in_right,27,16384;
done;

Thomas





More information about the Linux-audio-user mailing list