Problems with .asoundrc and jack
Posted: Tue Feb 28, 2012 8:51 pm
Hello! I have problems running jack with a virtual Alsa device I created in .asoundrc file. Here's a bit of background:
I have Maudio Torq Xponent dj midi controller / sound card. I use it with Mixxx dj software on UbuntuStudio x64 on a Intel Core2Duo E7200 PC. I wanted to use Mixxx through Jack so I could connect it to other programs.
The problem is that Xponent soundcard's two output stereo channels appears in Alsa as two two-channels devices and not a single multichannel device, so I can't use both outputs with qjackctl.
So I created an .asoundrc file in my home directory with this content I found on some documentation, to create a virtual 4 channel device to use with qjackctl:
Xponent's soundcard is hw:1 with hw:1,0 and hw:1,1 devices. Then I try to use virtual device ttable with qjackctl, and get the following errors:
Then qjackctl hangs showing the message "stopping".
ttable virtual device works fine if I use it directly with Mixxx.
Can someone give me a clue about what's wrong? Thanks for reading.
I have Maudio Torq Xponent dj midi controller / sound card. I use it with Mixxx dj software on UbuntuStudio x64 on a Intel Core2Duo E7200 PC. I wanted to use Mixxx through Jack so I could connect it to other programs.
The problem is that Xponent soundcard's two output stereo channels appears in Alsa as two two-channels devices and not a single multichannel device, so I can't use both outputs with qjackctl.
So I created an .asoundrc file in my home directory with this content I found on some documentation, to create a virtual 4 channel device to use with qjackctl:
Code: Select all
# create a virtual four-channel device with two sound devices:
# This is in fact two interleaved stereo streams in
# different memory locations, so JACK will complain that it
# cannot get mmap-based access. see below.
pcm.multi {
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;
}
# JACK will be unhappy if there is no mixer to talk to, so we set
# this to card 0. This could be any device but 0 is easy.
ctl.multi {
type hw;
card 1;
}
# This creates a 4 channel interleaved pcm stream based on
# the multi device. JACK will work with this one.
pcm.ttable {
type route;
slave.pcm "multi";
slave.channels 4;
ttable.0.0 1;
ttable.1.1 1;
ttable.2.2 1;
ttable.3.3 1;
}
# see above.
ctl.ttable {
type hw;
card 1;
}
Code: Select all
21:11:10.191 Patchbay deactivated.
21:11:10.198 Statistics reset.
21:11:10.205 ALSA connection change.
21:11:10.218 D-BUS: Service is available (org.jackaudio.service aka jackdbus).
Cannot connect to server socket err = El fitxer o directori no existeix
Cannot connect to server socket
jack server is not running or cannot be started
21:11:10.232 ALSA connection graph change.
21:15:58.853 D-BUS: JACK server is starting...
Cannot connect to server socket err = El fitxer o directori no existeix
Cannot connect to server socket
jack server is not running or cannot be started
21:15:58.863 D-BUS: JACK server was started (org.jackaudio.service aka jackdbus).
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: driver "alsa" selected
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Saving settings to "/home/ferran/.config/jack/conf.xml" ...
Tue Feb 28 21:15:58 2012: Starting jack server...
Tue Feb 28 21:15:58 2012: JACK server starting in realtime mode with priority 85
Tue Feb 28 21:15:58 2012: [1m[31mERROR: Cannot lock down memory area (Cannot allocate memory)[0m
Tue Feb 28 21:15:58 2012: Acquired audio card Audio1
Tue Feb 28 21:15:58 2012: creating alsa driver ... ttable|ttable|512|2|44100|0|4|nomon|swmeter|-|32bit
Tue Feb 28 21:15:58 2012: [1m[31mERROR: ALSA: Cannot open PCM device alsa_pcm for capture. Falling back to playback-only mode[0m
Tue Feb 28 21:15:58 2012: configuring for 44100Hz, period = 512 frames (11.6 ms), buffer = 2 periods
Tue Feb 28 21:15:58 2012: ALSA: final selected sample format for playback: 16bit little-endian
Tue Feb 28 21:15:58 2012: ALSA: use 2 periods for playback
Tue Feb 28 21:15:58 2012: [1m[31mERROR: Abort![0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_signo = 6[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_errno = 0[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: Segmentation Fault![0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_signo = 11[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_errno = 0[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_code = 1 (SEGV_MAPERR)[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: info.si_addr = 0x52524543[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[00] = 0x00007faa3b2b7e48[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[01] = 0x00007faa3b2b8278[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[02] = 0x00000000ffffc000[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[03] = 0x0000000000000246[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[04] = 0x00007faa3b2b8278[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[05] = 0x00000000004118ac[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[06] = 0x0000000000000014[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[07] = 0x0000000052524543[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[08] = 0x0000000052524543[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[09] = 0x00000000004118be[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[10] = 0x00007faa3b2b7f70[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[11] = 0x00007faa3b2b7f80[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[12] = 0x0000000000000018[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[13] = 0x0000000000000000[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[14] = 0xffffffffffffffff[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[15] = 0x00007faa3b2b7940[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[16] = 0x00007faa3a05b1a4[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[17] = 0x0000000000010286[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[18] = 0x0000000000000033[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[19] = 0x0000000000000004[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[20] = 0x000000000000000e[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[21] = 0x0000000000005a27[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: reg[22] = 0x0000000052524543[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: Stack trace:[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: 1: 0x7faa3a05b1a4 <_IO_vfprintf+7348> (/lib/x86_64-linux-gnu/libc.so.6)[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: 2: 0x7faa3a108d90 <__vsnprintf_chk+176> (/lib/x86_64-linux-gnu/libc.so.6)[0m
Tue Feb 28 21:15:58 2012: [1m[31mERROR: End of stack trace[0m
21:16:01.090 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info.
21:16:01.182 D-BUS: JACK server is stopping...
Cannot connect to server socket err = El fitxer o directori no existeix
Cannot connect to server socket
jack server is not running or cannot be started
Tue Feb 28 21:16:01 2012: ------------------
Tue Feb 28 21:16:01 2012: Controller activated. Version 1.9.7 (4236) built on Wed Sep 28 09:44:42 2011
Tue Feb 28 21:16:01 2012: Loading settings from "/home/ferran/.config/jack/conf.xml" using expat_2.0.1 ...
Tue Feb 28 21:16:01 2012: setting engine option "driver" to value "alsa"
Tue Feb 28 21:16:01 2012: driver "alsa" selected
Tue Feb 28 21:16:01 2012: setting engine option "realtime" to value "true"
Tue Feb 28 21:16:01 2012: setting engine option "realtime-priority" to value "85"
Tue Feb 28 21:16:01 2012: setting engine option "verbose" to value "false"
Tue Feb 28 21:16:01 2012: setting engine option "client-timeout" to value "500"
Tue Feb 28 21:16:01 2012: setting for driver "netone" found
Tue Feb 28 21:16:01 2012: setting for driver "alsa" found
Tue Feb 28 21:16:01 2012: setting driver option "device" to value "ttable"
Tue Feb 28 21:16:01 2012: setting driver option "rate" to value "44100"
Tue Feb 28 21:16:01 2012: setting driver option "period" to value "512"
Tue Feb 28 21:16:01 2012: setting driver option "nperiods" to value "2"
Tue Feb 28 21:16:01 2012: setting driver option "hwmon" to value "false"
Tue Feb 28 21:16:01 2012: setting driver option "hwmeter" to value "false"
Tue Feb 28 21:16:01 2012: setting driver option "duplex" to value "false"
Tue Feb 28 21:16:01 2012: setting driver option "softmode" to value "false"
Tue Feb 28 21:16:01 2012: setting driver option "monitor" to value "false"
Tue Feb 28 21:16:01 2012: setting driver option "dither" to value "n"
Tue Feb 28 21:16:01 2012: setting driver option "outchannels" to value "4"
Tue Feb 28 21:16:01 2012: setting driver option "shorts" to value "false"
Tue Feb 28 21:16:01 2012: setting for driver "firewire" found
Tue Feb 28 21:16:01 2012: setting for driver "loopback" found
Tue Feb 28 21:16:01 2012: setting for driver "dummy" found
Tue Feb 28 21:16:01 2012: setting for driver "net" found
Tue Feb 28 21:16:01 2012: setting for internal "netadapter" found
Tue Feb 28 21:16:01 2012: setting for internal "netmanager" found
Tue Feb 28 21:16:01 2012: setting for internal "audioadapter" found
Tue Feb 28 21:16:01 2012: setting for internal "profiler" found
Tue Feb 28 21:16:01 2012: Listening for D-Bus messages
Tue Feb 28 21:16:01 2012: Ignoring JACK server stop request because server is already stopped.ttable virtual device works fine if I use it directly with Mixxx.
Can someone give me a clue about what's wrong? Thanks for reading.