Good advice. I worked out the following based on your suggestion:
- Built a new kernel (2.6.3-rc4) without alsa or sound. - got the alsa-(kernel,driver,firmware) from cvs, including the symlink to alsa-kernel - built the alsa-drivers like so make clean aclocal autoconf ./configure --with-cards="emu10k1,usb-usx2y" --with-sequencer=yes -with-kernel=/usr/src/linux-2.6.3-rc4 make dep make
- created the devices using snddevices in alsa-drivers - installed the alsa modules with make install-modules
All good. - Then I load the modules -- maybe some that autoloaded, but I haven't checked.
modprobe usbcore modprobe hid modprobe uhci-hcd modprobe usb-midi modprobe snd-pcm-oss modprobe snd-mixer-oss modprobe snd-seq-oss modprobe snd-usb-audio modprobe snd-usb-usx2y
- figured out which usb device the tascam was seen on and ran fxload
lsusb ... Bus 001 Device 007: ID 1604:8007 Tascam ...
ran fxload like so:
fxload -s /usr/local/share/alsa/firmware/usx2yloader/tascam_loader.ihx \ -I /usr/local/share/alsa/firmware/usx2yloader/us122fw.ihx \ -D /proc/bus/usb/001/006
- then usx2yloader and I'm in business:
# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Live [Sound Blaster Live!], device 0: emu10k1 [EMU10K1] Subdevices: 31/32 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 8< 8< 8< Subdevice #30: subdevice #30 Subdevice #31: subdevice #31 card 0: Live [Sound Blaster Live!], device 3: emu10k1 [EMU10K1 FX8010] Subdevices: 8/8 Subdevice #0: subdevice #0 8< 8< 8< Subdevice #7: subdevice #7
**** List of PLAYBACK Hardware Devices **** card 1: USX2Y [TASCAM US-X2Y], device 0: US-X2Y Audio [US-X2Y Audio #0] Subdevices: 1/1 Subdevice #0: subdevice #0
# arecord -l **** List of CAPTURE Hardware Devices **** card 0: Live [Sound Blaster Live!], device 0: emu10k1 [EMU10K1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Live [Sound Blaster Live!], device 1: emu10k1 mic [EMU10K1 MIC] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: Live [Sound Blaster Live!], device 2: emu10k1 efx [EMU10K1 EFX] Subdevices: 1/1 Subdevice #0: subdevice #0 **** List of CAPTURE Hardware Devices **** card 1: USX2Y [TASCAM US-X2Y], device 0: US-X2Y Audio [US-X2Y Audio #0] Subdevices: 1/1 Subdevice #0: subdevice #0
So here I am with alsa apparently recognizing both audio cards, my SB (emu10k1) and my US-122.
However, I can't get them both to be recognized by jack at the same time. If I run jackd specifying -C hw:1, then I can get input form the us-122, but then I don't see the output channels of my SB, so I can't monitor what I'm recording, nor can I play anything back via Ardour.
What I'm trying to do is to have jack see all of the inputs and outputs from both my SB and my US-122.
Can anybody shed any light on how to get jackd to see both cards at the same time?
Thanks.
-Eric.
Frank Barknecht wrote:
Hallo, Eric Berg hat gesagt: // Eric Berg wrote:
I've been trying to get the modules built with no luck. Perhaps you can clarify a few things for me...
First, how did you build the alsa-driver and alsa-kernel cvs packages? Did you copy them into the kernel? The 2.6.x docs suggest that you shoudl copy the alsa-kernel stuff to your linux source dir under the sound directory, but what about the alsa-driver stuff? If I build them in a directory outside of the kernel source tree, all of the modules except the sound mods are deleted - and that usx2y stuff isn't even built at all. That's sort of the essence of the problems that I've run into.
I did no copying at all. First I built a kernel without AlSA or OSS, just basic sound supprt (soundcore). Do not run "make clean" afterwards.
Then I checked out alsa-driver and alsa-kernel into a working
directory. My bash_history shows it like this:
export ALSACVS=':pserver:[EMAIL PROTECTED]:/home/cvsroot/alsa' cvs -d $ALSACVS login cvs -z3 -d $ALSACVS co -P alsa-kernel cvs -z3 -d $ALSACVS co -P alsa-driver cvs -z3 -d $ALSACVS co -P alsa-firmware
You'll have three directories then. Inside alsa-driver alsa-kernel
should be a symlink to "../alsa-kernel like:
(alsa-driver)-$ pwd /builds/alsa-cvs/alsa-driver (alsa-driver)-$ ls -ld alsa-kernel lrwxrwxr-x 1 fbar fbar 14 Jan 31 17:08 alsa-kernel -> ../alsa-kernel
While in alsa-driver follow the instructions in INSTALL, but *don't*
run cvscompile, instead do it by hand:
Compilation from CVS sources ============================
You need GNU packages autoconf and automake installed in your system to compile CVS sources of alsa-driver package.
For compilation you can use these commands:
make ALSAKERNELDIR=../alsa-kernel all-deps (if the alsa-kernel-dir is really there) aclocal autoconf ./configure make dep make
You need do it by hand, because you might want to tell the location of your kernel-sources to configure with: --with-kernel=dir
After that, you can install just the modules with "make install-modules" as root. This will not overwrite your init.d scripts with ALSA's versions, if you already have them, e.g. from your distribution.
This worked for me here. You might want to try some alternatives as
described in the Wiki on alsa.opensrc.org as well, but I didn't have
success with anything else.
ciao
-- Eric Berg [EMAIL PROTECTED] cell: 646-418-3608 tel.: 212-217-2918
------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ Alsa-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-user