Transcripts
1. Introduction: My name is Will,
and thanks so much for checking out
my course here on building your own
orchestral template and playback template in Dorko. What we're going to cover in
this course has to do with a methodology and strategy for creating reliable
and maintainable, complex templates for writing orchestral music and getting
great sounding mockups, using advanced expression
map techniques and playback templates in Dorico. So we're
going to talk about switching and how we use
base switches and add ons. How we can actually
plan those out. I'm actually going to
give you a worksheet you can figure out that'll
help you along the way. We're going to talk about
family endpoints and projects. This is a method of managing your instrument
families one by one. It's going to make
your projects much more maintainable,
much more consistent, and you're going to get a
better sound from your high end libraries when you follow
this particular methodology. We're also going to
talk about versioning and using different libraries, how you can actually
use playback template creatively to switch between different collections
of instruments and even different ensembles. If you have an ensemble
that's a chamber ensemble, for example, versus a
trailer or hybrid ensemble. I'm going to show you how you could set that sort of thing up. But again, in a maintainable and easy to use
structure that's always going to get reliable and great sounding mock up results
from your Darko projects. We are going to
touch on some other smaller details like using the library manager to keep all of us sane while we're
doing this kind of work, you're going to get deep into some more advanced topics
related to expression maps. So I'm really excited
that you're here. Thank you so much for
checking out my course, and let's get started
in the next lesson.
2. Name Your Expression Maps with Purpose: Putting together
playback templates and project templates for advanced sort of full
orchestral music with large libraries, large orchestral
libraries, there are a few things to take
into consideration as you set forth setting up those templates so that they're
reliable and consistent. The first thing is
thinking about and understanding how a
playback template can be structured in
such a way that it works ideally with
your expression maps. And in the next several lessons, you're going to learn all about how that sort of
integration can be optimized to make things as
maintainable and manageable, but also at the same time make sure you're leveraging all those awesome features in
your library, right? So your playback template
is really number one. That's the place where all the instruments
with the endpoints that contain your
expression maps are all bundled together. And if you're not sure
what endpoints and playback templates
and expression maps are really how
they're all related, you will in the next
several lessons. The second consideration
is getting started by organizing things into
instrument families. So we already see this in typical score order
if you're working in orchestral music where you have your woodwinds and you have your brass and you have your
percussion and your strings. Things are already organized on a score in a way
that makes a lot of sense to transport
into this situation, too, where you want to
actually start collecting your expression maps
by instrument family, sometimes even playback
templates for unique families. And we'll talk about that
later on when we talk about using ensembles
and custom ensembles. The final thing to think about is version control or rsoning. Now, there's not really a traditional version
control system in Darko, where, you know, it'll actually
remember old versions. You can't actually
go back once you save a new version of
an expression map, it's not as though Darko saves a version that you
can access later on. Can use version numbers and
also edit a description for your expression maps to help remind you what
they're really for, maybe what ensembles
they include, which libraries they're
directed at, things like that. And that can really
be an important part of just staying organized. It's worth the extra
few minutes to just type in a little
bit of a description. And we're going to
talk about that and all these other topics
in the upcoming lessons. So without further ado,
let's get started.
3. Group Instruments into Sectional Maps: So why do we want to start with instrument families as the
basis for our expression maps, essentially because
instrument families tend to share unique instrumental
articulations. So, for example, you're
going to have flutter tongue on a flute or wind instruments, whereas you're going to
have Pitzcado on strings. You're never going to have
Pitzcato on a wind instrument. So there are articulations that are unique, some
that are in common. For example, using mutes, you might use mutes on strings
or brass but in general, it makes sense to keep your expression maps somewhat organized by instrument family. So we're talking
about winds, brass, pitched percussion is
going to have unique some unique articulations versus regular percussion
versus strings. So starting there finds a
nice balance between you're not writing an expression map for every individual instrument. I'd highly recommend against that just because you're going to be doing a
lot of redundant work, and over time, you
can actually collect huge sets of expression maps. And then a lot of the information there
is fairly redundant. And if you decide all of
a sudden that, you know, you wanted to have a different key switch that
triggers your legato patch, you got to go into, you know, your patch for violin
and your patch for viola and your patch for
Cello, and so on and so forth. And suddenly, a small, simple change takes
a lot of work. So there's a nice
sweet spot where you organize your
expression maps by family. And it is a nice sweet
spot between being prepared for flexibility
but also not having things be
so granular that they are overwhelming
to maintain, okay? So let's move into
the next lesson.
4. Set Up Endpoints for Your Playback Template: Prioritize playback
templates and instrument families along with endpoints to create a manageable and sort
of scalable system of expression maps. The starting point
for this, in my view, is to set up an actual
project where you collect all the instruments
within an instrument family. And this project is not
designed to write music into. It's simply designed
to connect up the right instruments with
the right expression maps, make sure that
everything is configured correctly and everything's
responding correctly, and then save that as an endpoint bring that endpoint into your
playback template, and then every time you load up that playback template
on any other project, you can be assured that
everything works correctly. Now I've done this
time and time again, and this is the most reliable
workflow that I've found. And I think really actually
the intended workflow behind Darco's optimization
structure of playback templates
containing endpoints, which then contain instrument
and expression map pairs. So I'm going to dive
in here to my project and show you what
exactly I'm doing. So I've got a project here
which is just called strings. That's all it is. It's
just a Darko project that contains my string section. So let's take a look at what
we've got in the setup. We've got a standard
string ensemble, violins one, two,
viola, Celi and basses. I've got those set
up here in the flow. And again, I don't have notes in here for
musical reasons. I'm just checking out that various expression map add ons and articulations
are going to work. So I've got these set up here
and I can play them back, and I can just be sure
that everything's working correctly
according to my model. Now, let's take a
look now that we've seen how the endpoint
project is set up, let's look at the
expression maps. So we're going to go into
the play mode over here. And I've got the
strings loaded up here. This is really the
only VST that we need is one version of
the VE Pro strings. This is a Vienna Ensemble Pro. It is connected to
an external thing. If you were using sign
player directly or maybe contact or
another library, then you would, you know, maybe not be using
Vienna Ensemble Pro. You'd actually have an
instance of contact or something here with
your violin in it. But what I've got
here is violins are linked to the instrument, Viola, they're all going
to the same instrument, but you'll notice they're
going on different ports. The violin is port one. Violin two is port two, viola, Celi and so on. They're iterating
through port numbers. Now violin one has the correct expression
map. Violin two does not. So what I'm going to do is
I'm going to open this up, take a look at the
expression maps. We can see I've got one in here. This is called Maestro strings. And this is one
that I made myself. You can see that it consists of base switches and then add ons. Okay. So I've got all
the add ons in here. I've made a variety of custom playback techniques
and playing techniques. And really the focus
of this module, however, is how you can build this playback
template that's reliable. So we're not going
to get so much into base switches and add ons as I do in some
of the other modules. What I want to look at
is the endpoint setup, which is this cog right here, because although we've got
our family of instruments, our string family set up
here, and they're all loaded, they're playing back, we want to make sure that they're not only loading the right instrument, but the right expression maps. You can actually come in
here and this gives you a nice view for all the instruments in your endpoint project. And
I'm going to come in here. I'm going to make sure
that every one of these has my strings setup. And we talked earlier about setting up
expression maps unique to an instrument family because an instrument family often
has its own articulations. In the case of strings,
we have things like Pit scato which don't belong to any of the other families to
percussion or brass or wind. So it makes sense that we have a strings only expression map. But we want to make sure that the expression map is correctly assigned to each of these instruments that we
have the port assignment, again, one for each instrument. And although this is
a little unintuitive. In Darko, if the
channel is set to one, but we're using channel
switching and let's say, a staccato note on Viola
goes out on Channel three, it'll still do that, even though the channel
is set to one here. So you don't have to
worry about this. If you're doing
channel switching, just leave it on one, okay? And we don't have
any percussion maps because this is a
string library. So I'm going to hit
Well, I could hit Okay. I'm going to hit Okay,
just to close that out and save it. Into the project. And now we're ready to implement this into our
playback template, okay? So we've got the
instruments loaded, and we've got the expression
maps assigned to them, and they are playing
back correctly. So now what we
want to do is save that as some sort of
reusable component. And the reusable component that Darko has designed for us
is called an endpoint. This is going to be
an endpoint that represents our string section. And this is my Berlin
Series strings. If I was using CSS strings or maybe Spitfire or
another string library, I may create a different
endpoint project just for that so that when I'm building my playback templates, I could choose endpoints for
the libraries that I want. But I'm focused
here on just using the Berlin series
in these examples. So when I want to save
this as an endpoint, I can do that from
the endpoint setup. I can see everything set up. I'm going to click
down here and say, save Endpoint configuration. And this endpoint
configuration file is going to save all five
of these instruments, along with their
expression maps, and it's also going to
correlate the fact that these are um not just loading
Vienna Ensemble Pro, but, for example, that this is a violin section,
not a solo player. These are all sections. And this is an important
distinction that if you have solo
players and then you load an endpoint containing solo players onto
section players, they won't line up. Darko won't realize, even though they may be both
called violin one, they actually have to
be section players or soloists in your endpoint, if you want them to apply
in your playback template. So back here, I'm going
to save this here. As an endpoint, and it's going to inherit this
name right here, which I'm going to just keep.
And I've done this before. So when I save this,
it's going to ask me if I want to overwrite.
I'm going to hit Okay. Alright. Now I'm
going to go up to my play menu and I'm
going to come down to the playback menu or sorry,
playback template option. And I can create a new
playback template if I want. I could just go ahead here
and create a new one called, you know, New Playback Template. Let's just go with that name. And I might unlock
this and go into description and
just say, you know, this is Berlin Strings and
is a demo for the course. Like that. All right. Now when I lock that, I'm going to see that in the future. This may tell me, Oh, it's CSS strings or
this is Spitfire, or this is a mix of iconica sketch and other
lightweight libraries. This is note performer, whatever it is that
you're using, right? So I've edited this
playback Template. The title and the description, but I actually have to
enter some endpoints in the entries in order for this playback template
to actually do anything. So the two things I'm going to do is I'm
going to go in here. I'm going to select
strings main, and you can see that I've
created as part of my workflow, an endpoint for just
about every kind of collection that I am going
to be using commonly. I'm going to go ahead
and select strings. Now, in the event that
there's a string instrument that is not included
in this endpoint, I may want to use an
automatic catch all for, say, this factory playback
template, iconica sketch, Halien symphonic orchestra,
Halien Sonic selections, Olympus, and Groove agent SE. If I select that what that's
going to mean is that any instrument that's
not included in this will automatically kind
of have a catch all here. That's, that's optional,
but a nice thing to do. So now I'm going to click Save, and now I have this
new playback template. And whenever I load it, go ahead and hit Apply Okay. We're going to
find, for example, that it unloads everything
from this region, and it just loads
what is needed. The VE Pro strings instance. Everything is connected
up and everything has the right expression
map associated with it. That expression map is
going to be connected up. And now, anytime I use that playback template and load that onto any
other project, it's going to look for
a violin one section, violin two section,
viola section, Celi section, and
double bass section, and it's going to
apply these settings, this Vienna Ensemble
Pro instance, along with these
expression maps. It's going to load them
into those section players. So by doing this on
a per family basis, it makes it a little
more manageable for me to make changes, for me to manage endpoints for each individual string
library I have, for example. And I really can't
overemphasize just how important it is to have this all be manageable
because over time, you'll invest a lot of hours into getting these
things to sound just right. If over that course of time you're building
something that is organized and structured
based on instrument families, based on specific instruments, based on a proper
switching structure, which we're going to get into. All that stuff is so important so that when you're a
year down the road, two years down the road, it's not just a house of cards, okay? Now, if you have any questions
about how this is set up, maybe questions that are unique to your libraries
or your setup, remember, you can
always post in the Q&A, and I will get back
to you about that. You can always message
me directly, as well. But for right now, that's it
for this particular lesson. Let's move forward
into the next lesson.
5. Design a Reliable Switching System: The first stop on our road to creating the ideal
playback template and project template
is in identifying what base switches and add ons we want to use in
our expression map. Now, the way that I've
approached this and the way that I'm
recommending through the course of this module
is to organize a hierarchy of instrument families
to base switches, add ons, and then also using
conditions for note links. And we're going to
get into all of that in the course
of this module. So far, we've talked
about collecting instrument families together and accessing those
individual instruments using Mi ports in
Vienna Ensemble Pro. There are other ways to do this, but that's the way that I do
it because I like to have Vienna Ensemble Pro always
with my instruments loaded, whether I'm using Darko, or I'm using base or I'm
using logic or whatever. Okay? So that's what
you're going to see here is that
instruments are ports, that base switches are channels. And again, base switches
are things like staccato, legato, sustain, Piscato
fundamental articulations. And I'm just using strings
here because we're following the thread of my last video where we were
looking at strings. But if you're in brass,
and you might be looking at Marcato and you
might be, you know, looking at specific
fundamental articulations that are unique to that
family of instruments. So that's what
channels are used for to switch between
those base switches, the things that are
mutually exclusive. Then we're going to be using
Mi CCs to control add ons. These are things like
consortino where it's not a fundamentally
unique articulation, it's sort of an add on. It's something on
top of, you know? So let's take
Sultasto for example, in a string library. Sultasto or consortino would
be something that you could apply on top of other
base articulations. You might have a base switch
of natural or legato, and those might be two different channels for base switches. But they could both
have this add on of consortino on top of
them because there would be cases where you'd want a sustained consortino and then a situation where
you'd want legato, consortino and so forth. That's why we're differentiating between base switches with channels and add
ons with midiCCs. Then the final aspect of this is using note durations
for conditions. And this is really
key for getting a really dynamic
playback more or less automatically from your library. And I'm going to show you
how that's implemented. But I want to start by
how do you plan this? So let's go into
an example here, and you can download this
along with this module. This is an example, sort
of spreadsheet chart of how I've set things up. These are my
instruments over here. So I've got my fundamental
instrument sections, winds brass and strings. I'm not using I don't have percussion and
pitched percussion in here, because a lot of
these base switches and add ons don't apply. So I've got these instruments on winds and these
are unique ports. All my brass and all
my string sections. And this is based on
the Berlin series. So I'm highly invested personally in expression
maps for the Berlin series. It just makes sense to
keep going with them. I really like the sound
of their libraries. But if you're using
another platform, you can do the same thing, load your libraries into your Vienna Ensemble
Pro instances and give each one of
the instances or sorry, each one of the instruments
a unique port like so. Alright? So I use this chart just to make sure that
I'm not accidentally giving the same port to
more than one instrument in the same family because
then this would break down. The next thing we're looking
at is base switches. And in addition to
this spreadsheet, which has my example
values in it, there's another one you
can download along with this module that's just blank so you can start
sketching your own. Okay, so I'd recommend
you do that. These ones that I've created here that start with
the little Tilda sign, these are all based on
conditions or note lengths. So here I've got crescendo
long, crescendo short. I've got D is short for
detached or detache, L is for legato. So I have a detached version and a legato version
of the sample. But it's based on the assumption that the condition is very long. When you're in an expression
map like this over here, and I were say to
choose natural, I can actually set a condition
here that says, Okay, if the note length is and
then I get these choices. These are the only
choices we're given. These are not strict because they are relative
to whatever your tempo is. But generally, very
short would be like a 16th, short would
be an eighth, medium would be a quarter,
long would be a half, and very long would be
a whole note or longer. So you can set up these
conditions that way, and then that's what
I have over here, and I've just renamed
the base which is with this Tilda so that
when they turn up in my playing lane
in the key editor, I can always determine that
those are condition based. They're not actual playback
techniques that I've created. They're condition based.
So that's what those are. And the durations are
written over here, so I can sort of just
keep track of that. And then what channel they
would go onto, right? So crescendos always
go out on Channel ten, decrescendos always on 11, swells are well,
swells are on 12. There they are. And then the detaches are
always on Channel one, Legato is always on Channel two. So that's what the
channel is telling me. Then below those
condition based ones, I have my fundamental
articulations. So these are my base switches that I control with channels. You'll see that the CC 70
value for all of them is zero, and that is because zero
is the natural setting. So there's always going
to be a basic staccato, and I'm going to put
that on CC zero. So the main thing
in this table to take note of is that
each one of these, I've determined is a
fundamental base switch. These are not going to occur
together at the same time. They're mutually exclusive, and they've been assigned
their own channel. Now, in knit, this is
what's going to load up in that moment before
anything has been applied. By my expression map
and by the notation. So a knit generally is just
set to sustains or naturals. But you can see that I have
other unique channels. And again, I'm doing this in a spreadsheet so that
I can make sure I don't assign the same channel to more than one by accident. I have a few other
fields over here, like what my negative
delay values are for some of my shorts. That would be -25 milliseconds. Again, this is unique
to the Berlin series, and those are just kind of rough estimates that I've
found helpful. So instruments and ports
in the upper left corner, base switches and conditions
over here in the main table. And then over here on the
right, we have add ons, and these are controlled
with medi CC values. So I've got the natural.
This is just your basic. That's always going to be zero, whether it's the basic staccato, or it's the basic sustain
or it's the basic Pitzcado. But let's say that I
have a staccato bold, then I would send that out on, let's see, staccato bold. We'd go down to staccato here,
which is on Channel three. Regular staccato is channel three with a CC value of zero. Whereas over here, if I
wanted to play staccato bold, I would actually have my CC
70 would have a value of six, and it would be stacked on
top of the original staccato, which is already sending
to channel three. So I'm using CC 70 for
controlling all of these add ons, and you see that they
all have unique add ons. These are actually
scale runs which only pertain to one of my
violin instruments. But you have other things
down here portamento, sul ponticello, soft, tremolo, different kinds of
trills, forte piano, sforzando, all of those
are getting unique values. Now, these trill values are being covered
by a different CC. They're being
covered by CC three, and that's just the way that the sign player defaults
CC 70 and CC three. I can actually change in the sign player whether
or not I want CC 70 to be controlling articulation
switching or whether I wanted CC 71 to control
that. I can change that. But I've gone with the defaults. Same with CC three controlling performance characteristics like vibrato or in this case, the trills and the
interval of the trill. So I've put all this
into a spreadsheet. Like I said, I've actually provided you with this demonstration so
you can look at it, but also a blank version, so you can start writing
out your own and organizing things based
on ports for instruments, channels for base switches, a Mi CC for add ons, and then conditions for
note links, alright? Keep in mind that I am
using Vienna Ensemble Pro. Not all environments are going to be as flexible
with midi ports. For example, sign player is not directly allow me to organize
things based on Mi ports. Contact does, but it's limited. It's not quite as
flexible as the number of MIDI ports that you
can use in VE Pro. So if you're not using
VE Pro and you have a question about how you can
organize this, let me know. Reach out in the Q&A. Tell me what library
you're working on. Tell me what you're trying to do, and I can certainly help. And if there's
something that a lot of different students
want and answer to, I'll make a supplementary video as well to cover
that. All right. So I hope that helps
explain how you can go about building a good
switching structure, thinking about how you
want to incorporate all the articulations and then articulation
variations from your favorite libraries
into a structured, organized system and start with a spreadsheet before you even go into creating
expression maps. Once you get into
creating expression maps, if you have this spreadsheet
all written out, it's going to be
a piece of cake. You just look it
up, you fill it in. You look it up, you fill it in. And it can be tedious. Sure. But once it's
done, it's done forever. You've got your expression
maps loaded up. Plus, if you ever forget, which you probably
will, you know, what did you have
Harmonicsigned to? You always have a cheat
sheet you can go to and refer to it right
away in the event that you wanted to create
a different expression map or maybe stay consistent
across the libraries. I will make a quick mention I do stay consistent among
other libraries. So if other libraries
are also using Pitzcato and portato and I'm
using these same add ons, I'm going to use the same
values so that I always know, for example, bold is
a CC value of six. In every library, I'm
going to make sure that CC seventy's value of six
always triggers bold. Otherwise, it's going
to get too confusing. So having a spreadsheet,
a cheat sheet, if you will, is going to really accelerate
the process for you. If you have questions,
please reach out to me, and now we're going to head
until the next lesson.
6. Safely Share and Reuse Expression Maps: Spend significant amounts
of time developing these endpoint configurations
and endpoint projects, your playback templates,
your expression maps, you're developing assets
that are extremely valuable, and there's going to be a time when you want to make sure that
these are backed up, and there also may
be a time when you need to collaborate
with others, you want to share them so that you guys can be working
on the same pages. So I'm going to go
over how you could manually handle importing and exporting these valuable assets. I'm also going to show
you how you can use something called the
library manager, which is not fully automated, but really provides
a nice overview for managing exactly what you're
exporting and sharing. Should you be collaborating
with somebody or trying to set up some backups so that this valuable
data is protected. So let's hop into
Project and take a look at what this
might look like, okay? So the manual approach is to simply open up the expression
map window, like so. And go down here and you
can export this library. So I've got that
spreadsheet or sorry, expression map for strings. Selected, I'm going to
click Export Library, and at this point, I can
export it however I want. And this is going to represent
that expression map. So if I give it to a
collaborator that I'm working with or an orchestrator, then they can load this into their Darko project and have exactly the same
expression map set up. Now, this is just an
expression map, right? I've set it up for
the Berlin series. If the orchestrator doesn't
have the Berlin series, this expression map isn't obviously going
to work reliably. So these expression maps don't give them everything
that they need, but they do save some of the
most valuable information here that we as composers are responsible for building
these expression maps. So that's one way you can
manually do this is export. And then, of course, if somebody provides you
with a file like that, you can come in here and
you can import the library and find it on your computer
and go ahead and import. That's sort of the
manual approach for importing and exporting. You may want to do this not
only for collaboration, but also just for
backing up your files. But there's another
very flexible tool up in the library menu. At the very bottom, we
have library manager. And I'm going to
mention this export library in just a moment. Let's open up the
library manager and see what we're looking at. We see here is a variety of different sort of
groupings on the left. So these options over here
are the main settings, engraving options,
layout options, notation options, and so on. These collections are different
types of data that you may have optimized or
updated in your project, including things like font
styles, expression maps. Down here, there's
percussion kits, note head sets, things like that that are unique chord symbols. Let's see, we've
got Cord diagrams and the way the chord
symbols appear, custom ensembles if you've
created custom ensembles in the setup mode all of that information is
stored in this project, and you can see what's different and what's the
same, but compared to what? So here we are, we could
look at factory settings, and I could say, What are all the things
that are different? Well, first of all, I can see over here
with these sort of red, not equal signs, that indicates that
something is different. If I go to playback options and I have differences
selected here, it's going to tell me, okay, there's something different
about the way the click is. I can expand this and see, Oh, the factory settings have a different count
in than my project, the way that dynamics
are being handled. These are different. The
minimum dynamic level, the dynamic curve power, these are different values. If I wanted to go
ahead and sync this, I can just click that button. And then hit Apply, and now that's been set in
my current project. So you can use this export
library option over here if you kind of want to
export everything from your project
to another person. But it's really just as easy to send them a Darko project, which is kind of what I prefer. So, oops, so I've
lost my window there. Let's open that up again. So I often go for
this option here, Darko Project. I'm
going to load this up. Let's just take my example here, greatest score ever, or you can drop a Dark
O project in here. And this likewise is telling
me what's different and allowing me to go ahead and sink whatever I want to
in this project. I hit Apply, and it's
going to carry that over. So what are some of the
things that I might want to use this library
manager to maintain? Well, let's take an example where let's say that
I've just acquired a really nice high end
modern string library that has a variety of playing and playback techniques
that are better and superior compared
to my older library. However, six months ago, I wrote a really
wonderful piece, and I'd love to hear how it sounds through my new library. But when I import
my expression maps, I don't have the playing
and playback techniques on the old project
for my new library. Maybe I can load the new
playback template on it, but it doesn't have the
playback and playing techniques that are
needed for that new, more advanced library
to trigger everything. So I can come in here. I can
use the library manager, and I can go in here and
I can look for down here, playing and playback
techniques like this. I can just say, you
know, just sync all the playback techniques and sync all the
playing techniques, hit apply, and then
there we are. I'm done. Now I can know that
my current project, even though it is
actually the project I wrote six months ago
with some other library, I know that it now
contains all of the modern playback and playing techniques for my
more modern projects. That way, over time,
as my libraries change as my collection
of percussion kits, expression maps,
changes and grows, I can always go back to an
old project, open it up, and then I can
basically sink its sort of knowledge base or
to use Darcos Lengo, the library with my newer
projects where I've got more expanded expression maps or percussion kits and
so on and so forth. So the library manager gives you this very powerful
visual tool for breaking down exactly how your current project is
different from another project. What needs to change, and you can cherry
pick what you want, import it into your project. That's sort of use
case scenario. Another use case
scenario is where you're creating your
project templates. So this is different from
your playback template, which is a set of endpoints containing instruments
and expression mask. Project template is literally
one of those things you see in the hub that opens
up when you start up Darko, and you say that you want to start with this
project template. Let's say that you want to
update your project template with this new fantastic library that you've recently
acquired. It's very easy. You open up a blank project
from your template as it is. You then open up
the library manager and drag in your newest project, see what's changed,
sync it all up. Hit Apply, close the
library manager, and now resave your template. And you can know now that
your template in Darko, your project template contains all of that new work you've done adding new
percussion kits and new playing techniques
and playback techniques, maybe adjustments to layout
options, that sort of thing. But you're still
having the benefit of that old project
template as well, knowing that maybe it
has the right ensembles in it or whatever it is that speeds up your workflow
to the maximum degree. That's so key to be
able to move past the technical aspects of Darko and stay in
that creative flow. The library manager helps us figure out what the differences between our older
and newer projects are and then sync up
what we need to get that fixed right away in
a very intuitive way, much easier than going
through the settings from project to project and pulling
our hair out of our heads, trying to get everything
synced up manually. So, again, if you
have questions, posting the Q&A, and
without further ado, I'm going to move forward
into the next lesson.
7. Manage Versions Across Different Libraries: In the last lesson, we talked about reasons
you might want to use the library manager to sync up projects because you've
acquired a new library. So building on that example
where you've acquired a new library is something we're all going
to do eventually, you may also want a
workflow that's reliable and consistent for taking
your expression maps, your old expression maps, and sort of managing how
you move them forward into the next generation of your library or maybe to an
entirely different library. There's a few different
things you can do here. What I would do typically
is I'd start by cloning my old expression map, and then I would go ahead in and change add any playback and playing techniques
that we might need, and then make sure
that that all gets integrated into my
endpoint projects, resave the endpoints, swap them out in the
playback template, maybe creating a new
playback template, but also using version numbers and expression map descriptions. I want to walk you
through a demo of what that all looks like. So we're back in this project. Let's assume that I've
acquired a new string library. I no longer want to
use the Berlin series. I'm going to use, let's say,
CSS strings, for example. So what I'm going
to do here is I'm going to go into my
Expression Maps. Find the expression map that is, you know, my most
up to date one. And I'm going to click on
this Clone button down here. And then I'm going
to maybe just rename this up here, call this CSS. And I'm going to go ahead and
kick the version up to two, and I'm going to write
in a description that says, you know, clone the original Berlin
X Map and updated for CSS, you know, 2025,
something like that. Okay, and I lock that up. And then whenever I load
up this expression map, I'll be able to see, Okay, they have very similar names, but this one's
description is empty. This one reminds me exactly where it came
from and what I did. I could even add in
description about specific playback techniques and playing techniques
that I added, right? But by adding a description, and then over time, you may want to increment
these versions, that's a great way to
make sure that the future you has insights into what's unique about
that expression map, where it came from, and
so on and so forth. Now, in order to swap
it out in my template, in my playback template, I'm going to come over here
to the Expression Map. I could do this on a per instrument basis
with this drop down, or I could just open up my endpoint setup
and then come in here and change this all to
my new CSS library, right? So now I'm going to
come in here, like so. I'm just changing all of these, and this is a great example
of how useful it is, how streamlined my
workflow is because I have a project dedicated to managing the endpoint for
a family of instruments. It's just so easy here. Now I'm going to save this
endpoint configuration, but I'm going to
call this CSS, okay? So now I hit Okay there. I can go up to my
playback templates right here in the play menu. And I'm going to take my original playback template
demo that I had created, which contained my sort
of first basic strings. I'm going to go ahead
and clone that, as well. So I'm going to clone this
and I'm going to call it CSS. Like so, right? And I'm going to
remove the original, and I'm going to add
my Ve Perot strings main CSS, like so. I still want them to be in
the right order so that the CSS strings expression
map will take precedence. But if there's anything that's not included in that library, it'll be caught by this sort of catch
all factory endpoint. Okay? Now I go
ahead and hit Okay. And now what we'll
see is that when I load different
playback templates, if I load new playback template, this is going to go to
the maestro strings. And then if I load new
playback template CSS, it's going to go to the
Maestro strings CSS. Let's just check that
out. I hit Apply, and we're going to
see that it gets set to the old strings. If I go back again to
playback templates, and I select new playback
template CSS and hit Apply. We can see that it switches
the expression map for us. So in that way, we can
actually sort of create versions that are new for our new libraries or even
just different libraries. Sometimes we have
multiple libraries, and some things work really
well in a trailer cue. Other things work
really well in sort of more for chamber music or for orchestral or
for film scoring. So we may have different
libraries and, indeed, not just string sections, but entire playback templates, where the percussion
libraries are different. Maybe you're using
damage for sort of a hybrid percussion
library or you're using tycos versus another situation where you're using
orchestral percussion, traditional orchestral
percussion, things like suspended
symbols, and so on. So you can actually
have playback templates and endpoints that
you're managing. And through the
individual descriptions, you can also see how
those expression maps have been changed,
where they came from. And you can understand
the hierarchy over time. It doesn't become
a house of cards. Instead, it becomes
an asset that you can navigate reliably and easily. So I hope that helps give you a framework for
doing that sort of relatively complicated work in the simplest and most
reliable possible way. And let's move forward
into the next lesson.
8. Design Reusable Templates for Your Ensembles: As you work to create your own playback templates and your own collection
of expression maps, it's natural to work with a much broader variety
of instruments, and it's typical when
you're trying to work with a large orchestra that you may need to incorporate some less than totally traditional
instrumentation. Now, an example of this came up for me earlier this year when I was working with a collection of Middle Eastern instruments, and I had taken
some time to set up expression maps and set up
the settings and load them as instruments so that
I could load them into projects for the
month or two that I was working on those tracks. Now I'd like to actually create a Middle Eastern
percussion section, but an ensemble that's unique
to Middle Eastern music. I thought it would be helpful to show how you can do that
and then how you can make sure all of this syncs up with your playback template because I'm sure
it's something that a lot of you out there
are going to need to do. So what I've done here
is I have a project. I've gone ahead and imported a flow from one of
my old projects, one of the projects
that was focused on Middle Eastern music from
earlier in the year. And that process of importing a flow imports the
instruments as well. So I've been able to
kind of collect them in my current
instrument collection. And if you go up to
library in instruments, you'd see over here, I could look up an
instrument for example, like the Dombek and the Dobak is a Middle
Eastern instrument. These instruments
happen to come from a particular native instruments library that's focused on
Middle Eastern instruments. And I'm going to put three
percussion instruments from the Middle Eastern
collection together into a percussion
ensemble, the Dumbek, the Darbuka and I
think it's called a ik or RC and
that's a frame drum, like, somewhat similar
to a tambourine. So what I'm going to do is
back in my setup mode here. I'm going to click down
here on an ensemble. And you can see
instructions written here for creating your
own custom ensemble. And as long as this is on Build, I'm going to go ahead and type in Darbuka and there it is. And I hit tab, and that
allows me to search for more instruments and just
kind of preserves that one. I'm going to do the Doom
Beck and then hit tab. And then the final
one is right there, I'm going to hit tab and then
I'm going to click Save. And I'm going to save this under the category of percussion. I'm going to call it Middle
East Eastern percussion. I hit Save. All right. That way, now when
I come up here, I can always just type in
Middle Eastern percussion, and you can see, right there, it's those three instruments, I can go ahead and add them, and they get added over here. So now that I've got them added, what I want to do
is make sure that I have the right
expression maps and the right endpoint
setup and all the rest. So instead of doing that
directly from this project, I'm going to follow
my own guidance that I've been
recommending all along, and that is to start with
an endpoint project, right? So what I'm going to do
is I'm going to create a new project I'm going to say, activate the new project. And while we wait
for that to load up, I'll go to add ensemble and I'm going to type in
Middle Eastern percussion. Hit Enter, I get my percussion
instruments right there. I want to go into
play right here, and then I'm going to
connect that up to VE Pro. I'm going to load up VSL, Vienna Ensemble Pro, but
this would work just as well if you wanted to
work with contact. This is how you would do it.
You'd set it up in there. And then I would look for my Middle Eastern percussion
collection in here. Let's say that it's just under percussion, and I hit Connect. Okay. I could rename this
endpoint if I wanted to to Middle Eastern percussion. And I might want to
have three mini ports, since we have one
port per instrument, and then we just need
one channel per. I'm going to go ahead
and hit that. Hit Okay. And then I would go through
on the track inspector, and I would sign that to
Middle Eastern percussion. I see that I actually
misspelled it there, so I'll go ahead and
fix that because this would last in perpetuity. Go ahead, Middle
Eastern percussion, Middle Eastern percussion. Open up my endpoint manager. And actually, what I see here
is that I need to change the ports so that each instrument
has its own port. I'd forgotten to do that. Oops, port three
for the last one. Now I can see my
three instruments here all assigned
to a unique port. I could go in here and access the expression map
for each instrument. Go ahead and assign
that. I'm just using the default here for
demonstration purposes. And now I would save this endpoint as Middle
Eastern percussion. Go ahead and hit Okay. Go
to my playback templates. Decide what playback template
I wanted to apply this to. Let's go with just one of the examples that
I've been using in the module, New
playback template. Come over here and add manual. I'm going to select Middle
Eastern percussion, bump that up above my
auto sort of catchall. You can always come
in here and click on Endpoint configuration if you want to see what
exactly is supported. So in here, I see the three
percussion instruments. I can see that they
are single players. And you can also look
at other instruments, and you can or sorry
other endpoints, and you can see what
instruments are in there, whether they are
session or sorry, section or solo players. All that information
is available. Then I'm going to go
ahead and hit Okay. And now when I apply this
new playback template, it's going to apply
the correct settings to each of these
three instruments. So my three Middle Eastern
percussion instruments are now a reusable ensemble. I also have an endpoint
project where I've set up all of their expression maps and loaded the
correct instrument. I've saved it as an endpoint, and then I've incorporated
that endpoint into my playback template. Now anytime I use it, I can be sure that the right instruments being loaded with the right
expression map, and I can essentially add that ensemble sort of to my collection of
quick start setups. Now, one thing you
might one reason why you might want to
do this other than just sort of generally maintaining your own list of instruments, is that it can be a really
effective way to save RAM. So having every instrument that you've ever
used loaded into one session is going to bog down all but the
most robust machines. All of these modern
sample libraries are very demanding on
your memory and RAM. And so if you can load up just the ensembles that you
need, that can really help. And you also may find that certain ensemble
combinations just work well together
for specific pieces. You may have your hybrid sort of industrial percussion for
trailers or industrial tracks. And then you may have your
tension based synthesizers and pads for your tension cues. You may have your
pizzicato strings and so on for your dramedy cues, and you can create ensembles that are designed around
the kind of music you're writing and then also playback templates and endpoints
that are organized around those so that
you're optimizing RAM and you're still getting a very consistent result
project to project to project. If at any point you realize
that something's missing from your expression
map or you want to implement a new
playback technique, then you can go ahead back to your a project for the endpoint management
for that ensemble. Make the change,
resave the endpoint, re add it to your
playback template. And then from then on, you know that you have
this consistent, reliable playback coming
from that instrument every time you load it and
organizing it in ensembles, just like we've talked
about organizing things as instrument families
is just a great way to compartmentalize this enormous
effort of really getting your full sample
library collection accessible in Darko in
a really reliable way. So I hope that helps you sort out how to work with ensembles, maybe save some RAM and work with a broader
variety of instruments. And let's dive into
the next lesson.
9. Stay in Control with the Library Manager: Now it's natural as
we're working to build these complex orchestral
templates and playback templates that
we're going to want to incorporate a broad
range of instruments, so not just the
traditional orchestra. And I thought it'd be
helpful to go through an example here where
I actually rectify a current project with some of the hard work I'd done
creating playback templates, endpoints, and expression maps in another project in my past. So about six months ago, I was working on a
series of cues that were based on Middle
Eastern instruments. And so as I said in
the last lesson, I've created this
ensemble around the Middle Eastern
percussion however, the expression maps and the playback templates
and the endpoints, they all make use
of playback and playing techniques that
don't exist in this project. So although I've successfully
imported the instruments, although I've successfully set up the expression maps and added it to my playback template
and all that, unfortunately, the fact that
playback techniques don't exist in my project means that I can't really have the expression maps
operate correctly. So I want to rectify
that moving forward. And the easiest way to do that
is in the library manager. So I'm going to jump in here
and show you what I've got. So I've got my three
percussion instruments here from Middle
Eastern percussion. I need the playback and playing techniques from
a previous project. So I'm going to
open up the library manager from the library menu. I have this old
project open here, I'm going to scroll down
on the left hand side here to playback and
playing techniques. And we can see from these icons that these are a
little inconsistent. I'm just going to go ahead, hit those arrows like so.
I'm going to hit Apply. Now if the apply
doesn't exactly work, what I recommend doing is actually clicking on playback
techniques like this, playing techniques,
and we're going to go ahead and just
hit that button there. And as you can see, some
of these are duplicates. So this trill half tone, they're not the same, but they're also they can't
just replace each other. So I've got to take
some of these off before I can hit Apply
and close the project. But now at this point,
I'm going to find that I have all of my playback and playing techniques from that old project now
imported in here. And this is true for expression
maps, percussion maps. You can use the
library manager to bring in fonts, percussion kits. As well as this ensemble, if I were to lose track of my Middle Eastern
percussion ensemble, I could open this project with
the library manager future down the road and import that Middle Eastern
percussion ensemble, which is very helpful as well. This is also true, as I've demonstrated for playing
and playback techniques, which are one of those features that we certainly spend a
lot of time as composers, kind of getting them
into our system. We want to make sure
that we can easily sync them up with
future projects. So I hope that helps give you a good workflow for synching up these settings
within your projects. If you have questions,
please do post in the Q&A. I always follow up
with everybody there, and then let's head off
into the next lesson.
10. Keep Your Playback Setup Running Smoothly: During the course
of this module, you can see how much time and energy it can actually
take to build up a proper playback template
and expression maps, endpoints, the endpoint
projects, and all the rest, making sure everything
is synced up for your future templates
and playback templates. But I want to remind
you that there are really four things I would recommend considering investing
the bulk of your time in. And the most important is that original worksheet
where you write out exactly what your switch sort of structure is to
make sure that you have consistent switches
across all your projects and across multiple
libraries as well, I talked about the
value of adding add ons that use the same
CC values across different instrument families
across different libraries. Another thing I
would recommend is really focusing on
one set of libraries. So although I own multiple string libraries and
multiple brass libraries, I generally lean on one
much more than the other. And so investing in the time spent with a
smaller number of libraries that you really get to
know and you know how the expression map and the endpoints are going to
work with that instrument, you're kind of familiar
with what it's capable of. Even though it may not have all the features of all
the rest of your libraries, it actually can alleviate the stress of having to
memorize much more stuff, and it can actually get you into the creative flow faster. Sometimes actually
constraints and restrictions on what
you can do can actually help keep you creative because you're not
overwhelmed by options. As long as it's a professional
library and you've got a nicely structured
a set of switches. Then you're going
to find that this is relatively straightforward. It does take time to set up, as I'm sure you can
appreciate by now, but at least the effort is manageable and
maintainable over time, and that's really the
focus of this lesson is to talk about
maintainability. So I also remind you on that topic about
endpoint projects. So making sure that
you actually create a project for your
strings or for your wins or for your Middle
Eastern percussion or whatever the family may
maybe even a library. You have a choir library maybe that you like
to use for choir, set up an endpoint project for that choir and then set it
up with the expression maps, export the endpoints,
bring that into a playback template,
and so on and so forth. Working through
that flow becomes second nature and is by
far the most maintainable, sort of user friendly system. Even as you create
very, very advanced, complex and
comprehensive orchestral playback templates and
project templates. Having this all incorporated
into a playback template is a nice way to be able to work on your composition independently
of the instruments. So you can write an idea out, and you can just switch between multiple playback templates, decide which one
you like better. Um, you know, you
may find that you like the spitfire
collection better, or you like the
Berlin collection better or you like
your VSL better. There'll be times when
your chamber setup is going to really capture
the mood of that melody and that harmony in a way that maybe your hybrid string collection just doesn't sounds
great in a trailer, but doesn't sound so
great for chamber. Being able to use playback
templates in that way, also makes this process
maintainable because you can kind of Always understand
the context that you're in. You're never
wondering if this has too many playback techniques or too few playback techniques. You're never
wondering whether or not your expression
map is synced up with whatever
playback techniques were in the current project
and so on and so forth. Speaking to the last lesson, you can always use the library manager if you want to make sure all that stuff is synced up with whatever playback
template you're using. So I hope that gives
you a good foundation for maintaining this complex and advanced
orchestral template that you've put together in
the course of this module. In the next lesson, I'm just
going to basically give you some guidance on the project and assignment for this module. I highly recommend
that you go through with that so that you
can internalize and take ownership of everything
that we've talked about and everything you've
learned in these lessons. And, of course, if you have
questions, as I've said, often post in the Q&A
or message me directly, and I will be in touch with you. And then let's hop into the last lesson and
talk about the project.
11. Final Comments and Your Class Project: Covered a ton of ground in this module, but
hopefully by now, you understand how endpoints
and expression maps and playback templates all
come into play as far as building out your ideal
orchestral template, something that's reusable
and maintainable, even though it's also
really expensive and large. So as you work on
the project here, these are the four things that I'm going to
suggest you focus on. First of all, your
switching structure. So download the blank
form, fill it in. Think about what's going
to be a base switch. Think about what's
going to be an add on. Think about a you're going to
use note length conditions. How you're going
to use MIDI ports? Are you going to be in VE Pro? Are you doing this in sign
play or contact directly? Think about those
things before you even start writing expression
maps or trying to link them up in
endpoints because having that worked out on paper, you can save yourself
a lot of time and sweat and tears just
by doing that first. Once you have that
done, start sort of step by step working through
your instrument families. Think about not just your
strings and winds and brass, obvious ones like percussion, but also are there ethnic or international collections
that you want to use? Are there specific libraries
that you want to focus on maybe for hybrid
sounds or tension or, you know, effects and sinth
and things like that? Maybe you have a
library just for your favorite synthesizer
or something like that. Want to think about
that as you're setting up your
family endpoints, and then you're setting
up a family project where you're actually connecting the instruments individually up, you're making sure
that they exist in your instrument library that each instrument has a family, maybe even creating
those ensembles that you can reuse
in future projects. Then you're going to think about versioning and libraries. So maybe you're going
to have ultimately a playback template that is
for your Spitfire libraries, and then one that's for
your orchestral tools libraries or maybe one that's for the contact factory library. You want to think about the different sort of
versions that you might want, and then you can create those iterations within your
projects for endpoints, and you can kind
of duplicate those out as we've talked
about how you can use clone to clone expression
maps and so on, so forth. And then the final thing
to keep in mind is, as you're trying to maintain
this stuff over time or as you're trying to get
your actual project template, not your playback template,
but project template set up ideally for the minimum hassle when you start a new project, lean heavily into the
library manager to do that. So if you create the
switching structure and you create your
family endpoints and endpoint projects, you create your
playback template, and then basically created a project template that
you've polished up, making sure with the
library manager, everything's in
there that you need, that would be what's
required to really fulfill the project
for this module. If you have questions as
you're moving through it, if you run into problems with your specific setup
and you want advice, of course, always
reach out through the Q&A or message me directly. And that's it for this module. Good job hanging in
there. I hope you learned a ton. Thanks.