Is it possible to control fixtures with Ardour MIDI via ALSA only? No jack? If so, how?
I've tried everything I can think of to send MIDI data out of Ardour and then pick it up with QLC+ but can't get the fixture to do anything. (Fixture works fine from virtual console in QLCplus.)
Ubuntu 24 x86_64. Ardour 8.6 release. No jack installed on system whatsoever. Latest QLCplus, pulled and built from Github just now.
I tried making virtual MIDI devices, but that doesn't help.
Ardour MIDI connection window and QLC i/o looks like (imgur link):
https://imgur.com/a/ardour-qlcplus-midi ... ng-SvetsTH
$ aconnect -l
client 0: 'System' [type=kernel]
0 'Timer '
Connecting To: 144:0
1 'Announce '
Connecting To: 144:0, 139:0
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 32: 'Virtual Raw MIDI 4-0' [type=kernel,card=4]
0 'VirMIDI 4-0 '
Connecting To: 130:0, 128:0
Connected From: 129:0
client 33: 'Virtual Raw MIDI 4-1' [type=kernel,card=4]
0 'VirMIDI 4-1 '
Connecting To: 132:0
Connected From: 131:0
client 34: 'Virtual Raw MIDI 4-2' [type=kernel,card=4]
0 'VirMIDI 4-2 '
Connecting To: 134:0
Connected From: 133:0
client 35: 'Virtual Raw MIDI 4-3' [type=kernel,card=4]
0 'VirMIDI 4-3 '
Connecting To: 136:0
Connected From: 135:0
client 128: 'qlcplus' [type=user,pid=41873]
0 '__QLC__ '
Connecting To: 138:0
Connected From: 137:0, 32:0
client 144: 'PipeWire-System' [type=user,pid=3001]
0 'input '
Connected From: 0:1, 0:0
client 145: 'PipeWire-RT-Event' [type=user,pid=3001]
0 'input
Possible to control fixtures with Ardour MIDI via ALSA only? No jack?
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I tested on Ubuntu 22.04 with Pipewire 1.0.7 without make virtual midi devices, in Ardour I checked all midi tracks outputs to QLC+. In QLC+ I checked MIDI input2. When playing the midi tracks in Ardour I can see that is received in QLC+.
-
- Posts: 33
- Joined: Thu Jan 31, 2019 2:41 am
- Real Name: Cyrus
I'm still not able to get it working. Here is my setup (no jack, no a2jmidid, just ardour (ALSA) + qlcplus. Ubuntu 24).
My fixtures aren't doing anything. How can I confirm that midi data is getting to qlcplus? Which input should I choose? Why isn't the "QLC" option shown in aconnect -l anmd the ardour MIDI connection window appearing in the list inside QLC?
My fixtures aren't doing anything. How can I confirm that midi data is getting to qlcplus? Which input should I choose? Why isn't the "QLC" option shown in aconnect -l anmd the ardour MIDI connection window appearing in the list inside QLC?
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Can you share your project for testing?.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Your QLC+ workspace with the fixtures, functions and virtual console widgets.
-
- Posts: 33
- Joined: Thu Jan 31, 2019 2:41 am
- Real Name: Cyrus
Everything works under Jack. So it's not my fixtures, functions or virtual console widgets. It's something about the connections and the flow of midi data from Ardour (ALSA only) into QLC plus. And I've shared those screenshots.
How can I closer inspect the flow of midi data in order to zero in on where the data flow is failing?
How can I closer inspect the flow of midi data in order to zero in on where the data flow is failing?
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
With the workspace file we can see if there is any misconfigured option and do tests. For the screenshots you attach, I can only tell you that it is advisable to use different universes for the inputs and outputs. Have you tried the MIDI input2?.
In the attached image you can see that is working in my system (note the joystick icon in the universe 3) this indicate there is midi data in input2.
In the attached image you can see that is working in my system (note the joystick icon in the universe 3) this indicate there is midi data in input2.
-
- Posts: 33
- Joined: Thu Jan 31, 2019 2:41 am
- Real Name: Cyrus
I appreciate your help on this. A few questions/observations:
- 1. Why is two universes considered best practice? I've never done that before with the working Jack setup.
2. Yes I have tried all the inputs, including "input 2". No midi data ever appears. No joystick. Nothing.
3. QLC config file attached
4. Lots of qlc+ seg fault crashes when I am clicking around the different inputs, especially when I have the green dots set in Ardour
5. Why don't I have the same "qlcplus_(playback_0)_QLC_" line in Ardour that you do? Look at the image I shared earlier. Why is mine different?
- Attachments
-
- qlcplus_config_2019.qxw
- (201.19 KiB) Downloaded 58 times
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I'm using Ubuntu 22.04 with Pipewire 1.0.7 with Wireplumber and Ardour 7.5.0. Your QLC+ workspace is working in my system MIDI is received from Ardour in "input2"
Ardour is from this ppa: https://launchpad.net/~ubuntustudio-ppa ... -backports
Pipewire and Wireplumber are from this ppa: https://pipewire-debian.github.io/pipewire-debian/
1. Is a best practice to separate inputs and outputs in separated universes.
2. In my laptop is working on input2
4. Sometimes QLC+ freezes testing things in MIDI inputs, for example moving very fast buttons and sliders on my NanoKontrol2.
5. I think this is about Ubuntu version or that I have installed Pipewire. Or maybe Ardour version. Ny QLC+ input is listed in External in Ardour MIDI connections.
Ardour is from this ppa: https://launchpad.net/~ubuntustudio-ppa ... -backports
Pipewire and Wireplumber are from this ppa: https://pipewire-debian.github.io/pipewire-debian/
1. Is a best practice to separate inputs and outputs in separated universes.
2. In my laptop is working on input2
4. Sometimes QLC+ freezes testing things in MIDI inputs, for example moving very fast buttons and sliders on my NanoKontrol2.
5. I think this is about Ubuntu version or that I have installed Pipewire. Or maybe Ardour version. Ny QLC+ input is listed in External in Ardour MIDI connections.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I just tested with Ardour 8.6 and is working too.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
One more thing you are using Pipewire, what version?. Pipewire acts as a replacement of Jack Audio server. In Ardour -> Audio/MIdi config select connect to Jack.
-
- Posts: 33
- Joined: Thu Jan 31, 2019 2:41 am
- Real Name: Cyrus
Code: Select all
$ aptitude search pipewire -F "%c %p %d %V %v"
i pipewire audio and video processing engine multimedia server 1.0.5-1ubuntu1 1.0.5-1ubuntu1
i pipewire-alsa PipeWire ALSA plugin, for ALSA applications to output via 1.0.5-1ubuntu1 1.0.5-1ubuntu1
i pipewire-audio recommended set of PipeWire packages for a standard audio 1.0.5-1ubuntu1 1.0.5-1ubuntu1
p pipewire-audio-client-libraries transitional package for pipewire-alsa and pipewire-jack 1.0.5-1ubuntu1 <none>
i pipewire-bin PipeWire multimedia server - programs 1.0.5-1ubuntu1 1.0.5-1ubuntu1
p pipewire-doc libraries for the PipeWire multimedia server - documentat 1.0.5-1ubuntu1 <none>
p pipewire-jack PipeWire JACK plugin, for JACK applications to output via 1.0.5-1ubuntu1 <none>
p pipewire-libcamera transitional package for libspa-0.2-libcamera 1.0.5-1ubuntu1 <none>
p pipewire-module-xrdp audio over xrdp for PipeWire based systems 0.2-2 <none>
i pipewire-pulse PipeWire PulseAudio daemon 1.0.5-1ubuntu1 1.0.5-1ubuntu1
p pipewire-tests PipeWire multimedia server - tests and examples 1.0.5-1ubuntu1 <none>
p pipewire-v4l2 PipeWire V4L2 plugin 1.0.5-1ubuntu1 <none>
And here is the error (which appears in the console window and in a dialog window in Ardour):
Code: Select all
Log Messages:
ERROR: JACK: Cannot use real-time scheduling (RR/5) (1: Operation not permitted)
ERROR: JACK: JackClient::AcquireSelfRealTime error
INFO: Scanning folders for bundled LV2s: /opt/Ardour-8.6.0/lib/LV2
INFO: xjadeo version: 0.8.13
INFO: harvid version: 901
INFO: Loading menus from /opt/Ardour-8.6.0/etc/ardour.menus
ERROR: JACK: Cannot create thread res = 1
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Install pipewire-jack an try again. Ardour is trying to start jack server. With pipewire-jack you can connect to jack from Ardour.
-
- Posts: 33
- Joined: Thu Jan 31, 2019 2:41 am
- Real Name: Cyrus
Ok I did that and now I can get Ardour to open with "JACK" selected as the audio engine (without qjackctl or any explicit JACK stuff... only pipewire (and JACK internally I guess?)).
However, Ardour doesn't show any QLC MIDI destination at all.
If I start "a2jmidid -e" it'll show a QLC MIDI destination, but even after putting the green dot there for all MIDI tracks, I still don't see any data flowing to QLC+.
However, Ardour doesn't show any QLC MIDI destination at all.
If I start "a2jmidid -e" it'll show a QLC MIDI destination, but even after putting the green dot there for all MIDI tracks, I still don't see any data flowing to QLC+.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
After all the checks we have made. I think this is not a QLC+ problem. Maybe it's a sound system configuration problem.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Pipewire creates a MIDI Bridge that manages the Jack MIDI ports.
- sbenejam
- Posts: 607
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Hi I found the solution. Install the Pipewire and Wireplumber following this instructions. It seems that the Pipewire from Ubuntu 24.04 don't work as expected. I just tested with newly installed Ubuntu 24.04 and I get it work.
https://pipewire-debian.github.io/pipewire-debian/
https://pipewire-debian.github.io/pipewire-debian/