2026 Migration to Pipewire + BitWig.

This commit is contained in:
2026-06-10 14:16:02 -05:00
parent ee169b0e01
commit a75257a7b0
39 changed files with 256 additions and 1236 deletions
+174
View File
@@ -0,0 +1,174 @@
# Music Production Setup
This repository holds scripts, patch banks, sound resources, and notes for a
Linux-based music production setup.
The current direction is a PipeWire-based system centered around Bitwig Studio.
Older QJackCtl patchbay files, Jack Rack presets, and JACK startup/recording
scripts are being removed from the working tree, but the migration is recorded
below so the old setup can still be recovered from Git history.
## Current Contents
- `scripts/set-pipewire-latency.sh` - helper for checking, forcing, and clearing
PipeWire graph quantum/rate metadata.
- `sounds.txt` - notes about useful electric piano, piano, brass, pad, organ,
string, mallet, and synth sounds.
- `soundfounts/` - archived SoundFont resources.
- `yoshimi-patches/` - archived Yoshimi banks and patch collections.
## PipeWire And Bitwig Studio
The new setup should prefer PipeWire as the shared audio graph instead of
manually starting JACK through QJackCtl profiles and wiring sessions with
QJackCtl patchbays.
For standalone low-latency work outside the DAW, use:
```sh
scripts/set-pipewire-latency.sh status
scripts/set-pipewire-latency.sh on 128 48000
scripts/set-pipewire-latency.sh off
```
The script writes PipeWire settings metadata with `pw-metadata -n settings`.
`on` defaults to a quantum of `128` at `48000` Hz, which is about 2.7 ms per
block. `off` clears `clock.force-quantum` and `clock.force-rate` so PipeWire
can return to normal behavior.
This override is not expected to be necessary when working in Bitwig Studio.
Bitwig is the DAW for the new workflow, so latency should normally be handled
inside that DAW/session rather than forced globally through this helper.
## Legacy JACK Migration Notes
The mainline branch in this checkout is named `main`. At the time these
legacy files were staged for deletion, the current `main` / `origin/main`
commit was:
```text
ee169b0e013496b177195a6719295b40f9c932dd
```
That commit is the last mainline commit where the old QJackCtl, Jack Rack, and
script-based JACK workflow is available. To inspect one of the removed files:
```sh
git show ee169b0e013496b177195a6719295b40f9c932dd:<path>
```
### Files Staged For Deletion
```text
jack-rack-presets/home/fender-jazz
jack-rack-presets/home/headphones
jack-rack-presets/home/sr505zw
jack-rack-presets/newlife/bass2
jack-rack-presets/newlife/drums
jack-rack-presets/newlife/headphones
jack-rack-presets/newlife/headphones2
jack-rack-presets/newlife/m48-mix
jack-rack-presets/newlife/yamaha-trb
jack-rack-presets/onboard/headphones
jack-rack-presets/onboard/sg200
jack-rack-presets/onboard/sr505zw
jack-rack-presets/onboard/yamaha-trb
qjackctl-routing-settings/FastTrack-Practice.xml
qjackctl-routing-settings/K6-Bass+System.xml
qjackctl-routing-settings/church-eq-bass-with-synth.xml
qjackctl-routing-settings/church-eq-mix-ears-only.xml
qjackctl-routing-settings/church-eq-mix-splitchannel-with-headphone-mix.xml
qjackctl-routing-settings/church-eq-mix-splitchannel.xml
qjackctl-routing-settings/church-eq-mix.xml
qjackctl-routing-settings/church-eq-two-bass-setup.xml
qjackctl-routing-settings/keyboard-qsynth.xml
qjackctl-routing-settings/maudio-fasttrack.xml
qjackctl-routing-settings/onboard.xml
qjackctl-routing-settings/studio.xml
scripts/nl-prepare-raw-files-synth.sh
scripts/nl-prepare-raw-files.sh
scripts/nl-rec
scripts/nl-rec-1
scripts/nl-rec-service
scripts/nl-rec-service-synth
scripts/nl-split-rec
scripts/start-church-session
scripts/start-church-session-bass-with-synth
scripts/start-church-session-two-bassists
scripts/start-home-session
scripts/start-onboard-session
```
### Jack Rack Presets
The `jack-rack-presets/` files were gzip-compressed Jack Rack XML presets at
48 kHz. They store LADSPA plugin IDs, enabled/disabled state, wet/dry settings,
and raw control values.
- `home/` contained home practice chains for Fender Jazz bass, SR505ZW bass,
and headphones.
- `onboard/` contained onboard audio chains for headphones, SG200, SR505ZW,
and Yamaha TRB bass.
- `newlife/` contained New Life church chains for Yamaha TRB bass, a second
bass, M48 mix, drums, and one or two headphone mixes.
The bass presets were mono chains for instrument tone/level processing. The
headphone, M48, and drum presets were stereo or monitor-oriented chains used by
the old patchbay and session launcher scripts.
### QJackCtl Patchbays
The `qjackctl-routing-settings/` XML files were QJackCtl patchbay definitions.
They described JACK and MIDI clients, expected ports, and cables to restore
session routing.
- `FastTrack-Practice.xml` routed a FastTrack practice setup with bass through
Jack Rack, Hydrogen, QSynth, PulseAudio JACK sink/source, and meters.
- `K6-Bass+System.xml` routed a Komplete Audio 6 setup with Jack Rack,
PulseAudio JACK, zita-at1, bridge meters, and MIDI control.
- `maudio-fasttrack.xml` routed FastTrack bass/headphones/QSynth practice use,
including zita-at1, meters, and a JACK-to-ALSA MIDI bridge.
- `keyboard-qsynth.xml` connected Oxygen 61 and jack-keyboard MIDI into
QSynth, with system and PulseAudio JACK audio routing.
- `onboard.xml` connected QSynth, MDA ePiano, jack-keyboard, Alesis Recital,
LPK25, a2j/ALSA MIDI, PulseAudio JACK, and headphone routing.
- `studio.xml` routed a studio setup with bass, mic, MDA ePiano, Alesis
Recital, LPK25, meter ports, and system outputs.
- `church-eq-mix.xml`, `church-eq-mix-ears-only.xml`,
`church-eq-mix-splitchannel.xml`,
`church-eq-mix-splitchannel-with-headphone-mix.xml`,
`church-eq-two-bass-setup.xml`, and
`church-eq-bass-with-synth.xml` described New Life church routings for bass,
M48 mix/drum feeds, monitors, meters, tuner input, second-bass variants, and
synth/MDA ePiano variants.
### Legacy Scripts
The removed scripts were tightly coupled to JACK client names, QJackCtl
profiles, Jack Rack session names, and specific capture/playback ports.
- `start-home-session` started QJackCtl profile `Onboard48K`, loaded home bass
and headphone Jack Rack presets, and started `j2amidi_bridge`.
- `start-onboard-session` started QJackCtl profile `Onboard48K` and loaded
onboard Yamaha TRB and headphone Jack Rack presets.
- `start-church-session` started QJackCtl profile `Church48K`, loaded New Life
bass, M48 mix, drums, and headphone Jack Rack presets, started `meterbridge`,
and ran `devilspie`.
- `start-church-session-bass-with-synth` extended the church session with
`yoshimi`, `a2jmidid`, and separate bass/M48 meter bridges.
- `start-church-session-two-bassists` extended the church session with second
bass and second headphone Jack Rack chains plus separate meters.
- `nl-rec` recorded three JACK capture ports with `jack_capture`.
- `nl-rec-1` recorded the sermon channel from `system:capture_3`.
- `nl-rec-service` recorded worship, sermon, and altar files from the church
capture ports.
- `nl-rec-service-synth` recorded the same service files while also capturing
Yoshimi left/right outputs.
- `nl-split-rec` split one `.wavex` file into M48, drums, and bass WAV files.
- `nl-prepare-raw-files.sh` split `worship.wavex` and `altar.wavex` into M48,
drums, and bass WAV files with `ffmpeg`.
- `nl-prepare-raw-files-synth.sh` did the same split while also extracting
synth left/right WAV files.
These files document the old JACK-era workflow but are no longer the active
direction for this repository.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,76 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.3.13" name="FastTrack-Practice">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="FastTrack XLR">
<plug>capture_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="FastTrack 1/4in">
<plug>capture_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="Hydrogen" type="jack-audio" name="Hydrogen L">
<plug>out_L</plug>
</socket>
<socket exclusive="off" client="Hydrogen" type="jack-audio" name="Hydrogen R">
<plug>out_R</plug>
</socket>
<socket exclusive="off" client="qsynth" type="jack-audio" name="QSynth 1 L">
<plug>l_00</plug>
</socket>
<socket exclusive="off" client="qsynth" type="jack-audio" name="QSynth 1 R">
<plug>r_00</plug>
</socket>
<socket exclusive="off" client="Midi Through" type="alsa-midi" name="Midi Through">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Sink" type="jack-audio" name="PulseAudio Sink L">
<plug>front-left</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Sink" type="jack-audio" name="PulseAudio Sink R">
<plug>front-right</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="FastTrack L">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="FastTrack R">
<plug>playback_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX In">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="Midi Through" type="alsa-midi" name="Midi Through">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter (Bass Raw)">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter (Bass FX)">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Source" type="jack-audio" name="PulseAudio Source L">
<plug>front-left</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Source" type="jack-audio" name="PulseAudio Source R">
<plug>front-right</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="FastTrack 1/4in" input="Bass FX In" type="jack-audio"/>
<cable output="FastTrack 1/4in" input="Meter (Bass Raw)" type="jack-audio"/>
<cable output="QSynth 1 L" input="FastTrack L" type="jack-audio"/>
<cable output="QSynth 1 R" input="FastTrack R" type="jack-audio"/>
<cable output="PulseAudio Sink L" input="FastTrack L" type="jack-audio"/>
<cable output="PulseAudio Sink R" input="FastTrack R" type="jack-audio"/>
<cable output="Bass FX Out" input="FastTrack L" type="jack-audio"/>
<cable output="Bass FX Out" input="FastTrack R" type="jack-audio"/>
<cable output="Bass FX Out" input="Meter (Bass FX)" type="jack-audio"/>
<cable output="Hydrogen L" input="FastTrack L" type="jack-audio"/>
<cable output="Hydrogen R" input="FastTrack R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,95 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.3.11" name="K6-Bass+System">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="system">
<plug>capture_1</plug>
<plug>capture_2</plug>
<plug>capture_3</plug>
<plug>capture_4</plug>
<plug>capture_5</plug>
<plug>capture_6</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Sink" type="jack-audio" name="PulseAudio JACK Sink">
<plug>front-left</plug>
<plug>front-right</plug>
</socket>
<socket exclusive="off" client="jack_rack" type="jack-audio" name="jack_rack">
<plug>out_1</plug>
<plug>out_2</plug>
</socket>
<socket exclusive="off" client="jack_rack-01" type="jack-audio" name="jack_rack-01">
<plug>out_1</plug>
<plug>out_2</plug>
</socket>
<socket exclusive="off" client="bridge-[0-9]+" type="jack-audio" name="bridge-2688">
<plug>monitor_1</plug>
<plug>monitor_2</plug>
</socket>
<socket exclusive="off" client="zita-at1" type="jack-audio" name="zita-at1">
<plug>out</plug>
</socket>
<socket exclusive="off" client="jack_rack" type="jack-audio" name="jack_rack 2">
<plug>out_1</plug>
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="Midi Through" type="alsa-midi" name="Midi Through">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" client="Komplete Audio 6" type="alsa-midi" name="Komplete Audio 6">
<plug>Komplete Audio 6 MIDI 1</plug>
</socket>
<socket exclusive="off" client="JACK Rack" type="alsa-midi" name="JACK Rack">
<plug>Control</plug>
<plug>Control</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="system">
<plug>playback_1</plug>
<plug>playback_2</plug>
<plug>playback_3</plug>
<plug>playback_4</plug>
<plug>playback_5</plug>
<plug>playback_6</plug>
</socket>
<socket exclusive="off" client="PulseAudio JACK Source" type="jack-audio" name="PulseAudio JACK Source">
<plug>front-left</plug>
<plug>front-right</plug>
</socket>
<socket exclusive="off" client="jack_rack" type="jack-audio" name="jack_rack">
<plug>in_1</plug>
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="jack_rack-01" type="jack-audio" name="jack_rack-01">
<plug>in_1</plug>
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="bridge-[0-9]+" type="jack-audio" name="bridge-2688">
<plug>meter_1</plug>
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="zita-at1" type="jack-audio" name="zita-at1">
<plug>in</plug>
</socket>
<socket exclusive="off" client="zita-at1" type="jack-midi" name="zita-at1">
<plug>pitch</plug>
</socket>
<socket exclusive="off" client="Midi Through" type="alsa-midi" name="Midi Through">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" client="Komplete Audio 6" type="alsa-midi" name="Komplete Audio 6">
<plug>Komplete Audio 6 MIDI 1</plug>
</socket>
<socket exclusive="off" client="JACK Rack" type="alsa-midi" name="JACK Rack">
<plug>Control</plug>
<plug>Control</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="system" input="jack_rack" type="jack-audio"/>
<cable output="PulseAudio JACK Sink" input="system" type="jack-audio"/>
<cable output="jack_rack 2" input="system" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,135 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.1" name="church-eq-bass-with-synth">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="Raw Bass Capture">
<plug>capture_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX OUT">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_headphones" type="jack-audio" name="Headphones FX OUT L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_headphones" type="jack-audio" name="Headphones FX OUT R">
<plug>out_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Raw M48 L Capture">
<plug>capture_3</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Raw M48 R Capture">
<plug>capture_4</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="M48 Mix FX OUT">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="M48 Drums FX OUT">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="yoshimi" type="jack-audio" name="yoshimi OUT L">
<plug>left</plug>
</socket>
<socket exclusive="off" client="yoshimi" type="jack-audio" name="yoshimi OUT R">
<plug>right</plug>
</socket>
<socket exclusive="off" client="MDA ePiano" type="jack-audio" name="MDA ePiano OUT L">
<plug>left_out</plug>
</socket>
<socket exclusive="off" client="MDA ePiano" type="jack-audio" name="MDA ePiano OUT R">
<plug>right_out</plug>
</socket>
<socket exclusive="off" client="LPK25" type="alsa-midi" name="Akai LPK25">
<plug>LPK25 MIDI 1</plug>
</socket>
<socket exclusive="off" client="a2j" type="jack-midi" name="A2J MIDI OUT">
<plug>Midi Through \[14\] \(capture\): Midi Through Port-0</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX IN">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="SEND">
<plug>playback_3</plug>
</socket>
<socket exclusive="off" client="meter_bass" type="jack-audio" name="Meter: Bass Raw">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="meter_bass" type="jack-audio" name="Meter: Bass FX">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="meter_bass" type="jack-audio" name="Meter: Synth">
<plug>meter_3</plug>
</socket>
<socket exclusive="off" client="jack_rack_headphones" type="jack-audio" name="Headphones FX IN L">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_headphones" type="jack-audio" name="Headphones FX IN R">
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor L">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor R">
<plug>playback_2</plug>
</socket>
<socket exclusive="off" client="meter_bass" type="jack-audio" name="Meter: Headphones">
<plug>meter_4</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="M48 Mix FX IN">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="M48 Drums FX IN">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="meter_m48" type="jack-audio" name="Meter: M48 Mix">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="meter_m48" type="jack-audio" name="Meter: M48 Drums">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="zita-at1" type="jack-audio" name="AT1 (tuner)">
<plug>in</plug>
</socket>
<socket exclusive="off" client="Midi Through" type="alsa-midi" name="A2J MIDI IN">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" client="yoshimi-01" type="jack-midi" name="yoshimi MIDI IN">
<plug>midi in</plug>
</socket>
<socket exclusive="off" client="MDA ePiano" type="jack-midi" name="MDA ePiano IN">
<plug>event_in</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="Raw Bass Capture" input="Bass FX IN" type="jack-audio"/>
<cable output="Raw Bass Capture" input="AT1 (tuner)" type="jack-audio"/>
<cable output="Raw Bass Capture" input="Meter: Bass Raw" type="jack-audio"/>
<cable output="Raw Bass Capture" input="SEND" type="jack-audio"/>
<cable output="Bass FX OUT" input="Headphones FX IN L" type="jack-audio"/>
<cable output="Bass FX OUT" input="Headphones FX IN R" type="jack-audio"/>
<cable output="Bass FX OUT" input="Meter: Bass FX" type="jack-audio"/>
<cable output="Headphones FX OUT L" input="Monitor L" type="jack-audio"/>
<cable output="Headphones FX OUT L" input="Meter: Headphones" type="jack-audio"/>
<cable output="Headphones FX OUT R" input="Monitor R" type="jack-audio"/>
<cable output="Raw M48 L Capture" input="M48 Mix FX IN" type="jack-audio"/>
<cable output="Raw M48 L Capture" input="Meter: M48 Mix" type="jack-audio"/>
<cable output="Raw M48 R Capture" input="Meter: M48 Drums" type="jack-audio"/>
<cable output="Raw M48 R Capture" input="M48 Drums FX IN" type="jack-audio"/>
<cable output="M48 Mix FX OUT" input="Headphones FX IN L" type="jack-audio"/>
<cable output="M48 Mix FX OUT" input="Headphones FX IN R" type="jack-audio"/>
<cable output="M48 Drums FX OUT" input="Headphones FX IN R" type="jack-audio"/>
<cable output="M48 Drums FX OUT" input="Headphones FX IN L" type="jack-audio"/>
<cable output="yoshimi OUT L" input="Headphones FX IN L" type="jack-audio"/>
<cable output="yoshimi OUT L" input="SEND" type="jack-audio"/>
<cable output="yoshimi OUT L" input="Meter: Synth" type="jack-audio"/>
<cable output="yoshimi OUT R" input="Headphones FX IN R" type="jack-audio"/>
<cable output="Akai LPK25" input="A2J MIDI IN" type="alsa-midi"/>
<cable output="A2J MIDI OUT" input="yoshimi MIDI IN" type="jack-midi"/>
<cable output="A2J MIDI OUT" input="MDA ePiano IN" type="jack-midi"/>
<cable output="MDA ePiano OUT L" input="Headphones FX IN L" type="jack-audio"/>
<cable output="MDA ePiano OUT L" input="Meter: Synth" type="jack-audio"/>
<cable output="MDA ePiano OUT R" input="Headphones FX IN R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,65 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.3.11" name="church-eq-mix-ears-only">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Out">
<plug>capture_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix L">
<plug>capture_3</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix R">
<plug>capture_4</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out R">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out R">
<plug>out_2</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="bridge-[0-9]+" type="jack-audio" name="Bass OUT VU">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="bridge-[0-9]+" type="jack-audio" name="Bass Mix VU">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Send">
<plug>playback_3</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX L">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX R">
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor L">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor R">
<plug>playback_2</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="Bass Out" input="Bass FX" type="jack-audio"/>
<cable output="Bass Out" input="Bass OUT VU" type="jack-audio"/>
<cable output="Mix L" input="Mix FX L" type="jack-audio"/>
<cable output="Mix R" input="Mix FX R" type="jack-audio"/>
<cable output="Bass FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Bass FX Out L" input="Bass Mix VU" type="jack-audio"/>
<cable output="Bass FX Out R" input="Monitor R" type="jack-audio"/>
<cable output="Mix FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Mix FX Out R" input="Monitor R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,131 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.2" name="church-eq-mix-splitchannel-with-headphone-mix">
<output-sockets>
<socket name="Headphone Mix L" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Headphone Mix R" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>out_2</plug>
</socket>
<socket name="Bass Out" type="jack-audio" client="system" exclusive="off">
<plug>capture_1</plug>
</socket>
<socket name="Bass2 Out" type="jack-audio" client="system" exclusive="off">
<plug>capture_2</plug>
</socket>
<socket name="Mix Drums L" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Mix Drums R" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>out_2</plug>
</socket>
<socket name="Bass FX Out L" type="jack-audio" client="jack_rack_bass" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Bass FX Out R" type="jack-audio" client="jack_rack_bass" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Bass2 FX Out L" type="jack-audio" client="jack_rack_bass2" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Bass2 FX Out R" type="jack-audio" client="jack_rack_bass2" exclusive="off">
<plug>out_2</plug>
</socket>
<socket name="Mix L" type="jack-audio" client="system" exclusive="off">
<plug>capture_3</plug>
</socket>
<socket name="Mix R" type="jack-audio" client="system" exclusive="off">
<plug>capture_4</plug>
</socket>
<socket name="Mix FX Out L" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Mix FX Out R" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>out_2</plug>
</socket>
</output-sockets>
<input-sockets>
<socket name="Headphone Mix L" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Headphone Mix R" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Headphones2 Mix L" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Headphones2 MixR" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Meter: Headphones" type="jack-audio" client="meter" exclusive="off">
<plug>meter_5</plug>
</socket>
<socket name="AT1 (Tuner)" type="jack-audio" client="zita-at1" exclusive="off">
<plug>in</plug>
</socket>
<socket name="Bass Send" type="jack-audio" client="system" exclusive="off">
<plug>playback_3</plug>
</socket>
<socket name="Bass FX" type="jack-audio" client="jack_rack_bass" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Bass2 FX" type="jack-audio" client="jack_rack_bass2" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Meter: Bass Raw" type="jack-audio" client="meter" exclusive="off">
<plug>meter_1</plug>
</socket>
<socket name="Meter: Bass Post FX" type="jack-audio" client="meter" exclusive="off">
<plug>meter_2</plug>
</socket>
<socket name="Monitor L" type="jack-audio" client="system" exclusive="off">
<plug>playback_1</plug>
</socket>
<socket name="Monitor R" type="jack-audio" client="system" exclusive="off">
<plug>playback_2</plug>
</socket>
<socket name="Mix FX L" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Mix FX R" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Mix Drums L" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Mix Drums R" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Meter: Mix L" type="jack-audio" client="meter" exclusive="off">
<plug>meter_3</plug>
</socket>
<socket name="Meter: Mix R" type="jack-audio" client="meter" exclusive="off">
<plug>meter_4</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable input="Monitor L" output="Headphone Mix L" type="jack-audio"/>
<cable input="Meter: Headphones" output="Headphone Mix L" type="jack-audio"/>
<cable input="Monitor R" output="Headphone Mix R" type="jack-audio"/>
<cable input="Bass FX" output="Bass Out" type="jack-audio"/>
<cable input="AT1 (Tuner)" output="Bass Out" type="jack-audio"/>
<cable input="Meter: Bass Raw" output="Bass Out" type="jack-audio"/>
<cable input="Bass2 FX" output="Bass2 Out" type="jack-audio"/>
<cable input="AT1 (Tuner)" output="Bass2 Out" type="jack-audio"/>
<cable input="Headphone Mix L" output="Mix Drums L" type="jack-audio"/>
<cable input="Headphone Mix R" output="Mix Drums R" type="jack-audio"/>
<cable input="Meter: Bass Post FX" output="Bass FX Out L" type="jack-audio"/>
<cable input="Headphone Mix L" output="Bass FX Out L" type="jack-audio"/>
<cable input="Headphone Mix R" output="Bass FX Out R" type="jack-audio"/>
<cable input="Mix FX L" output="Mix L" type="jack-audio"/>
<cable input="Meter: Mix L" output="Mix L" type="jack-audio"/>
<cable input="Mix FX R" output="Mix L" type="jack-audio"/>
<cable input="Meter: Mix R" output="Mix R" type="jack-audio"/>
<cable input="Mix Drums L" output="Mix R" type="jack-audio"/>
<cable input="Mix Drums R" output="Mix R" type="jack-audio"/>
<cable input="Headphone Mix L" output="Mix FX Out L" type="jack-audio"/>
<cable input="Headphone Mix R" output="Mix FX Out R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,94 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.3.11" name="church-eq-mix-splitchannel">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Out">
<plug>capture_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="Mix Drums L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="Mix Drums R">
<plug>out_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out R">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix L">
<plug>capture_3</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix R">
<plug>capture_4</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out R">
<plug>out_2</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="zita-at1" type="jack-audio" name="AT1 (Tuner)">
<plug>in</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Send">
<plug>playback_3</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Bass Raw">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Bass Post FX">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor L">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor R">
<plug>playback_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX L">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX R">
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="Mix Drums L">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mixdrums" type="jack-audio" name="Mix Drums R">
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Mix L">
<plug>meter_3</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Mix R">
<plug>meter_4</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="Bass Out" input="Bass FX" type="jack-audio"/>
<cable output="Bass Out" input="Bass Send" type="jack-audio"/>
<cable output="Bass Out" input="AT1 (Tuner)" type="jack-audio"/>
<cable output="Bass Out" input="Meter: Bass Raw" type="jack-audio"/>
<cable output="Bass FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Bass FX Out L" input="Meter: Bass Post FX" type="jack-audio"/>
<cable output="Bass FX Out R" input="Monitor R" type="jack-audio"/>
<cable output="Mix L" input="Mix FX L" type="jack-audio"/>
<cable output="Mix L" input="Meter: Mix L" type="jack-audio"/>
<cable output="Mix L" input="Mix FX R" type="jack-audio"/>
<cable output="Mix R" input="Meter: Mix R" type="jack-audio"/>
<cable output="Mix R" input="Mix Drums L" type="jack-audio"/>
<cable output="Mix R" input="Mix Drums R" type="jack-audio"/>
<cable output="Mix FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Mix FX Out R" input="Monitor R" type="jack-audio"/>
<cable output="Mix Drums L" input="Monitor L" type="jack-audio"/>
<cable output="Mix Drums R" input="Monitor R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,78 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.3.11" name="church-eq-mix">
<output-sockets>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Out">
<plug>capture_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX Out R">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix L">
<plug>capture_3</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Mix R">
<plug>capture_4</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out L">
<plug>out_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX Out R">
<plug>out_2</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" client="zita-at1" type="jack-audio" name="AT1 (Tuner)">
<plug>in</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Bass Send">
<plug>playback_3</plug>
</socket>
<socket exclusive="off" client="jack_rack_bass" type="jack-audio" name="Bass FX">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Bass Raw">
<plug>meter_1</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Bass Post FX">
<plug>meter_2</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor L">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" client="system" type="jack-audio" name="Monitor R">
<plug>playback_2</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX L">
<plug>in_1</plug>
</socket>
<socket exclusive="off" client="jack_rack_mix" type="jack-audio" name="Mix FX R">
<plug>in_2</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Mix L">
<plug>meter_3</plug>
</socket>
<socket exclusive="off" client="meter" type="jack-audio" name="Meter: Mix R">
<plug>meter_4</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable output="Bass Out" input="Bass FX" type="jack-audio"/>
<cable output="Bass Out" input="Bass Send" type="jack-audio"/>
<cable output="Bass Out" input="AT1 (Tuner)" type="jack-audio"/>
<cable output="Bass Out" input="Meter: Bass Raw" type="jack-audio"/>
<cable output="Mix L" input="Mix FX L" type="jack-audio"/>
<cable output="Mix L" input="Meter: Mix L" type="jack-audio"/>
<cable output="Mix R" input="Mix FX R" type="jack-audio"/>
<cable output="Mix R" input="Meter: Mix R" type="jack-audio"/>
<cable output="Bass FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Bass FX Out L" input="Meter: Bass Post FX" type="jack-audio"/>
<cable output="Bass FX Out R" input="Monitor R" type="jack-audio"/>
<cable output="Mix FX Out L" input="Monitor L" type="jack-audio"/>
<cable output="Mix FX Out R" input="Monitor R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,140 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.2" name="church-eq-two-bass-setup">
<output-sockets>
<socket name="Raw Bass Capture" type="jack-audio" client="system" exclusive="off">
<plug>capture_1</plug>
</socket>
<socket name="Bass FX OUT" type="jack-audio" client="jack_rack_bass" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Headphones FX OUT L" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Headphones FX OUT R" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>out_2</plug>
</socket>
<socket name="Raw Bass 2 Capture" type="jack-audio" client="system" exclusive="off">
<plug>capture_2</plug>
</socket>
<socket name="Bass 2 FX OUT 2" type="jack-audio" client="jack_rack_bass2" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Headphones 2 FX OUT L" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="Headphones 2 FX OUT R" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>out_2</plug>
</socket>
<socket name="Raw M48 L Capture" type="jack-audio" client="system" exclusive="off">
<plug>capture_3</plug>
</socket>
<socket name="Raw M48 R Capture" type="jack-audio" client="system" exclusive="off">
<plug>capture_4</plug>
</socket>
<socket name="M48 Mix FX OUT" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>out_1</plug>
</socket>
<socket name="M48 Drums FX OUT" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>out_1</plug>
</socket>
</output-sockets>
<input-sockets>
<socket name="Bass FX IN" type="jack-audio" client="jack_rack_bass" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Meter: Bass Raw" type="jack-audio" client="meter_bass" exclusive="off">
<plug>meter_1</plug>
</socket>
<socket name="Meter: Bass FX" type="jack-audio" client="meter_bass" exclusive="off">
<plug>meter_2</plug>
</socket>
<socket name="Headphones FX IN L" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Headphones FX IN R" type="jack-audio" client="jack_rack_headphones" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Monitor L" type="jack-audio" client="system" exclusive="off">
<plug>playback_1</plug>
</socket>
<socket name="Monitor R" type="jack-audio" client="system" exclusive="off">
<plug>playback_2</plug>
</socket>
<socket name="Meter: Headphones" type="jack-audio" client="meter_bass" exclusive="off">
<plug>meter_3</plug>
</socket>
<socket name="Bass 2 FX IN" type="jack-audio" client="jack_rack_bass2" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Meter: Bass 2 Raw" type="jack-audio" client="meter_bass2" exclusive="off">
<plug>meter_1</plug>
</socket>
<socket name="Meter: Bass 2 FX" type="jack-audio" client="meter_bass2" exclusive="off">
<plug>meter_2</plug>
</socket>
<socket name="Headphones 2 FX IN L" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Headphones 2 FX IN R" type="jack-audio" client="jack_rack_headphones2" exclusive="off">
<plug>in_2</plug>
</socket>
<socket name="Monitor 2 L" type="jack-audio" client="system" exclusive="off">
<plug>playback_3</plug>
</socket>
<socket name="Monitor 2 R" type="jack-audio" client="system" exclusive="off">
<plug>playback_4</plug>
</socket>
<socket name="Meter: Headphones 2" type="jack-audio" client="meter_bass2" exclusive="off">
<plug>meter_3</plug>
</socket>
<socket name="M48 Mix FX IN" type="jack-audio" client="jack_rack_mix" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="M48 Drums FX IN 2" type="jack-audio" client="jack_rack_mixdrums" exclusive="off">
<plug>in_1</plug>
</socket>
<socket name="Meter: M48 Mix" type="jack-audio" client="meter_m48" exclusive="off">
<plug>meter_1</plug>
</socket>
<socket name="Meter: M48 Drums" type="jack-audio" client="meter_m48" exclusive="off">
<plug>meter_2</plug>
</socket>
<socket name="AT1 (tuner)" type="jack-audio" client="zita-at1" exclusive="off">
<plug>in</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable input="Bass FX IN" output="Raw Bass Capture" type="jack-audio"/>
<cable input="AT1 (tuner)" output="Raw Bass Capture" type="jack-audio"/>
<cable input="Meter: Bass Raw" output="Raw Bass Capture" type="jack-audio"/>
<cable input="Bass 2 FX IN" output="Raw Bass 2 Capture" type="jack-audio"/>
<cable input="AT1 (tuner)" output="Raw Bass 2 Capture" type="jack-audio"/>
<cable input="Meter: Bass 2 Raw" output="Raw Bass 2 Capture" type="jack-audio"/>
<cable input="M48 Mix FX IN" output="Raw M48 L Capture" type="jack-audio"/>
<cable input="Meter: M48 Mix" output="Raw M48 L Capture" type="jack-audio"/>
<cable input="M48 Drums FX IN 2" output="Raw M48 R Capture" type="jack-audio"/>
<cable input="Meter: M48 Drums" output="Raw M48 R Capture" type="jack-audio"/>
<cable input="Headphones FX IN L" output="Bass FX OUT" type="jack-audio"/>
<cable input="Headphones FX IN R" output="Bass FX OUT" type="jack-audio"/>
<cable input="Meter: Bass FX" output="Bass FX OUT" type="jack-audio"/>
<cable input="Meter: Bass 2 FX" output="Bass 2 FX OUT 2" type="jack-audio"/>
<cable input="Headphones 2 FX IN L" output="Bass 2 FX OUT 2" type="jack-audio"/>
<cable input="Headphones 2 FX IN R" output="Bass 2 FX OUT 2" type="jack-audio"/>
<cable input="Headphones FX IN L" output="M48 Mix FX OUT" type="jack-audio"/>
<cable input="Headphones FX IN R" output="M48 Mix FX OUT" type="jack-audio"/>
<cable input="Headphones 2 FX IN L" output="M48 Mix FX OUT" type="jack-audio"/>
<cable input="Headphones 2 FX IN R" output="M48 Mix FX OUT" type="jack-audio"/>
<cable input="Headphones FX IN R" output="M48 Drums FX OUT" type="jack-audio"/>
<cable input="Headphones FX IN L" output="M48 Drums FX OUT" type="jack-audio"/>
<cable input="Headphones 2 FX IN R" output="M48 Drums FX OUT" type="jack-audio"/>
<cable input="Headphones 2 FX IN L" output="M48 Drums FX OUT" type="jack-audio"/>
<cable input="Monitor L" output="Headphones FX OUT L" type="jack-audio"/>
<cable input="Meter: Headphones" output="Headphones FX OUT L" type="jack-audio"/>
<cable input="Monitor R" output="Headphones FX OUT R" type="jack-audio"/>
<cable input="Monitor 2 L" output="Headphones 2 FX OUT L" type="jack-audio"/>
<cable input="Meter: Headphones 2" output="Headphones 2 FX OUT L" type="jack-audio"/>
<cable input="Monitor 2 R" output="Headphones 2 FX OUT R" type="jack-audio"/>
</cables>
</patchbay>
@@ -1,59 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.2" name="keyboard-qsynth">
<output-sockets>
<socket client="Oxygen 61" name="Oxygen61 IN" type="alsa-midi" exclusive="off">
<plug>Oxygen 61 MIDI 1</plug>
</socket>
<socket client="system" name="system" type="jack-audio" exclusive="off">
<plug>capture_1</plug>
<plug>capture_2</plug>
</socket>
<socket client="PulseAudio JACK Sink" name="PulseAudio JACK Sink" type="jack-audio" exclusive="off">
<plug>front-left</plug>
<plug>front-right</plug>
</socket>
<socket client="qsynth" name="qsynth" type="jack-audio" exclusive="off">
<plug>l_00</plug>
<plug>r_00</plug>
</socket>
<socket client="jack-keyboard" name="jack-keyboard" type="jack-midi" exclusive="off">
<plug>midi_out</plug>
</socket>
<socket client="Midi Through" name="Midi Through" type="alsa-midi" exclusive="off">
<plug>Midi Through Port-0</plug>
</socket>
</output-sockets>
<input-sockets>
<socket client="system" name="system" type="jack-audio" exclusive="off">
<plug>playback_1</plug>
<plug>playback_2</plug>
<plug>playback_3</plug>
<plug>playback_4</plug>
</socket>
<socket client="PulseAudio JACK Source" name="PulseAudio JACK Source" type="jack-audio" exclusive="off">
<plug>front-left</plug>
<plug>front-right</plug>
</socket>
<socket client="jack-keyboard" name="jack-keyboard" type="jack-midi" exclusive="off">
<plug>midi_in</plug>
</socket>
<socket client="qsynth" name="qsynth" type="jack-midi" exclusive="off">
<plug>midi</plug>
</socket>
<socket client="FLUID Synth \([0-9]+\)" name="qsynth ALSA Midi" type="alsa-midi" exclusive="off">
<plug>Synth input port \([0-9]+:0\)</plug>
</socket>
<socket client="Midi Through" name="Midi Through" type="alsa-midi" exclusive="off">
<plug>Midi Through Port-0</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable type="jack-audio" input="PulseAudio JACK Source" output="system"/>
<cable type="jack-audio" input="system" output="PulseAudio JACK Sink"/>
<cable type="jack-audio" input="system" output="qsynth"/>
<cable type="jack-midi" input="qsynth" output="jack-keyboard"/>
<cable type="alsa-midi" input="qsynth ALSA Midi" output="Oxygen61 IN"/>
</cables>
</patchbay>
@@ -1,85 +0,0 @@
<!DOCTYPE patchbay>
<patchbay name="maudio-fasttrack" version="0.4.2">
<output-sockets>
<socket type="jack-audio" exclusive="off" name="Bass IN" client="system">
<plug>capture_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Bass FX OUT" client="jack_rack_bass">
<plug>out_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Headphones OUT L" client="jack_rack_headphones">
<plug>out_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Headphones OUT R" client="jack_rack_headphones">
<plug>out_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Qsynth OUT L" client="qsynth">
<plug>l_00</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Qsynth OUT R" client="qsynth">
<plug>r_00</plug>
</socket>
<socket type="jack-midi" exclusive="off" name="jack-keyboard SEND" client="jack-keyboard">
<plug>midi_out</plug>
</socket>
<socket type="alsa-midi" exclusive="off" name="j2a_bridge OUT" client="j2a_bridge">
<plug>capture</plug>
</socket>
</output-sockets>
<input-sockets>
<socket type="jack-audio" exclusive="off" name="Headphones IN L" client="jack_rack_headphones">
<plug>in_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Headphones IN R" client="jack_rack_headphones">
<plug>in_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Bass FX IN" client="jack_rack_bass">
<plug>in_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Meter: Bass" client="meter">
<plug>meter_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Meter: Bass (post FX)" client="meter">
<plug>meter_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Meter: Headphones L" client="meter">
<plug>meter_3</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Meter: Headphones R" client="meter">
<plug>meter_4</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="System OUT L" client="system">
<plug>playback_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="System OUT R" client="system">
<plug>playback_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" name="Autotune IN" client="zita-at1">
<plug>in</plug>
</socket>
<socket type="jack-midi" exclusive="off" name="j2a_bridge IN" client="j2a_bridge">
<plug>playback</plug>
</socket>
<socket type="alsa-midi" exclusive="off" name="FLUID Synth IN" client="FLUID Synth \([0-9]+\)">
<plug>Synth input port \([0-9]+:0\)</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable type="jack-audio" output="Bass IN" input="Bass FX IN"/>
<cable type="jack-audio" output="Bass IN" input="Meter: Bass"/>
<cable type="jack-audio" output="Bass IN" input="Autotune IN"/>
<cable type="jack-audio" output="Bass FX OUT" input="Meter: Bass (post FX)"/>
<cable type="jack-audio" output="Bass FX OUT" input="Headphones IN L"/>
<cable type="jack-audio" output="Bass FX OUT" input="Headphones IN R"/>
<cable type="jack-audio" output="Headphones OUT L" input="Meter: Headphones L"/>
<cable type="jack-audio" output="Headphones OUT L" input="System OUT L"/>
<cable type="jack-audio" output="Headphones OUT R" input="Meter: Headphones R"/>
<cable type="jack-audio" output="Headphones OUT R" input="System OUT R"/>
<cable type="jack-audio" output="Qsynth OUT L" input="Headphones IN L"/>
<cable type="jack-audio" output="Qsynth OUT R" input="Headphones IN R"/>
<cable type="jack-midi" output="jack-keyboard SEND" input="j2a_bridge IN"/>
<cable type="alsa-midi" output="j2a_bridge OUT" input="FLUID Synth IN"/>
</cables>
</patchbay>
-92
View File
@@ -1,92 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.5" name="onboard">
<output-sockets>
<socket exclusive="off" name="Headphones OUT L" client="jack_rack_headphones" type="jack-audio">
<plug>out_1</plug>
</socket>
<socket exclusive="off" name="Headphones OUT R" client="jack_rack_headphones" type="jack-audio">
<plug>out_2</plug>
</socket>
<socket exclusive="off" name="Qsynth OUT L" client="qsynth" type="jack-audio">
<plug>l_00</plug>
</socket>
<socket exclusive="off" name="Qsynth OUT R" client="qsynth" type="jack-audio">
<plug>r_00</plug>
</socket>
<socket exclusive="off" name="MDA EPiano OUT L" client="MDA ePiano" type="jack-audio">
<plug>left_out</plug>
</socket>
<socket exclusive="off" name="MDA EPiano OUT R" client="MDA ePiano" type="jack-audio">
<plug>right_out</plug>
</socket>
<socket exclusive="off" name="jack-keyboard SEND" client="jack-keyboard" type="jack-midi">
<plug>midi_out</plug>
</socket>
<socket exclusive="off" name="a2j ALSA OUT" client="Midi Through" type="alsa-midi">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" name="a2j MIDI OUT" client="a2j" type="jack-midi">
<plug>Midi Through \[14\] \(capture\): Midi Through Port-0</plug>
</socket>
<socket exclusive="off" name="AKAI LPK25 Keyboard" client="LPK25" type="alsa-midi">
<plug>LPK25 MIDI 1</plug>
</socket>
<socket exclusive="off" name="Alesis Recital Keyboard" client="Alesis Recital" type="alsa-midi">
<plug>Alesis Recital MIDI 1</plug>
</socket>
<socket exclusive="off" name="PulseAudio Sink L" client="PulseAudio JACK Sink" type="jack-audio">
<plug>front-left</plug>
</socket>
<socket exclusive="off" name="PulseAudio Sink R" client="PulseAudio JACK Sink" type="jack-audio">
<plug>front-right</plug>
</socket>
</output-sockets>
<input-sockets>
<socket exclusive="off" name="Headphones IN L" client="jack_rack_headphones" type="jack-audio">
<plug>in_1</plug>
</socket>
<socket exclusive="off" name="Headphones IN R" client="jack_rack_headphones" type="jack-audio">
<plug>in_2</plug>
</socket>
<socket exclusive="off" name="Bass FX IN" client="jack_rack_bass" type="jack-audio">
<plug>in_1</plug>
</socket>
<socket exclusive="off" name="System OUT L" client="system" type="jack-audio">
<plug>playback_1</plug>
</socket>
<socket exclusive="off" name="System OUT R" client="system" type="jack-audio">
<plug>playback_2</plug>
</socket>
<socket exclusive="off" name="a2j ALSA IN" client="Midi Through" type="alsa-midi">
<plug>Midi Through Port-0</plug>
</socket>
<socket exclusive="off" name="a2j MIDI IN" client="a2j" type="jack-midi">
<plug>Midi Through \[14\] \(playback\): Midi Through Port-0</plug>
</socket>
<socket exclusive="off" name="FLUID Synth IN" client="FLUID Synth \([0-9]+\)" type="alsa-midi">
<plug>Synth input port \([0-9]+:0\)</plug>
</socket>
<socket exclusive="off" name="MDA EPiano IN" client="MDA ePiano" type="jack-midi">
<plug>event_in</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable input="System OUT L" output="Headphones OUT L" type="jack-audio"/>
<cable input="System OUT R" output="Headphones OUT R" type="jack-audio"/>
<cable input="Headphones IN L" output="Qsynth OUT L" type="jack-audio"/>
<cable input="Headphones IN R" output="Qsynth OUT R" type="jack-audio"/>
<cable input="Headphones IN L" output="MDA EPiano OUT L" type="jack-audio"/>
<cable input="Headphones IN R" output="MDA EPiano OUT R" type="jack-audio"/>
<cable input="MDA EPiano IN" output="jack-keyboard SEND" type="jack-midi"/>
<cable input="a2j MIDI IN" output="jack-keyboard SEND" type="jack-midi"/>
<cable input="FLUID Synth IN" output="a2j ALSA OUT" type="alsa-midi"/>
<cable input="MDA EPiano IN" output="a2j MIDI OUT" type="jack-midi"/>
<cable input="FLUID Synth IN" output="AKAI LPK25 Keyboard" type="alsa-midi"/>
<cable input="a2j ALSA IN" output="AKAI LPK25 Keyboard" type="alsa-midi"/>
<cable input="Headphones IN L" output="PulseAudio Sink L" type="jack-audio"/>
<cable input="Headphones IN R" output="PulseAudio Sink R" type="jack-audio"/>
<cable input="a2j ALSA IN" output="Alesis Recital Keyboard" type="alsa-midi"/>
</cables>
</patchbay>
-70
View File
@@ -1,70 +0,0 @@
<!DOCTYPE patchbay>
<patchbay version="0.4.5" name="studio">
<output-sockets>
<socket type="jack-audio" exclusive="off" client="system" name="Bass">
<plug>capture_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="jack_rack_bass" name="Bass FX OUT">
<plug>out_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="system" name="Mic">
<plug>capture_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="MDA ePiano" name="MDA EPiano Audio L">
<plug>left_out</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="MDA ePiano" name="MDA EPiano Audio R">
<plug>right_out</plug>
</socket>
<socket type="alsa-midi" exclusive="off" client="Alesis Recital" name="Alesis Recital Keyboard">
<plug>Alesis Recital MIDI 1</plug>
</socket>
<socket type="alsa-midi" exclusive="off" client="LPK25" name="AKAI LPK25 Keyboard">
<plug>LPK25 MIDI 1</plug>
</socket>
<socket type="jack-midi" exclusive="off" client="a2j" name="MIDI Through">
<plug>Midi Through \[14\] \(capture\): Midi Through Port-0</plug>
</socket>
</output-sockets>
<input-sockets>
<socket type="jack-audio" exclusive="off" client="jack_rack_bass" name="Bass FX IN">
<plug>in_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="meter" name="Meter: Bass Raw IN">
<plug>meter_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="meter" name="Meter: Bass FX IN">
<plug>meter_2</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="meter" name="Meter: EPiano">
<plug>meter_3</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="system" name="OUT L">
<plug>playback_1</plug>
</socket>
<socket type="jack-audio" exclusive="off" client="system" name="OUT R">
<plug>playback_2</plug>
</socket>
<socket type="alsa-midi" exclusive="off" client="Midi Through" name="MIDI Through">
<plug>Midi Through Port-0</plug>
</socket>
<socket type="jack-midi" exclusive="off" client="MDA ePiano" name="MDA EPiano MIDI IN">
<plug>event_in</plug>
</socket>
</input-sockets>
<slots/>
<cables>
<cable input="Meter: Bass Raw IN" type="jack-audio" output="Bass"/>
<cable input="Bass FX IN" type="jack-audio" output="Bass"/>
<cable input="Meter: Bass FX IN" type="jack-audio" output="Bass FX OUT"/>
<cable input="OUT R" type="jack-audio" output="Bass FX OUT"/>
<cable input="OUT L" type="jack-audio" output="Bass FX OUT"/>
<cable input="MIDI Through" type="alsa-midi" output="Alesis Recital Keyboard"/>
<cable input="MIDI Through" type="alsa-midi" output="AKAI LPK25 Keyboard"/>
<cable input="MDA EPiano MIDI IN" type="jack-midi" output="MIDI Through"/>
<cable input="OUT L" type="jack-audio" output="MDA EPiano Audio L"/>
<cable input="Meter: EPiano" type="jack-audio" output="MDA EPiano Audio L"/>
<cable input="OUT R" type="jack-audio" output="MDA EPiano Audio R"/>
</cables>
</patchbay>
-11
View File
@@ -1,11 +0,0 @@
#!/bin/bash
for filename in worship.wavex altar.wavex; do
name=${filename%.wavex}
ffmpeg -i "$filename" -filter_complex 'channelsplit=channel_layout=4.1[L][R][B][X][Y]' \
-map '[L]' "${name}-m48.wav" \
-map '[R]' "${name}-drums.wav" \
-map '[X]' "${name}-synth-L.wav" \
-map '[Y]' "${name}-synth-R.wav" \
-map '[B]' "${name}-bass.wav"
done
-9
View File
@@ -1,9 +0,0 @@
#!/bin/bash
for filename in worship.wavex altar.wavex; do
name=${filename%.wavex}
ffmpeg -i "$filename" -filter_complex 'channelsplit=channel_layout=2.1[L][R][B]' \
-map '[L]' "${name}-m48.wav" \
-map '[R]' "${name}-drums.wav" \
-map '[B]' "${name}-bass.wav"
done
-2
View File
@@ -1,2 +0,0 @@
#!/bin/bash
jack_capture --channels 3 --port system:capture_3 --port system:capture_4 --port system:capture_1 "$@"
-2
View File
@@ -1,2 +0,0 @@
#!/bin/bash
jack_capture -jt --channels 1 --port system:capture_3 sermon.wavex
-18
View File
@@ -1,18 +0,0 @@
#!/bin/bash
# Worship
jack_capture --channels 3 \
--port system:capture_3 \
--port system:capture_4 \
--port system:capture_1 \
worship.wavex
# sermon
jack_capture --channels 1 --port system:capture_3 sermon.wavex
# altar
jack_capture --channels 3 \
--port system:capture_3 \
--port system:capture_4 \
--port system:capture_1 \
altar.wavex
-10
View File
@@ -1,10 +0,0 @@
#!/bin/bash
# Worship
jack_capture --channels 5 --port system:capture_3 --port system:capture_4 --port system:capture_1 --port yoshimi:left --port yoshimi:right worship.wavex
# sermon
jack_capture --channels 1 --port system:capture_3 sermon.wavex
# altar
jack_capture --channels 5 --port system:capture_3 --port system:capture_4 --port system:capture_1 --port yoshimi:left --port yoshimi:right altar.wavex
-4
View File
@@ -1,4 +0,0 @@
#!/bin/bash
name=${1%.wavex}
avconv -i "$1" -filter_complex 'channelsplit=channel_layout=2.1[L][R][B]' -map '[L]' "${name}-m48.wav" -map '[R]' "${name}-drums.wav" -map '[B]' "${name}-bass.wav"
+82
View File
@@ -0,0 +1,82 @@
#!/usr/bin/env bash
set -euo pipefail
usage() {
cat <<'USAGE'
Usage: ./set-pipewire-latency.sh COMMAND [QUANTUM] [RATE]
Commands:
status Show current PipeWire clock/quantum settings.
on [Q] [RATE] Force a low-latency graph quantum. Defaults: Q=128 RATE=48000.
off Clear forced quantum/rate and return to normal PipeWire behavior.
Useful quantum values at 48 kHz:
256 about 5.3 ms per block, safer
128 about 2.7 ms per block, good stage starting point
64 about 1.3 ms per block, lower latency but higher dropout risk
USAGE
}
metadata() {
pw-metadata -n settings "$@"
}
status() {
local output
output="$(pw-metadata -n settings)"
printf '%s\n' "$output" | grep -E "clock\\.(rate|quantum|min-quantum|max-quantum|force-quantum|force-rate)" || true
local rate quantum forced_quantum
rate="$(printf '%s\n' "$output" | awk -F"'" '/clock.rate/ { print $4; exit }')"
quantum="$(printf '%s\n' "$output" | awk -F"'" '/clock.quantum/ { print $4; exit }')"
forced_quantum="$(printf '%s\n' "$output" | awk -F"'" '/clock.force-quantum/ { print $4; exit }')"
if [[ -n "$rate" && -n "$quantum" ]]; then
awk -v q="$quantum" -v r="$rate" 'BEGIN { printf "\nCurrent block latency: %.2f ms at %s Hz\n", (q / r) * 1000, r }'
fi
if [[ "${forced_quantum:-0}" != "0" ]]; then
printf 'Low-latency override: ON\n'
else
printf 'Low-latency override: OFF\n'
fi
}
set_low_latency() {
local quantum="${1:-128}"
local rate="${2:-48000}"
if ! [[ "$quantum" =~ ^[0-9]+$ && "$rate" =~ ^[0-9]+$ ]]; then
printf 'Quantum and rate must be numeric.\n' >&2
exit 2
fi
metadata 0 clock.force-rate "$rate" >/dev/null
metadata 0 clock.force-quantum "$quantum" >/dev/null
awk -v q="$quantum" -v r="$rate" 'BEGIN { printf "Forced PipeWire quantum %s at %s Hz, about %.2f ms per block\n", q, r, (q / r) * 1000 }'
}
clear_low_latency() {
metadata 0 clock.force-quantum 0 >/dev/null
metadata 0 clock.force-rate 0 >/dev/null
printf 'Cleared PipeWire forced quantum/rate.\n'
}
case "${1:-}" in
status)
status
;;
on)
set_low_latency "${2:-128}" "${3:-48000}"
;;
off)
clear_low_latency
;;
-h|--help|help|'')
usage
;;
*)
usage >&2
exit 2
;;
esac
-12
View File
@@ -1,12 +0,0 @@
#!/bin/bash
qjackctl -s -p Church48K &
echo "Waiting 4sec to let JACK start."
sleep 4.0s
jack-rack -s bass /home/music/projects/music-production/jack-rack-presets/newlife/yamaha-trb &
jack-rack -s mix /home/music/projects/music-production/jack-rack-presets/newlife/m48-mix &
jack-rack -s mix_drums /home/music/projects/music-production/jack-rack-presets/newlife/drums &
jack-rack -s headphones /home/music/projects/music-production/jack-rack-presets/newlife/headphones &
meterbridge -n meter -t dpm x x x x x &
echo "Waiting 2 sec to let all the apps start."
sleep 2.0s
devilspie &
@@ -1,15 +0,0 @@
#!/bin/bash
qjackctl -s -p Church48K &
echo "Waiting 4sec to let JACK start."
sleep 4.0s
jack-rack -s bass /home/music/projects/music-production/jack-rack-presets/newlife/yamaha-trb &
jack-rack -s mix /home/music/projects/music-production/jack-rack-presets/newlife/m48-mix &
jack-rack -s mix_drums /home/music/projects/music-production/jack-rack-presets/newlife/drums &
jack-rack -s headphones /home/music/projects/music-production/jack-rack-presets/newlife/headphones &
meterbridge -n meter_bass -t dpm x x x x &
meterbridge -n meter_m48 -t dpm x x &
yoshimi -c &
a2jmidid &
echo "Waiting 2 sec to let all the apps start."
sleep 2.0s
devilspie &
-16
View File
@@ -1,16 +0,0 @@
#!/bin/bash
qjackctl -s -p Church48K &
echo "Waiting 4sec to let JACK start."
sleep 4.0s
jack-rack -s bass /home/music/projects/music-production/jack-rack-presets/newlife/yamaha-trb &
jack-rack -s bass2 /home/music/projects/music-production/jack-rack-presets/newlife/bass2 &
jack-rack -s mix /home/music/projects/music-production/jack-rack-presets/newlife/m48-mix &
jack-rack -s mix_drums /home/music/projects/music-production/jack-rack-presets/newlife/drums &
jack-rack -s headphones /home/music/projects/music-production/jack-rack-presets/newlife/headphones &
jack-rack -s headphones2 /home/music/projects/music-production/jack-rack-presets/newlife/headphones2 &
meterbridge -n meter_bass -t dpm x x x &
meterbridge -n meter_bass2 -t dpm x x x &
meterbridge -n meter_m48 -t dpm x x &
echo "Waiting 2 sec to let all the apps start."
sleep 2.0s
devilspie &
-9
View File
@@ -1,9 +0,0 @@
#!/bin/bash
qjackctl -s -p Onboard48K &
echo "Waiting 4sec to let JACK start."
sleep 4.0s
jack-rack -s bass /home/music/projects/music-production/jack-rack-presets/home/yamaha-trb &
#jack-rack -s mix /home/music/projects/music-production/jack-rack-presets/M48-Mix &
#jack-rack -s mix_drums /home/music/projects/music-production/jack-rack-presets/M48-Mix-Drums &
jack-rack -s headphones /home/music/projects/music-production/jack-rack-presets/home/headphones &
j2amidi_bridge &
-8
View File
@@ -1,8 +0,0 @@
#!/bin/bash
qjackctl -s -p Onboard48K &
echo "Waiting 4sec to let JACK start."
sleep 4.0s
jack-rack -s bass /home/music/projects/music-production/jack-rack-presets/onboard/yamaha-trb &
#jack-rack -s mix /home/music/projects/music-production/jack-rack-presets/M48-Mix &
#jack-rack -s mix_drums /home/music/projects/music-production/jack-rack-presets/M48-Mix-Drums &
jack-rack -s headphones /home/music/projects/music-production/jack-rack-presets/onboard/headphones &