Syncing multifaces in jack1

Talk about your MIDI interfaces, microphones, keyboards...

Moderators: MattKingUSA, khz

Post Reply
sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Syncing multifaces in jack1

Post by sonicolonic »

Ok, back after a slight hiatus. Got myself 2 RME Multifaces, sync'd up via spdif for now, but how do I get jack1 to see all of the channels? Do I still have to monkey around with an .asoundrc? Thanks.

~b

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

I know I hastily jumped to a solution (and posted about) having to use an .asoundrc after everything else I've tried, but after a brief attempt, I couldn't compile jack on Karmic to get alsa_in/alsa_out because there's already a jack install there... won't let me ./configure. Might've not have the right source, but even attempting it with the right source on my Lucid at home, same problem. Thoughts? I'd like to try everything I can with jack1 before I mess with jack2.

~b

Pablo
Established Member
Posts: 1270
Joined: Thu Apr 17, 2008 9:57 pm

Re: Syncing multifaces in jack1

Post by Pablo »

Hi,

Yes, the configure script checks if there is a previous jack install. It it finds "libjack.so.*" in /usr/lib, /usr/local/lib or /opt/lib, it stops. But you can simply uninstall the jackd package because it is a dependency of many apps.

I don't know how to solve this in a cleaner way than manually deleting /usr/lib/libjack.so* and then build and install jack with prefix /usr

Cheers! Pablo

User avatar
raboof
Established Member
Posts: 1727
Joined: Tue Apr 08, 2008 11:58 am
Location: Deventer, NL
Contact:

Re: Syncing multifaces in jack1

Post by raboof »

Pablo wrote:the configure script checks if there is a previous jack install. It it finds "libjack.so.*" in /usr/lib, /usr/local/lib or /opt/lib, it stops. But you can't simply uninstall the jackd package because it is a dependency of many apps.
If you're using a Debian-based distro (like Ubuntu), you can create an 'equivs' package. Installing an equivs package basically tells the package manager "i'll take care of installing this software myself, you can consider this dependency fulfilled".

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

... huh.... wacky.

Thought I'd been able to make alsa_in/alsa_out before, but maybe that was when I was in between jack1 and jack2 last time I really tried this.

Pablo, you mean "can't" correct?

~b

Pablo
Established Member
Posts: 1270
Joined: Thu Apr 17, 2008 9:57 pm

Re: Syncing multifaces in jack1

Post by Pablo »

Pablo, you mean "can't" correct?
Yes, I meant "you can't simply uninstall the jackd package..." as raboof quoted me. But then I didn't know of equivs. Thanks for the suggestion!

Cheers! Pablo

TraumFlug
Established Member
Posts: 16
Joined: Sat Dec 26, 2009 2:07 am

Re: Syncing multifaces in jack1

Post by TraumFlug »

just one sidenote, with a complete "imHo" mark...

alsa_in and alsa_out do resample the added devices afaik...so does jack2's audioadapter...the whole point of doing that is that unsynced soundcards drift, and need to be matched on time axis to be in "artificial" virtual sync. quality is lost in resampling, expecially in the high frequencies...

so why you try to use those instead of a joint alsa-device (.asoundrc, /etc/asound.conf), when the soundcards are synced by hardware already??? c'mon, creating a virtual alsa-device with channels of both cards isn't that hard, and a rme card really deserves not being resampled by alsa_in/out, 'cause I guess even when both cards are in sync by hardware the cheap resampling algorithm will kill a little quality. would have to look at the sources to really not only guess but know...

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

I couldn't agree more...

Just show me a working .asoundrc and I'll believe it's not that hard. I'll admit I'm a noob, but I'm not sitting around twiddling my thumbs here, but even with my old pair of soundcards I never wrote a working .asoundrc .

I feel like if it were that easy someone should add it to any number of the wiki's that exist on the subject instead of just having working partial examples, especially for, like you said, such a nice and popular piece of hardware from a company that's reached out to the linux community.

~b

TraumFlug
Established Member
Posts: 16
Joined: Sat Dec 26, 2009 2:07 am

Re: Syncing multifaces in jack1

Post by TraumFlug »

sorry, I might have sounded a bit too enthusiastically above. of course I don't have 2 rme's sitting around here to check it out myself, and didn't properly disconnect my computer from the internet before looking too deep into a bottle of wine - I just wanted to point out it'd be better to try a joint alsa-device first because of the quality, etc blabla :oops: :roll:

but it really isn't so very hard to try out...I mean the rme seems like the most complex soundcard ever supported by linux, and has lots of design specialities and such. for example the asoundrc stuff seems to need the correct number of channels the driver currently has (and the hdsp seems to actually change the number of channels the driver exposes depending on the samplefrec and some option in the mixer to use less channels), and I really have no clue on how to find that number, and what the individual channels are actually good for...anyone here?

also there's reports that synced cards (also the ice1712 ones) kind of run with linux, but cast enourmous xruns, while others report it works...

here's explained how to tailor somekind of asoundrc to join devices, also with an example for an rme card: http://www.alsa-project.org/main/index. ... el_devices. of course it needs to be modified for your setup, I fear, but might be a good starting point...

sorry if I'm no real help for you!

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

Haha, no worries, I knew what you were getting at, and the asoundrc has always been my first course of action, but I've definitely looked at that example before and the one in the alsa wiki for the hdsp module, so I'm just going to give that another try. I just want alsa_in and alsa_out to work to show me I can get them both running so I stay motivated to keep trying the asoundrc.

