I did it with the "
audioadapter" (
4.), all in one qjackctl (Jack2) instance:
The boot sequence of the (PCI/PCIe) sound cards (Audio/MIDI interfaces) is important so that the same prerequisite (sound card sequence) is always given when the computer is started.
1. Define first sound card. What's in the computer:
edit:
Example, take what "/proc/asound/cards" says!
- same drivers :
Code: Select all
options snd-ymfpci index=0
options snd-hda-intel index=1,2
- different drivers:
Code: Select all
options snd-emu10k1 index=0
options snd-via82xx index=1
# Defining the default device >>
https://wiki.archlinux.de/title/Advance ... ult-Device
2. Save settings in alsamixer (as root), make settings for each sound card separately and save them:
3. Programs take certain sound card, edit ~/.asoundrc:
to (
example):
Code: Select all
defaults.ctl.card 0
defaults.pcm.card 0
defaults.timer.card 0
# How to order the numbering of soundcards, if using ALSA drivers? >>
https://wiki.linuxaudio.org/faq/start#q ... sa_drivers
4. Merge multiple sound cards into qjackctl:
A)
Setup > Advanced: "Server Prefix" select "jackd" (old jackdmp), ("H/W Monitor", "H/W Meter",) "Soft Mode", (RT) "Priority (0 - 99)" (
https://linux.die.net/man/1/jackd,
https://manpages.debian.org/buster/jackd2/)
audioadapter:
In qjackctl setting: Setup >> Options >> [X] Run script at startup
Code: Select all
jack_load -i "-d hw:1 -i16 -o16" 9632 audioadapter && jack_bufsize 128 &
-d <-- you want to merge (sound card) (hw:1/hw:0/...)
-i <-- your number of sound card inputs
-o <-- your number of sound card outputs
9632 <-- as you want to call them (jackport name)
# jack_bufsize <-- set the JACK buffer size <== Optional: For safety, possibly not mandatory.
B)
Alsa2jack (MIDI):
install:
Setup >> Options >> [X] Run script after startup
-
# sleep - delay a specified time period
##
((
https://linuxaudio.github.io/libremusic ... -jack.html;
https://web.archive.org/web/20200811001 ... -jack.html;
https://github.com/jackaudio/jackaudio. ... -and-jack2,
https://github.com/jackaudio/jackaudio.github.com/wiki
#
http://bandshed.net/pdf/ AVL2018UserManual.pdf >>
AUDIO & MIDI IN AV LINUX
https://linux.die.net/man/1/jackd,
https://manpages.debian.org/buster/jackd2/,
https://man.archlinux.org/man/a2jmidid.1.en,
https://www.freedesktop.org/wiki/Softwa ... itymodules, #
https://wiki.debian.org/PipeWire#For_JACK
==> Install "a2jmidid" https://github.com/jackaudio/a2jmidid and "pulseaudio-module-jack" https://www.freedesktop.org/wiki/Softwa ... itymodules.)
In qjackctl Setup:
Jack with a2jmidid and pulseaudio:
- Setup >> Settings > Parameters > MIDI Drivers "seq" or "none"
- Setup >> Settings > Advanced > "Server Prefix" select "jackd" https://github.com/jackaudio/jack2/blob/master/README)
- Setup >> Settings > Advanced > [X] Soft Mode
- Setup >> Settings > Advanced > (RT) Priority (0 - 98)
- Setup >> Options > [X] Run script after startup: "pacmd load-module module-jack-source channels=2 && pacmd load-module module-jack-sink channels=2 && sleep 5 && a2j -e -u &" (a2j enables dbus) or "sleep 5 && a2jmidid -e -u &" (without dbus)
- Setup >> Options > [X] Execute script on Shutdown: "pulseaudio --kill"
- Setup >> Options > [X] Execute script after Shutdown: "killall jackd"
- Setup >> Misc > [X] Provide support for ALSA sequencer
Optional:
- Setup >> Settings > Advanced > [X] H/W Monitor
- Setup >> Settings > Advanced > [X] H/W Meter
Jack without pulseaudio:
- Setup >> Options > [X] Execute script at startup: "systemctl --user stop pulseaudio.socket && systemctl --user stop pulseaudio.service"
- Setup >> Options > [X] Run script after shutdown: "killall -9 jackd && systemctl --user start pulseaudio.socket && systemctl --user start pulseaudio.service")
=> In System sounds select the "pulseaudio-module-jack".
https://www.freedesktop.org/wiki/Software/PulseAudio/)