Playback Templates - and how we might make them

After spending some time having to deal with assigning instruments over and over again/copy & pasting imported instruments onto my playback template instruments, I am beginning to wonder: when will we be able to create our own Playback Templates?

From what I can tell from the files I have found the playback templates in Dorico use a mysterious “Playback Template Generator” (comparable perhaps to Sibelius Sound Set Editor). The first file seems to tell Dorico what the VST is, and where to find it.


<?xml version="1.0" encoding="utf-8"?> 1.1 NotePerformer NotePerformer kMultiTimbralProgramChange 56535457494F416E6F7465706572666F NotePerformer NotePerformer 16 1 true> 0> \ \ What you also get is some instruction files that seem to link the given instrument to the correct "sound" in the given VST. instrument.keyboard.celesta Celesta

In a separate file you find the information telling the VST (through program changes in this case) which instrument to load.

Celesta Keyboard xmap.user.noteperformer.default 34 0 0

This is of course an example through Noteperformer and limited though it might be it makes me curious whether us users might be able to create our own Playback Templates following this model. For now we would be limited to VSTs that load instruments through Program Changes, but in the near future perhaps instruments may be loaded in other ways, like .FXB or VSTPreset files, or at least some way that will allow easier use of Kontakt or Vienna Ensemble Pro, etc. I’d love it if someone were able to tinker with this and see what they can get working!

Here is an example demonstrating how I was able to add a new “TestTemplate” Playback Template to Dorico.

There’s currently no way of creating user playback templates, but there are some improvements coming in this area in version 3.

Adding further playback templates. Dorico will load data for further playback
templates from subfolders within folders called PluginPresetLibraries and
PlaybackTemplateGenerators in system-wide or user-specific application data
folders, i.e.
§ Windows: %PROGRAMDATA%\Steinberg\Dorico 2 (system-wide)
or %APPDATA%\Steinberg\Dorico 2 (user-specific)
§ macOS: /Library/Application Support/Steinberg/Dorico 2 (system-wide) or
~/Library/Application Support/Steinberg/Dorico 2 (user-specific)
The name of each subfolder within these folders determines the name of the
playback template as it will appear in Dorico.
The two files loaded from the named subfolder within PluginPresetLibraries are:
§ presets.xml: a list of all of the presets or patches in a virtual instrument’s library,
defining for each the name of its corresponding expression map or percussion
§ presets_for_instruments.xml: a list of all of the default instrument types that
can be created in Dorico and the preset that should be loaded by default for
that instrument.
The named subfolder within PlaybackTemplateGenerators must contain a file
called playbacktemplategen.xml, which specifies the UID of the VST instrument
to load, the PluginPresetLibraries data to use, and some other parameters (such
as the number of MIDI channels provided by the instrument, the number of audio
outputs, and default send levels for the effects channel). The subfolder may also
optionally contain a .pluginstate file that should be loaded into the VST instrument
when it is instantiated.
It is not intended that end users should need to create their own playback
templates using these data files: this information is provided for the benefit of third
party VST instrument and sound library developers.

This is what we find in the Version History PDF. I can see that all of the components are there, but like you said Paul, it would take a lot of tinkering to get one of these things to work

(Just noticed this thread.) As Paul pointed out, Dorico 3 now allows user-created Playback Templates, which let you save Endpoints (i.e. collections of instruments and samples). This is a massive improvement, but you still need to create a large number of endpoint combinations to cover a usable range of instruments in a sample library.

I have create a “factory” Playback template for Garritan GPO5 and the ARIA Player: it loads one or more VSTs, assigns the plug-in to each Player with a unique channel number, sets the expression map – but it doesn’t actually load the samples, because the method of loading a sample programmatically is unknown.

The advantage of such a template over endpoints is that is will load every sample without having to save endpoints in a large number of configurations, and will be more efficient in its use of samples and plug-ins. (E.g. if you’ve only saved an endpoint for SATB+ organ, and your piece is for 12 voices and no organ, then a user template will load 3 VSTs, each with the organ sample. A “factory” template would load 12 voices into one VST.)

The key contains not just Program Change commands, but also a URI, which HALion uses. There may be other commands possible that some VSTs will respond to.

If you are saying that the ideal template for Garritan would automatically load a violin sample into the Aria player when you choose Violin in Setup Mode, isn’t this something that leads to complaints on the Finale forums, that it doesn’t load the sample desired (loads Violin Player 1 into both first and second Violin staves)?

Granted, having most of the instruments loaded into Aria slots (if that is what you are suggesting) would save some work even if later adjustments were necessary; but having a Template that distinguished between Violins I and II is probably not possible at least for a user to configure.

I am guessing you are not talking here about a template file with all instruments pre-assigned. Please correct me if I have assumed wrong.

I definitely would love to see fully functional Garritan Expression Maps, but I admit Garritan makes quite a few packages, some or most of which may require different Expression Map configurations. I applaud your interest and efforts in this area.