Subject: Recording audio produces only hiss (clct0)
To: None <netbsd-help@netbsd.org>
From: Brian de Alwis <bsd@cs.ubc.ca>
List: netbsd-help
Date: 07/13/2004 16:57:56
I've been trying to get audio recording working properly, with no
success.  Looking through the mail archives, I don't appear to be
the only one.  I'm hoping somebody here can provide me a clue,
cause this works fine under Windows.

I have a laptop with a clct (dmesg follows;
lines wrapped):

    clct0 at pci0 dev 8 function 0: Cirrus Logic CS4281 CrystalClear
	Audio Interface (rev. 0x01)
    clct0: interrupting at irq 10
    clct0: ac97: Crystal CS4297A codec; headphone, 20 bit DAC, 18 bit ADC,
	Crystal Semi 3D
    clct0: ac97: ext id 200<AMAP>
    audio0 at clct0: full duplex, independent

    NetBSD slab 2.0_BETA NetBSD 2.0_BETA (GENERIC_LAPTOP) #0: Fri Jun 25 19:01:50 UTC 2004  autobuild@tgm.netbsd.org:/autobuild/netbsd-2-0/i386/OBJ/autobuild/netbsd-2-0/src/sys/arch/i386/compile/GENERIC_LAPTOP i386

My mixerctl settings have mutes off for everything, and all volumes
are >= 191.

Plain old audiorecord fails:

    $ audiorecord foo.wav
    audiorecord: failed to set audio info: Invalid argument

Recording from /dev/audio seems to do something:

    $ audiorecord -d /dev/audio -t 0:05 foo.wav

But playing it back with audioplay just produces white noise -- it
has some vague pulsing pattern, but it's still just hiss.  I've tried
the mic and line inputs.

I did notice at one point last night that, during a 5 second sample,
my test appeared very momentarily in the middle.  But it was not
clear -- or what I expected.

I've tried using the audio/xwave and audio/dap packages, and they
can't get anything better.

Ideas?   I've attached my `mixerctl -a' and `audioctl -a' settings
below.  Thanks.

Brian.

$ mixerctl -a | sort
inputs.aux.mute=off
inputs.aux=191,191
inputs.cd.mute=off
inputs.cd=191,191
inputs.dac.mute=off
inputs.dac=191,191
inputs.line.mute=off
inputs.line=191,191
inputs.mic.mute=off
inputs.mic.preamp=off
inputs.mic.source=mic0
inputs.mic=191
inputs.phone.mute=off
inputs.phone=191
inputs.speaker.mute=off
inputs.speaker=255
inputs.video.mute=off
inputs.video=191,191
outputs.headphones.mute=off
outputs.headphones=255,255
outputs.master.mute=off
outputs.master=207,207
outputs.mono.mute=off
outputs.mono.source=mixerout
outputs.mono=255
outputs.spatial.center=0
outputs.spatial.depth=0
outputs.spatial=off
record.source=mic
record.volume.mute=off
record.volume=192,192


$ audioctl -a | sort
blocksize=16384
config=cs4281
encodings=ulinear:8,mulaw:8*,alaw:8*,slinear:8,slinear_le:16,ulinear_le:16,slinear_be:16,ulinear_be:16
full_duplex=0
fullduplex=0
hiwat=4
lowat=1
mode=
monitor_gain=0
name=CS4281
play.active=0
play.avail_ports=0x0
play.balance=32
play.buffer_size=65536
play.channels=1
play.encoding=mulaw
play.eof=0
play.error=0
play.gain=207
play.open=0
play.pause=0
play.port=0x0
play.precision=8
play.rate=8000
play.samples=0
play.seek=0
play.waiting=0
properties=full_duplex,independent
record.active=0
record.avail_ports=0x7
record.balance=32
record.buffer_size=65536
record.channels=1
record.encoding=mulaw
record.eof=0
record.error=0
record.errors=0
record.gain=192
record.open=0
record.pause=0
record.port=0x1
record.precision=8
record.rate=8000
record.samples=0
record.seek=0
record.waiting=0
version=


-- 
     Brian de Alwis | Graduate student | Software Practices Lab | UBC
"There is much pleasure to be gained in useless knowledge." - Bertrand Russell