To whom it may concern, Happy Turkey day folks,

Gobble! Gobble!

~b

User avatar
pneuman
Established Member
Posts: 10
Joined: Sat Oct 16, 2010 11:00 am
Location: Melbourne, Australia
Contact:

Re: Syncing multifaces in jack1

Post by pneuman »

If you want to install JACK1 from source over the top of your distro packages, you just need to make sure you specify the same install prefix that the packages use when you're configuring the build, like this:

./configure --prefix=/usr

The configure script stops you otherwise in an attempt to make sure you don't end up with two copies of JACK installed (ie: an install from packages in /usr, and an install from source in /usr/local), but if you configure JACK to install right over the top of the packaged installation, it should work just fine. I've been doing this myself to run JACK1 from SVN on my Ubuntu 10.10 system to play with Ardour 3 from SVN.

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

Still ends with errors. Getting really discouraged... starting to believe it can't be done. I imagine if it was possible and being done, it'd be big news, somewhere, and I just don't see/hear of anyone doing it.

Looking into other possibilities... don't know if this makes sense, but what about routing digital outs from one into the other?

~b

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Update

Post by sonicolonic »

Update here... I've got an RME Multiface and a Nuendo Audiolink. here. Finally reinstalled UbuntuStudio 8.04 to get stable realtime functionality. So far it's been pretty dern stable and low latency. I installed jack 0.116.x along side whatever jack version comes with Hardy, and that is working fine. What I find is I still can't get alsa_in/alsa_out to work with my RME cards. I can add the onboard soundcard np but trying to add the other RME card gets me one of these two errors:

Code: Select all

sonicolonic@brobri:~$ ./alsa_out -d hw:0
Capture open error: Device or resource busy
lt-alsa_out: pcm.c:976: snd_pcm_delay: Assertion `pcm' failed.
Aborted
sonicolonic@brobri:~$ ./alsa_out -d hw:3
Access type not available for playback: Invalid argument
Setting of hwparams failed: Invalid argument
lt-alsa_out: pcm.c:976: snd_pcm_delay: Assertion `pcm' failed.
Aborted
here's this too...

Code: Select all

sonicolonic@brobri:~$ cat /proc/asound/cards
 0 [DSP            ]: H-DSP - Hammerfall DSP
                      RME Hammerfall DSP + Multiface at 0xfdae0000, irq 21
 1 [Finger         ]: USB-Audio - USB Trigger Finger
                      M-Audio USB Trigger Finger at usb-0000:00:12.1-2, full speed
 2 [SB             ]: HDA-Intel - HDA ATI SB
                      HDA ATI SB at 0xfe024000 irq 19
 3 [DSP_1          ]: H-DSP - Hammerfall DSP
                      RME Hammerfall DSP + Multiface at 0xfdad0000, irq 22
I want to set the soundcard indexes so they're persistent across reboots, but seeing as they use the same driver, I'm not sure how to specify which actual device should be where. That's a minor detail right now.

What I HAVE been able to do is sync the RME's via coax spdif, and send the adat outs of one card into the other using HDSPmixer. When synced they seem to work fine, though I've only tested this once @96k, so the second card isn't a complete waste. Maybe I'll just record big sessions at 48k.

Thoughts?

Pablo
Established Member
Posts: 1270
Joined: Thu Apr 17, 2008 9:57 pm

Re: Syncing multifaces in jack1

Post by Pablo »

I can add the onboard soundcard np but trying to add the other RME card gets me one of these two errors:
What is the output of "arecord -l" and "aplay -l"?

I want to set the soundcard indexes so they're persistent across reboots, but seeing as they use the same driver, I'm not sure how to specify which actual device should be where
You don't need to. Just use names, not numbers, in alsa_in/out and qjackctl. Write them down, as they don't appear in drop down menus in qjackctl. In your case:

hw:DSP
hw:Finger
hw:SB
hw:DSP_1

To specify a device other than 0 (cards may have more than one device), type "hw:name,y" where y is a number. Afaik, "hw:name" implies "hw:name,0". See arecord -l and aplay -l.

Cheers, Pablo

sonicolonic
Established Member
Posts: 50
Joined: Sat Aug 08, 2009 6:32 am

Re: Syncing multifaces in jack1

Post by sonicolonic »

Code: Select all

sonicolonic@brobri:~$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: DSP [Hammerfall DSP], device 0: RME Hammerfall DSP + Multiface [RME Hammerfall DSP + Multiface]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 2: SB [HDA ATI SB], device 0: ALC883 Analog [ALC883 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: SB [HDA ATI SB], device 1: ALC883 Digital [ALC883 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: SB [HDA ATI SB], device 2: ALC883 Analog [ALC883 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 3: DSP_1 [Hammerfall DSP], device 0: RME Hammerfall DSP + Multiface [RME Hammerfall DSP + Multiface]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
sonicolonic@brobri:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: DSP [Hammerfall DSP], device 0: RME Hammerfall DSP + Multiface [RME Hammerfall DSP + Multiface]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 2: SB [HDA ATI SB], device 0: ALC883 Analog [ALC883 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: SB [HDA ATI SB], device 1: ALC883 Digital [ALC883 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 3: DSP_1 [Hammerfall DSP], device 0: RME Hammerfall DSP + Multiface [RME Hammerfall DSP + Multiface]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
I see what you're saying. Tried using names, same errors. Persistent soundcard indexing across boots means I don't have to adjust jack when things get shuffled, like I said, minor detail.

~b

Post Reply