native VST synths/other plugins for Linux ? UPDATE 4/15/2015
Moderators: MattKingUSA, khz
Re: native VST synths for Linux ? UPDATE 6/6
Arr! Evidence someone else succeeded where I failed.
I have pretty much tried every combination I can think of in terms of Jack2 configurations, Alsa and midi combinations etc. I exhausted all the existing google-able threads and info on this topic.
I can get all the the devices to show up: Virmidi - Omni in bitwig, Virtual Raw MIDI in the Qjackctl Connector window (Virtual Raw MIDI 3-0 in my case). I modified the virmidi.js script so it recognises the 'Virtual Raw MIDI 3-0' rather than 'Virtual Raw MIDI 1-0'. I have confirmed with Gmidiroute jack that I have midi notes coming through as it is getting routed into bitwig 1.0.11. But I just have no midi signals emerging from Virmidi-Omni.
As I said, I was as exhaustive in my experiments (and exhausted as a result today after 2am knock off!).
Any suggestions would be welcome but, until your post, studio dave, I had decided I was not possible and I would just have to wait for further bitwig jack support.
It might be another 2am sleep time tonight damn you!
But in seriousness, at this stage, I have nothing left to try...
I have pretty much tried every combination I can think of in terms of Jack2 configurations, Alsa and midi combinations etc. I exhausted all the existing google-able threads and info on this topic.
I can get all the the devices to show up: Virmidi - Omni in bitwig, Virtual Raw MIDI in the Qjackctl Connector window (Virtual Raw MIDI 3-0 in my case). I modified the virmidi.js script so it recognises the 'Virtual Raw MIDI 3-0' rather than 'Virtual Raw MIDI 1-0'. I have confirmed with Gmidiroute jack that I have midi notes coming through as it is getting routed into bitwig 1.0.11. But I just have no midi signals emerging from Virmidi-Omni.
As I said, I was as exhaustive in my experiments (and exhausted as a result today after 2am knock off!).
Any suggestions would be welcome but, until your post, studio dave, I had decided I was not possible and I would just have to wait for further bitwig jack support.
It might be another 2am sleep time tonight damn you!
But in seriousness, at this stage, I have nothing left to try...
-
- Established Member
- Posts: 753
- Joined: Sat Nov 01, 2008 1:12 pm
Re: native VST synths for Linux ? UPDATE 6/6
Hey gray,
I wrote a step-by-step last night, hopefully it'll help :
1. Download virmidi.control.js
http://linux-sound.org/misc/virmidi.control.js
2. Install the ALSA virtual MIDI device driver
where N equals a number from 1 to 4. I suggest using 1 to shorten the device listing.
3. Start Bitwig and install the virmidi script in the Preferences/Controllers panel. From the script's GUI open each of the drop-down I/O menus and select the first blank selection, i.e. the first selection after None.
4. In an Instrument track select Virmidi Omni as the track input source.
5. Start the ALSA virtual MIDI keyboard
6. Connect the MIDI output from vkeybd to the virmidi device input. I use QJackCtl to make my MIDI connections.
7. Arm the track and master record buttons and start recording. Play some notes on the virtual keyboard. They should be recorded in the BW track.
Notes:
This may not work with Jack2, but I'm never completely sure which Jack is which. On my Fedora 19 system I have :
The script will not work if you have the a2jmidid bridge installed (or any other MIDI bridges). I also have no MIDI driver selected in QJackCtl's Setup, I don't know if it matters.
Make sure you use a virtual (or real) keyboard with ALSA MIDI support. JackMIDI isn't supported by the script.
Btw, last night I recorded MIDI output from the CM/GRACE algorithmic composition system into Bitwig. Worked a charm, but alas, so far I've been unable to record MIDI output from Csound, not sure why but I think it might be a Csound issue.
HTH,
dp
I wrote a step-by-step last night, hopefully it'll help :
1. Download virmidi.control.js
http://linux-sound.org/misc/virmidi.control.js
2. Install the ALSA virtual MIDI device driver
Code: Select all
modprobe snd-virmidi midi_devs=N
3. Start Bitwig and install the virmidi script in the Preferences/Controllers panel. From the script's GUI open each of the drop-down I/O menus and select the first blank selection, i.e. the first selection after None.
4. In an Instrument track select Virmidi Omni as the track input source.
5. Start the ALSA virtual MIDI keyboard
Code: Select all
vkeybd --device alsa
7. Arm the track and master record buttons and start recording. Play some notes on the virtual keyboard. They should be recorded in the BW track.
Notes:
This may not work with Jack2, but I'm never completely sure which Jack is which. On my Fedora 19 system I have :
Code: Select all
[dlphilp@localhost ~]$ jackd --version
jackdmp 1.9.9.5
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2012 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
jackdmp version 1.9.9.5 tmpdir /dev/shm protocol 8
Make sure you use a virtual (or real) keyboard with ALSA MIDI support. JackMIDI isn't supported by the script.
Btw, last night I recorded MIDI output from the CM/GRACE algorithmic composition system into Bitwig. Worked a charm, but alas, so far I've been unable to record MIDI output from Csound, not sure why but I think it might be a Csound issue.
HTH,
dp
-
- Established Member
- Posts: 2329
- Joined: Sat Jun 21, 2014 8:37 pm
- Been thanked: 257 times
Re: native VST synths for Linux ? UPDATE 6/6
I hope you're working on an eBook of linux audio. I'd shell out a $50.
Or $49, if you used vi in the editing process
Or $49, if you used vi in the editing process
-
- Established Member
- Posts: 753
- Joined: Sat Nov 01, 2008 1:12 pm
Re: native VST synths for Linux ? UPDATE 6/6
No eBook forthcoming soon. As a matter of fact, I'd like to retire completely from the writing dodge after I finish the next few articles. I just want to *use* the stuff.glowrak guy wrote:I hope you're working on an eBook of linux audio. I'd shell out a $50.
Or $49, if you used vi in the editing process
To wit: Anders Vinjar announced the availability of OpenMusic 6.9.0 beta for Linux. This may be a significant upgrade, it includes a new mode of behaviour described in "A Reactive Extension of the OpenMusic Visual Programming Language", an article by Jean Bresson and Jean-Louis Giavitto :
http://repmus.ircam.fr/_media/bresson/p ... update.pdf
So today I verified the new feature but didn't test it. Instead I played around with OM's MIDI output routed into Bitwig via the virmidi script. Nice. I've been using various VST synths as sound sources, including the mda synths and a Windows VST called Cyclone, a TX16w emulation in software by the guy who wrote the Typhoon OS, an alternate operating system for the original hardware. I have a bunch of sound files for the TX16w - I owned one in the day - and it's sweet to hear them again. I used the Airwave bridge to create the cyclone.so file.
As I said, I'd rather just use the stuff.
Best,
dp
Re: native VST synths for Linux ? UPDATE 6/6
Thanks for the step by step StudioDave but I had no luck.
Looks like our jack version were similar and I had already dumped a2jmidid as it conflicted with Bitwig.
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
jackdmp version 1.9.10 tmpdir /dev/shm protocol 8
I tried all the steps exactly as written, although I was pretty sure this was amongst the sequences and things I had already tried but I had the same result as previously. All steps successful but no midi. And when I check, after failing, GMidiroute is still showing the midi data is going into virmidi.
Looks like our jack version were similar and I had already dumped a2jmidid as it conflicted with Bitwig.
jackdmp 1.9.10
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2014 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
jackdmp version 1.9.10 tmpdir /dev/shm protocol 8
I tried all the steps exactly as written, although I was pretty sure this was amongst the sequences and things I had already tried but I had the same result as previously. All steps successful but no midi. And when I check, after failing, GMidiroute is still showing the midi data is going into virmidi.
Re: native VST synths for Linux ? UPDATE 6/6
In case I am in some way being stupid I will also add the only way I stepped out of the step-by-step I can think of. I changed the control script in the following lines:
host.addDeviceNameBasedDiscoveryPair(["Virtual Raw MIDI 3-0"], ["Virtual Raw MIDI 3-0"]);
host.addDeviceNameBasedDiscoveryPair(["VirMIDI 3-0"], ["VirMIDI 3-0"]);
This seemed obvious as my virmidi is showing up like that rather than as "VirMIDI 1-0". I am guessing this is to do with the number of other midi devices.
BTW I am on a low latency kernel, Ubuntu Studio 14.04. I have blasted all traces of portaudio from my system after a two major upgrades (when it seems to get reinstalled each time) so it is pure jack/alsa system.
all the best
Graham
host.addDeviceNameBasedDiscoveryPair(["Virtual Raw MIDI 3-0"], ["Virtual Raw MIDI 3-0"]);
host.addDeviceNameBasedDiscoveryPair(["VirMIDI 3-0"], ["VirMIDI 3-0"]);
This seemed obvious as my virmidi is showing up like that rather than as "VirMIDI 1-0". I am guessing this is to do with the number of other midi devices.
BTW I am on a low latency kernel, Ubuntu Studio 14.04. I have blasted all traces of portaudio from my system after a two major upgrades (when it seems to get reinstalled each time) so it is pure jack/alsa system.
all the best
Graham
-
- Established Member
- Posts: 753
- Joined: Sat Nov 01, 2008 1:12 pm
Re: native VST synths for Linux ? UPDATE 6/6
I can't think how that change could cause a problem, but what other MIDI devices do you have in your system ?gray wrote:In case I am in some way being stupid I will also add the only way I stepped out of the step-by-step I can think of. I changed the control script in the following lines:
host.addDeviceNameBasedDiscoveryPair(["Virtual Raw MIDI 3-0"], ["Virtual Raw MIDI 3-0"]);
host.addDeviceNameBasedDiscoveryPair(["VirMIDI 3-0"], ["VirMIDI 3-0"]);
This seemed obvious as my virmidi is showing up like that rather than as "VirMIDI 1-0". I am guessing this is to do with the number of other midi devices.
I assume you mean pulseaudio ? Portaudio is a very different item.BTW I am on a low latency kernel, Ubuntu Studio 14.04. I have blasted all traces of portaudio from my system after a two major upgrades (when it seems to get reinstalled each time) so it is pure jack/alsa system.
Best,
dp
Re: native VST synths for Linux ? UPDATE 6/6
Is it possible that you have a PCI midi interface interface (like some soundcard with a midi port) in addition to the virmidi interface.
In that case the first "invisible" entry will be whatever is the first midi interface you see in qjackctl.
To have meaningful names for the non-usb alsa midi interfaces in Bitwig currently requires a patched alsa-lib.
You can download the source from www.alsa-project.org alsa-lib-1.2.28.
Replace the file under src/rawmidi/rawmidi.c by the file rawmidi.c that i have attached below, build and install.
Be aware though that alsa-lib has a lot of dependencies.
While i'm at it, i also attached a small program that converts the midi notes 0, 1, 2 to bank select high, bank select low, program change.
The velocity values of the notes are then used as the controller values. Bitwig itself does not support program chagnes yet.
In that case the first "invisible" entry will be whatever is the first midi interface you see in qjackctl.
To have meaningful names for the non-usb alsa midi interfaces in Bitwig currently requires a patched alsa-lib.
You can download the source from www.alsa-project.org alsa-lib-1.2.28.
Replace the file under src/rawmidi/rawmidi.c by the file rawmidi.c that i have attached below, build and install.
Be aware though that alsa-lib has a lot of dependencies.
While i'm at it, i also attached a small program that converts the midi notes 0, 1, 2 to bank select high, bank select low, program change.
The velocity values of the notes are then used as the controller values. Bitwig itself does not support program chagnes yet.
- Attachments
-
- programchange.c
- (1.97 KiB) Downloaded 43 times
-
- rawmidi.c
- (27.67 KiB) Downloaded 45 times
-
- Established Member
- Posts: 2329
- Joined: Sat Jun 21, 2014 8:37 pm
- Been thanked: 257 times
Re: native VST synths for Linux ? UPDATE 6/6
Just in case it was missed, each generic script needs a unique uuid,gray wrote:In case I am in some way being stupid I will also add the only way I stepped out of the step-by-step I can think of. I changed the control script in the following lines:
host.addDeviceNameBasedDiscoveryPair(["Virtual Raw MIDI 3-0"], ["Virtual Raw MIDI 3-0"]);
host.addDeviceNameBasedDiscoveryPair(["VirMIDI 3-0"], ["VirMIDI 3-0"]);
This seemed obvious as my virmidi is showing up like that rather than as "VirMIDI 1-0". I am guessing this is to do with the number of other midi devices.
BTW I am on a low latency kernel, Ubuntu Studio 14.04. I have blasted all traces of portaudio from my system after a two major upgrades (when it seems to get reinstalled each time) so it is pure jack/alsa system.
all the best
Graham
you get a fresh one each time you visit
http://www.famkruithof.net/uuid/uuidgen
just replace the existing, with the new.
Cheers
edit: I thought portaudio was the main audio dependancy of linux bitwig?
Re: native VST synths for Linux ? UPDATE 6/6
Thanks - I'll try that with UUID and let you know if I have a breakthrough.
bitwig has worked very well without portaudio since I started using the 1.0.9 version. I think your understanding may be from early releases.
bitwig has worked very well without portaudio since I started using the 1.0.9 version. I think your understanding may be from early releases.
Re: native VST synths for Linux ? UPDATE 6/6
GG
Maybe I'm not understanding your suggestion properly. Here's what I did.
Generated a new UUID on the link you gave.
Pasted it into the script virmidi.control.js replacing what looks like the current UUID in the top line.
Left my other changes intact "Virmidi 3:0" etc. as documented above.
Went through all the steps again suggested by StudioDave but the results were exactly the same.
thanks for the suggestion anyway. I did make a type of breakthrough which was getting my existing midi controllers working alongside virmidi, but of course with no midi activity coming though virmidi. I did this by having the 'Alsa Sequencer Support' ticked in the Misc setup tab in QJackctl, but having the other Midi Driver as 'None' on the main Jack settings tab.
Another thing I tried was using the Hardware Instrument Router on Bitwig to route midi from there to VirMidis Output port. That didn't work either. I can do this with JackAss plugin very well anyway but I thought it was worth the experiment.
What a shame JackAss can't work as a writeable midi client.
Maybe I'm not understanding your suggestion properly. Here's what I did.
Generated a new UUID on the link you gave.
Pasted it into the script virmidi.control.js replacing what looks like the current UUID in the top line.
Left my other changes intact "Virmidi 3:0" etc. as documented above.
Went through all the steps again suggested by StudioDave but the results were exactly the same.
thanks for the suggestion anyway. I did make a type of breakthrough which was getting my existing midi controllers working alongside virmidi, but of course with no midi activity coming though virmidi. I did this by having the 'Alsa Sequencer Support' ticked in the Misc setup tab in QJackctl, but having the other Midi Driver as 'None' on the main Jack settings tab.
Another thing I tried was using the Hardware Instrument Router on Bitwig to route midi from there to VirMidis Output port. That didn't work either. I can do this with JackAss plugin very well anyway but I thought it was worth the experiment.
What a shame JackAss can't work as a writeable midi client.
Re: native VST synths for Linux ? UPDATE 6/6
The host.add... lines are useless, if your midi interface is displayed only as an empty space in Bitwigs dropdown list.
As you said earlier, you have more than one midi interface. If these midi interfaces show up as empty spaces in Bitwig, then,
by selecting the first empty space, you select whatever is the first midi interface that you see in qjackctl.
Either you apply my patch to alsa-lib, which gives you proper names for all midi devices in Bitwig, or you need to make
the virmidi device the first device in qjackctl by unloading/loading the drivers in the proper sequence.
As you said earlier, you have more than one midi interface. If these midi interfaces show up as empty spaces in Bitwig, then,
by selecting the first empty space, you select whatever is the first midi interface that you see in qjackctl.
Either you apply my patch to alsa-lib, which gives you proper names for all midi devices in Bitwig, or you need to make
the virmidi device the first device in qjackctl by unloading/loading the drivers in the proper sequence.
Re: native VST synths for Linux ? UPDATE 6/6
It sounds like that was the advice I needed drumfix; and some new linux challenges for me there. Many thanks for throwing that in. It does make sense of my failure to get this working.
I think patching and recompiling may be more learning that I wanted in one grab but I will look into it. The other option you mentioned of loading and unloading drivers sounds more accessible to my current skills although would still take me some research.
I am guessing from what you said that maybe I could luck upon the 'right' blank space selection to get a connection. Luck is something that will require no research and new learning so I'll probably try that first.
thanks again
I think patching and recompiling may be more learning that I wanted in one grab but I will look into it. The other option you mentioned of loading and unloading drivers sounds more accessible to my current skills although would still take me some research.
I am guessing from what you said that maybe I could luck upon the 'right' blank space selection to get a connection. Luck is something that will require no research and new learning so I'll probably try that first.
thanks again
-
- Established Member
- Posts: 753
- Joined: Sat Nov 01, 2008 1:12 pm
Re: native VST synths for Linux ? UPDATE 6/6
What does this command report :gray wrote:I think patching and recompiling may be more learning that I wanted in one grab but I will look into it. The other option you mentioned of loading and unloading drivers sounds more accessible to my current skills although would still take me some research.
Code: Select all
cat /proc/asound/cards
"Looks fade, luck runs out." Hopefully we'll get to a logical solution.I am guessing from what you said that maybe I could luck upon the 'right' blank space selection to get a connection. Luck is something that will require no research and new learning so I'll probably try that first.
Meanwhile, to pique your zeal a bit, I figured how to record MIDI date from Csound. It's a little more complicated than the other systems I've mentioned, but I have it working now. Csound produces simultaneous audio and MIDI data, I rigged Bitwig to record from Csound's designated audio/MIDI outputs, but as with all the other systems there is no synchronization, i.e., Bitwig is basically acting as a glorified tape recorder. Still useful though.
Best,
dp
Re: native VST synths for Linux ? UPDATE 6/6
I spent a bit of time with this last night and didn't get anywhere with my idea of picking the different blank spots. This concerns me that maybe patching and recompiling won't solve my problem. So I went looking around for other problems I could be having but I didn't really get anywhere.
Anyway I have:
gray@deepsound2:~$ cat /proc/asound/cards
0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350]
SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xc000, irq 20
1 [E2x2 ]: USB-Audio - E-MU Xmidi 2x2
E-MU Systems,Inc. E-MU Xmidi 2x2 at usb-0000:00:1d.0-2, full speed
2 [Alias8A ]: USB-Audio - Alias_8A
Livid Instruments, Inc. Alias_8A at usb-0000:00:1d.7-1.3, full speed
And then:
gray@deepsound2:~$ sudo modprobe snd-virmidi midi_devs=1
...adds this one on:
3 [VirMIDI ]: VirMIDI - VirMIDI
Virtual MIDI Card 1
Then, with no solution, I just had a play around with the awesome looping/mix view capabilities of bitwig
Anyway I have:
gray@deepsound2:~$ cat /proc/asound/cards
0 [Audigy2 ]: Audigy2 - SB Audigy 2 ZS [SB0350]
SB Audigy 2 ZS [SB0350] (rev.4, serial:0x20021102) at 0xc000, irq 20
1 [E2x2 ]: USB-Audio - E-MU Xmidi 2x2
E-MU Systems,Inc. E-MU Xmidi 2x2 at usb-0000:00:1d.0-2, full speed
2 [Alias8A ]: USB-Audio - Alias_8A
Livid Instruments, Inc. Alias_8A at usb-0000:00:1d.7-1.3, full speed
And then:
gray@deepsound2:~$ sudo modprobe snd-virmidi midi_devs=1
...adds this one on:
3 [VirMIDI ]: VirMIDI - VirMIDI
Virtual MIDI Card 1
Then, with no solution, I just had a play around with the awesome looping/mix view capabilities of bitwig