Update to VPO Template

I just released an update to the Virtual Playing Orchestra Template.

Changes:

  • Switched from LinuxSampler VST to LV2, now all plugins are LV2.
  • Created Ardour template, instead of a saved Ardour session.

It is documented here:

Download it here:

https://github.com/michaelwillis/virtual-playing-orchestra-ardour-template/releases/download/v0.9.0-beta/virtual-playing-orchestra-template-0.9.0-beta.tgz

1 Like

Hi,
I just realized, that the format of the sfizz plugin state.ttl seem to have changed.
In the template, I see:

	state:state [
		<http://sfztools.github.io/sfizz:sfzfile> <file:///opt/Virtual-Playing-Orchestra3/Woodwinds/flute-SOLO-PERF.sfz> ;
		<http://sfztools.github.io/sfizz:numvoices> "64"^^xsd:int ;
		<http://sfztools.github.io/sfizz:preload_size> "8192"^^xsd:int ;
		<http://sfztools.github.io/sfizz:oversampling> "1"^^xsd:int
	] .

however, nothing will be loaded in the instrument tracks. When I load the Flute manually, I see:

state:state [
		<http://sfztools.github.io/sfizz:sfzfile> <flute-SOLO-PERF.sfz> ;
		<http://sfztools.github.io/sfizz:tuningfile> <DefaultScale.scl> ;
		<http://sfztools.github.io/sfizz#cc001> "0.50393701"^^xsd:float ;
		<http://sfztools.github.io/sfizz#cc007> "0.78740156"^^xsd:float ;
		<http://sfztools.github.io/sfizz#cc010> "0.50393701"^^xsd:float ;
		<http://sfztools.github.io/sfizz#cc011> "1.0"^^xsd:float
	] .

Has someone updated the template, so that it works with the newest versions of Ardour, sfizz?
Regards,
Robert

Hi Robert! I haven’t touched this template in a while, but it would be good to give it a refresh. I’ll try to carve out some time for it, but I can’t make any promises right now.

I took the time to load all sfz. If you want me to create a pull-request, let me know.

@robertaramar Oh sure, a pull request would be welcome. I’ve been meaning to overhaul this template for quite some time, but you know, multi-year global crisis and all…

@Michael_Willis ,
do you have an Ardour project or a set of MIDI-files that you use to check the template for proper sound?
I would appreciate such file(s). You can contact me on PM via robert.schneider (at) aramar.de
Regards,
Robert

Here you go: Adapted to Ardour 6.9.0, new VPO location by robertaramar · Pull Request #9 · michaelwillis/virtual-playing-orchestra-ardour-template · GitHub

@x42 @paul I’m finally getting back to overhauling this template. I have found that when making a template that uses sfizz, I end up with a plugin state directory under the template, let’s say 232/state1 with a myfile.sfz, which is a symbolic link to ../../externals/myfile.sfz. The file under externals is another symbolic link to the actual file that I picked.

Ideally I would like to publish this template in a way that allows people to put their sfz files and samples just anywhere on their filesystem, and then provide them a reasonable way to select where the files are (without having to open up every instance of sfizz and select each file one by one). I suppose I could make an installer that prompts for the location of the Virtual Playing Orchestra, but maintaining installers for three different operating systems seems like overkill for a fairly lightweight project like this. Do either of you have any suggestions?

That should always have been the case (it’s really liblilv that creates these symlinks). That didn’t change since … ever.

When zipping up a session the intended solution is to dereference symlinks that point outside of the tree. I.e. collect all required files in the externals/ folder (the plugins/id/state/* links can still point to externals/).

I guess another option would be to ship the plugin states as presets. So the shared files would reside in ~/.lv2/

I discussed that very same matter with Robin and Paul on IRC.

I am also not a big friend of distributing stuff with symlinks, however, in this case, the links will always point to ~/opt/… because the template folder is fixed.

So as long as your VPO is at ~/opt/Virtual Playing Orchestra3, which is another symlink to my personal soundfont-folder, all should be good.

Yes, I understand it has always been like this. I remember trying to decide a way to handle this the first time I worked on this template. At that point I decided to standardize on expecting the SFZ instruments under /opt. Now Robert is suggesting that it should be preferred to find them under somebody’s home directory, which is also reasonable.

My comments about symlinks were mostly trying to determine if I correctly understand the template layout, and wondering if there is any other way around the problem. There are no standard expected locations for SFZ files and their corresponding samples, unlike something like ~/.vst3 (but even then I noticed that Ardour allows people to set up custom plug-in locations).

Maybe I should set up a single symlink under external that points to the virtual playing orchestra collection, and then document that the one symlink can be edited if needed.

At first sight, that sounds like a good idea, because only one symlink would have to be updated in order to change the VPO location.
If that works, that would be fine. I’m just afraid, you mess with the structure that libllilv sets up and expects and thus might fail.
Give it a try.
If you want me to change my PR, let me know.

I can use your PR as it is and experiment with a single symlink. I’ll let you know how it goes.

Good evening Robert
Where can i get your version of the vpo ardour template?
Also do you know if it works in Ardour7?
Many thanks

Hi,

here GitHub - robertaramar/virtual-playing-orchestra-ardour-template: An Ardour project template for composing orchestral music on Linux and, yes, it does work with Ardour 7.

Regards

Thanks Robert
This is great. I am keen to learn about augmenting the rhythm section of my
compositions with orchestration!

Hi again Robert
Unfortunately I’m getting Not found for the
virtual-playing-orchestra-template-2.1.0.zip
https://github.com/michaelwillis/virtual-playing-orchestra-ardour-template/releases/download/2.1.0/virtual-playing-orchestra-template-2.1.0.zip
link.
Do you know where I can get it?
Many thanks

Seems like Michael forgot to build a release for 2.1.0.
Easiest would probably be, get the stuff from github as a ZIP and extract the “Virtual Playing Orchestra” folder to ~/.config/ardour7/templates.
Then make sure you have the symlink in ~/opt/Virtual-Playing-Orchestra3 to whereever you extracted the VPO data from http://virtualplaying.com/

Hi Robert
I found the version 2.0.0.rc2 and extracted that to .config/ardour7/templates. Then I completed the setup as per instructions on git hub
Virtual Playing Orchestra3 is all in opt. The wav files are in the libs folder and the sfzs are in their section folders.

So far Ive found that it works partially. The instruments are not preloaded, so I loaded some manually and they play.

I dont quite understand what you mean about the symlink. I’m wondering if this is why sfizz is loading its default iunstrument? Could you explain a little more about the symlink please? Many thanks, I really appreciate your help.

The sfizz plugin for the various instruments is configured to load the soundfonts from ~/opt/Virtual-Playing-Orchestra3. That’s why your sounds are not loaded when you create a new session based on that template.
If you either unzip/copy your VPO data to this folder or create a symlink that points to your VPO data, then the soundfonts will be loaded automatically.


But you have to use the most current release, I don’t know whether 2.0.0.rc2 is already fixed to load the soundfonts from that location.