On 04/02/14 19:08, pe...@easthope.ca wrote:
peter@dalton:~$ cat /proc/asound/cards
0 [SI7012 ]: ICH - SiS SI7012
SiS SI7012 with ALC655 at irq 18
1 [NX6000 ]: USB-Audio - MicrosoftB. LifeCam NX-6000
Microsoft MicrosoftB. LifeCam NX-6000 at
usb-0000:00:03.3-
8, high speed
2 [Set ]: USB-Audio - C-Media USB Headphone Set
C-Media USB Headphone Set at usb-0000:00:08.0-3, full
spee
d
3 [Device ]: USB-Audio - C-Media USB Audio Device
C-Media USB Audio Device at usb-0000:00:03.2-1, full
speed
Since your two USB devices are of different types, they should have
different USB device ids. You've used these ids before while writing
your udev rules? Following the documentation at
<http://www.opensrc.org/MultipleCards>
should yield the solution, then:
<quote>
Ordering multiple cards of the same type
If you have more that one sound cards which use the same modules, you
may want to define the card order. This can be done by specifying index
and ID options to the module being loaded. For example,
options snd-usb-audio index=1,2 vid=0x0ccd,0x0d8c pid=0x0028,0x000c
This will define 2 usb sound cards, the first one at index=1, vid=0x0ccd
and pid=0x0028; the second one at index=2, vid=0x0d8c and pid=0x000c.
The vid and pid here were discovered using lsusb.
The documentation may not be entirely up to date and comprehensive. The
command
modinfo -p ${modulename}
shows a current list of all parameters of a loadable module.
Example:
# modinfo -p snd-usb-audio
ignore_ctl_error:Ignore errors from USB controller for mixer interfaces.
device_setup:Specific device setup (if needed).
async_unlink:Use async unlink mode.
nrpacks:Max. number of packets per URB.
pid:Product ID for the USB audio device.
vid:Vendor ID for the USB audio device.
enable:Enable USB audio adapter.
id:ID string for the USB audio adapter.
index:Index value for the USB audio adapter.
In this case, the pid and vid options from lsusb can be used.
</quote>
I've only got one USB sound device, a Cambridge Audio DacMagic100, usb
vendor id:product id 22e8:dac3
If I just plug it in, the snd-usb-audio module gets loaded, and the
extra card shows up like this:
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC269 Digital [ALC269 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: C1 [Cambridge Audio DAC100 USB 1], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
Now, editing /etc/modprobe.d/alsa-base.conf to include (**):
options snd-hda-intel index=1
options snd-usb-audio index=0 vid=0x22e8 pid=0xdac3
#options snd-usb-audio index=-2 # this line commented out
and restarting alsa (*)
$ sudo alsa reload
changes the sound device ordering, and makes it predictable between reboots:
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: C1 [Cambridge Audio DAC100 USB 1], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Intel [HDA Intel], device 0: ALC269 Analog [ALC269 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Intel [HDA Intel], device 1: ALC269 Digital [ALC269 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
HTH
----
(*) I struggeled to get alsa to reload the config file, and had to kill
pulseaudio first. Mind you, pulseaudio automatically spawns a new
instance after being killed, and to prevent this I edited
/etc/pulse/client.conf:
autospawn = no
(**) What happens when the USB audio device is not present at boot? By
assigning the built-in Intel device index != 0, this solution should be
stable.
--
Klaus
--
To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/52f2323c.8050...@gmail.com