still struggling with sound recording

Yuriy Tsibizov Yuriy.Tsibizov at gfk.ru
Wed Feb 23 01:02:32 PST 2005


I'm not shure should recording work on Audigy 2 cards (never tested by me).
With this settings for mixer and emuctrl I was able to record with sox
(from AUX2) on Audigy:

 mixer
 -----
Mixer vol      is currently set to  75:75
Mixer pcm      is currently set to  75:75
Mixer speaker  is currently set to  75:75
Mixer line     is currently set to  75:75
Mixer mic      is currently set to   0:0
Mixer cd       is currently set to  75:75
Mixer rec      is currently set to 100:100
Mixer line1    is currently set to  75:75
Mixer phin     is currently set to   0:0
Mixer phout    is currently set to   0:0
Mixer video    is currently set to  75:75

mixer recsrc can be anything (recording source is selected from emuctrl)

 emuctrl
 -------
Id	Description          	  Vol	RecVol
FX (PCM) buses
fx0	DSP FX BUS 0        	 77:77	(0:0)
DSP Inputs
in0	AC97 Codec          	  0:0	(0:0)
in1	CD S/PDIF           	  0:0	(0:0)
in2	Optical S/PDIF      	  0:0	(0:0)
in4	Line-In (2)         	  0:0	(0:0)
in5	Coaxial S/PDIF      	  0:0	(0:0)
in6	AUX2                	100:100	(100:100)
DSP Outputs
out0	DIGITAL: Front      	  0:0
out1	DIGITAL: Center     	  0
out2	DIGITAL: Subwoofer  	  0
out3	Headphones          	100:100
out4	DIGITAL: Rear       	  0:0
out5	Front               	  0:0
out6	Center              	  0
out7	Subwoofer           	  0
out9	Rear                	  0:0
out10	AC97 ??             	  0:0
out13	A/D converter (REC) 	100:100

in emuctrl/mixer commands it should be

emuctrl set out5 0 //mute speakers to avoid sound loop
emuctrl set out3 100 //unmute headphones to monitor sound, from playback bus
emuctrl set in6 100 //get sound from AUX2 to playback mix
emuctrl rset in6 100 //get sound from AUX2 to recording mix
emuctrl set out13 100 //get sound from recording mix into recording buffer

mixer rec 100 // set recording mix level

 sox ("rec" command, part of sox package)
 --------------------
rec -V -d /dev/dsp0.0 -f u -r 44100 -s w -c 2 aaa.wav

There are problems with recording of anything other than 16 bit stereo 44.1khz
/48khz. You may get 'record interrupt timeout, channel dead' with some
bitrate/channel count/sample size.

if you have AudigyDrive (and record from Mic2) then you
have to replace
emuctrl set in6 100 //get sound from AUX2 to playback mix
emuctrl rset in6 100 //get sound from AUX2 to recording mix
with
emuctrl set in4 100 //get sound from LineIn2 / Mic2 to playback mix
emuctrl rset in4 100 //get sound from LineIn2 / Mic2 to recording mix

For AC97 mic recording you will have to add
mixer mic 100  //to unmute Ac97 mic
mixer line 0  //mute
mixer cd 0 //mute
mixer line1 0 //mute
mixer phin 0 //mute
mixer phout 0 //mute
mixer video 0 //mute

and replace
emuctrl set in6 100 //get sound from AUX2 to playback mix
emuctrl rset in6 100 //get sound from AUX2 to recording mix
with
emuctrl set in0 100 //get sound from AC97 to playback mix
emuctrl rset in0 100 //get sound from AC97 to recording mix

But, as I know, there is no AC97 codec on some Audigy 2 cards. I don't know
what connector on DSP is connected to mic ADC on this cards and you may need
to do a little  experiment:

1. connect your mic

2. enable 'debug' mode in emuctrl ('emuctrl debug on')

3. for each input listed in 'emuctrl list in' set input volume (not recording
volume!) to 100. Be ready to turn off your speakers (or use headphones) and mic
- you will get a sound loop when you enable correct connector that can damage
your speakers!

Yuriy Tsibizov,
http://chibis.persons.gfk.ru/

p.s. I'm not subscribed to list, please CC me on reply.



More information about the freebsd-multimedia mailing list