If you have any luck please post it here as I still have one of these that I would love to use with my laptop... (replaced it with a delta 44 on the PC due to simmilar frustration...) metafor@xxxxxxx wrote: > hi jason > > i am sorry to tell you, but the quattro is a nightmare > under linux. that's the bad thing, the good is that it's possible > to get it working with jack and quite low latency, between 5-10ms > > i've struggled for a few month until i finally found a solution. > you need to compile a 2.4 low-latency patched kernel, i think > the 2.4.25 is a good choice as it worked for me. and then use > the latest alsa-drivers (not the one from the kernel-source) together > with jack, i took both from cvs, but this was in octobre, so i think > most of the changes are probably already in the official release. > > this worked for me, at least i can use jack now together with > pd and other audio-software, duplex mode is still somehow buggy. > but so far i don't need it. > > for 2.6 kernel i don't know, i just know that in octobre it was not > working. and there are rumours it's still not. but probably someone > on this list knows more about the quattro and 2.6 > > low-latency-kernel-howto: > http://www.djcj.org/LAU/guide/Low_latency-Mini-HOWTO.php3 > > Jason Hanggi wrote: > >> I'm new to this whole linux sound thing, and I'd like >> to get my M-Audio Quattro USB working. sorry if this >> email is a little long, i just want to go ahead and >> put most of my information up now, so you all aren't >> asking for it later. >> >> so far, i can play from XMMS using it's ALSA driver, I >> can send/receive midi data. i can refer to it as >> quattro1, quattro2, etc, as outlined in the standard >> .asoundrc (which i'll put at the end). i haven't even >> touched recording yet >> >> there's two problems i'm having. >> >> 1) when i do a $ aplay --device quattro1 test.wav >> I can hear it, but it's choppy and it get this: >> >> Playing WAVE 'test.wav' : Signed 16 bit Little Endian, >> Rate 44100 Hz, Stereo >> underrun!!! (at least 0.079 ms long) >> underrun!!! (at least 0.038 ms long) >> underrun!!! (at least 0.046 ms long) >> underrun!!! (at least 0.039 ms long) >> ... >> >> same if i just use aplay --device hw:1 >> >> when I try --device quattro I get >> aplay: set_params:837: Channels count non available >> >> the second problem I'm having, is I can't get the >> Quattro to work under JACK. >> If I try duplex mode, I get this in my message window: >> 22:07:32.554 /usr/bin/jackstart -R -dalsa -dhw:1 >> -r48000 -p1024 -n2 -i2 -o2 >> 22:07:32.627 JACK was started with PID=3974 (0xf86). >> back from read, ret = 1 errno == Success >> jackd 0.94.0 >> Copyright 2001-2003 Paul Davis and others. >> jackd comes with ABSOLUTELY NO WARRANTY >> This is free software, and you are welcome to >> redistribute it >> under certain conditions; see the file COPYING for >> details >> loading driver .. >> apparent rate = 48000 >> creating alsa driver ... >> hw:1|hw:1|1024|2|48000|2|2|nomon|swmeter|rt|32bit >> control device hw:1 >> configuring for 48000Hz, period = 1024 frames, buffer >> = 2 periods >> Couldn't open hw:1 for 32bit samples trying 24bit >> instead >> Couldn't open hw:1 for 32bit samples trying 24bit >> instead >> could not start playback (Broken pipe) >> DRIVER NT: could not start driver >> cannot start driver >> 22:07:33.937 JACK was stopped successfully. >> 22:07:35.861 Could not connect to JACK server as >> client. >> >> if I only set for playback, then I get a bunch of >> clicking and a bunch of XRUN callbacks. >> >> if anyone could help me out, I'd really appreciate it. >> thanks! >> >> here's some info: >> >> $ more /proc/asound/cards >> 0 [AudioPCI ]: ENS1371 - Ensoniq AudioPCI >> Ensoniq AudioPCI ENS1371 at >> 0x1080, irq 11 >> 1 [Quattro ]: USB-Audio - USB Audio Quattro >> M Audio USB Audio Quattro at >> usb-00:07.2-2, full speed >> >> $ more .asoundrc >> # quattro1 is pcm0 which has a maximum sample rate of >> 44100 and 16 >> # bit stereo >> >> pcm.quattro1 { >> type hw >> card 1 >> device 0 >> } >> >> ctl.quattro1 { >> type hw >> card 1 } >> >> # quattro2 is pcm1 which has a maximum sample rate of >> 96000 and 24 >> # bit stereo >> >> pcm.quattro2 { >> type hw >> card 1 >> device 1 >> } >> >> ctl.quattro2 { >> type hw >> card 1 } >> >> >> #---- >> >> # >> # compose 4 channels from two channel x two devices, >> hw:2,1 and # hw:2,2 >> # assuming that hw:2,1 and hw:2,2 give the same >> condition, 24_3LE/96k >> # >> >> pcm.quattro { >> type multi; >> >> slaves.a.pcm "hw:1,0"; >> slaves.a.channels 2; >> slaves.b.pcm "hw:1,1"; >> slaves.b.channels 2; >> >> bindings.0.slave a; >> bindings.0.channel 0; >> bindings.1.slave a; >> bindings.1.channel 1; >> bindings.2.slave b; >> bindings.2.channel 0; >> bindings.3.slave b; >> bindings.3.channel 1; >> } >> >> ctl.quattro { >> type hw; >> card 1; >> } >> >> >> # >> # Remap 4 channels as interleaved. >> # Use plug instead of route here, since 24_3LE is >> unlikely supported >> # by applications. >> # >> # arecord -r 44100 -c 4 -f s16_le -D q4 -d 5 >> /home/xxx/q4.wav >> pcm.q4 { >> type plug; >> slave.pcm "quattro"; >> ttable.0.0 1; >> ttable.1.1 1; >> ttable.2.2 1; >> ttable.3.3 1; >> } >> >> >> >> ctl.q4 { >> type hw; >> card 1; >> } >> >> # >> # Use route plugin for applications that do support >> 24_3LE >> # This lowers latency which the plug plugin introduces >> due to # resampling. >> # >> # arecord -r 44100 -c 4 -f s16_le -D q4b -d 5 >> /home/xxx/q41.wav >> >> >> >> pcm.q4b { >> type route; >> slave.pcm "quattro"; >> ttable.0.0 1; >> ttable.1.1 1; >> ttable.2.2 1; >> ttable.3.3 1; >> >> } >> >> ctl.q4b { >> type hw; >> card 1; >> } >> >> >> >> >> >> >