asked Jun 30 '19 at 13:19 by mortoray (73)

Is there an easy way to use multiple ALSA interfaces at the same time?

I know Jack supports this, but the tooling is complex and confusing.

I think jack + alsa_out + alsa_in is currently the easiest way unfortunately (maybe someone else knows something better)

I can recommend Cadence as an easy way to manage your jack session. (it can run at boot and show up as a task-bar icon)

Some help for alsa_out and alsa_in is here:

When I visited I found that the confusing missing piece was what to specify for the -d device option. After some searching, I found aplay -l (install with sudo apt install alsa-utils)

Running aplay -l provides something like the following:

$  aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC221 Analog [ALC221 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Find the card you want to add. In my case, lets say I want to add HDMI 0. The numbers I care about are the 'card' and 'device' numbers - 1 and 3.

The format for devices is hw:[card number],[device number]

Now I can run the following command:

alsa_out -d hw:1,3

Now you should see the output for that card available in bitwig if you're using jack.

The drawback of this approach is that card/device numbers aren't actually stable between sessions on your computer.. so you have to do the whole aplay + alsa_out stuff in the terminal every time you boot your computer or unplug/replug a card. Automating this and putting it into a friendly GUI is possible but I'm not aware of an implementation and haven't taken the time to make one myself.


answered Jul 01 '19 at 23:33 by chriscraws (21)

I guess I'll have to look into Jack some more -- it feels like great tech that never got a good UI. I'm worried that Cadence (KXStudio) appears to be on a development hiatus.

Maybe it's easier to buy an external mixing device that has more ports, then I can just use one ALSA device. :/


answered Jul 02 '19 at 10:14 by mortoray (73)

The latest release of Ubuntu Studio should support hot swapping and simultaneous use of multiple interfaces out of the box. Didn't have time to try this yet though.


answered Jul 05 '19 at 09:28 by Taika-Kim (126)

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported



Asked: Jun 30 '19 at 13:19

Seen: 433 times

Last updated: Jul 05 '19 at 09:28