arecord: set_params:1239: Channels count non available

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I keep getting the following error whenever specifying -c 1 or --channels=1, or 
specifying any number of channels less than two channels when using an ASUS 
Essence STX soundcard and recording using the microphone line having a TRS 
jack.  (Whether using the rear or front/case microphone jack.)

$ arecord --device=hw:0,0 --format S16_LE --rate 44100 -c1 /tmp/test.wav

arecord: set_params:1239: Channels count non available

It would appear the snd_virtuoso driver is hard-coded to always record both 
left and right channels even though when a TRS jack is inserted.

If I'm not mistaken, the jacks are wired to detect when a TS or TRS phone jack 
is inserted.  Upon insertion of a TS jack, both left and right channels are 
present with no (5 volt) line voltage present and a line input source is 
asserted.

When a TRS phono jack is inserted; left, right, and 5 volt line voltage is 
present and a microphone is then asserted as the source of input.

(It's very likely this hardware does have integral TS/TRS female jack inputs, 
but I have not confirmed this.)

Some Possibilities:

1) The snd_virtuoso driver is hard coded to only provide Line Input, or left 
and right channels?

2) The snd_virtuoso driver isn't allowing, or arecord isn't allowing to only 
record the Left Channel, as a mono input source is usually assumed?

3) Dot .asoundrc file has been removed, and the error persists when using 
defaults.

4) Also notice the "Channels count non available" error should read, "Channel 
count not available"


=== Attempt to Hack Around Problem ===

Trying to use "--separate-channels", but the error still persists with trying
to record anything less than one channel.

I've also tried to hack around this issue with channel mapping, only having 
arecord record the left channel, but I'm haven't checked the correctness of 
this configuration.

# Still can't record just mono!
#pcm_slave.mono {
#    type route table {
#        # Copy both input channels to output channel 0 (Left).
#        0.0 1
#        1.0 1
#        # Send nothing to output channel 1 (Right).
#        0.1 0
#        1.1 0
#    }
#}

$ arecord -D mono --device=hw:0,0 -f S16_LE -c1 /tmp/test.wav -v



-- 
Roger
http://rogerx.freeshell.org/

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user




[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux