Old 12-22-2016, 06:09 AM   #1
pcartwright
Human being with feelings
 
Join Date: Jan 2009
Posts: 938
Default Articulation Mapper pre-release thread

Here's a thread to post ideas and bugs about the articulation mapper.

Per schwa:

Quote:
Originally Posted by schwa View Post
Anything is possible for the future, but the intent right now is more proof of concept and looking for use cases that affect the overall design.
Here are some of ideas to get started:

Option to change note channels and/or bus per articulation

Track rules should be chased; note rules, obviously, should not

Ability to add/subtract velocity and CC values

Add support for crescendo/decrescendo continuous MIDI changes (i.e. CC or velocity ramps)

Map keys (this could be the solution for a drum mapper feature)
Related - maybe some randomization (map one note to one of many). I can provide an example if needed, but this would be good for certain drum libraries to create round-robin style playing.

Special handling for the starts and ends of phrases (some VSTi start their phrase technique mid note and not at the beginning of the phrase - e.g. Garritan products, some EWQL scripting, etc.)

Some of these feature may already exist. I'm still trying to get a handle on writing articulation files to help test.
pcartwright is offline   Reply With Quote
Old 12-22-2016, 06:28 AM   #2
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,078
Default

Quote:
Originally Posted by pcartwright View Post
Option to change note channels and/or bus per articulation
Doable, but I'd like some more feedback on how general this is, that instruments represent different expressions via different MIDI channels. And this seems lower in priority than keyswitches or VST3 expression, because it's not triggering events that can't be created in other ways -- it's as easy to set note channels in the MIDI editor as it is to add notation.

Quote:
Originally Posted by pcartwright View Post
Track rules should be chased; note rules, obviously, should not
This should already be the case.


Quote:
Originally Posted by pcartwright View Post
Ability to add/subtract velocity and CC values

Add support for crescendo/decrescendo continuous MIDI changes (i.e. CC or velocity ramps)
Reasonable, planned.

Quote:
Originally Posted by pcartwright View Post
Map keys (this could be the solution for a drum mapper feature)
Related - maybe some randomization (map one note to one of many). I can provide an example if needed, but this would be good for certain drum libraries to create round-robin style playing.
Doable but as with the note channel suggestion, probably lower priority as it can already be accomplished in other ways.

Quote:
Originally Posted by pcartwright View Post
Special handling for the starts and ends of phrases (some VSTi start their phrase technique mid note and not at the beginning of the phrase - e.g. Garritan products, some EWQL scripting, etc.)
Good suggestion!
schwa is offline   Reply With Quote
Old 12-22-2016, 07:34 AM   #3
pcartwright
Human being with feelings
 
Join Date: Jan 2009
Posts: 938
Default

Quote:
Originally Posted by schwa View Post
Doable, but I'd like some more feedback on how general this is, that instruments represent different expressions via different MIDI channels. And this seems lower in priority than keyswitches or VST3 expression, because it's not triggering events that can't be created in other ways -- it's as easy to set note channels in the MIDI editor as it is to add notation.

Doable but as with the note channel suggestion, probably lower priority as it can already be accomplished in other ways.
Fair enough. How would one randomize notes currently? I know of JSFX that can reroute notes, but I'm not familiar with a means to generate random notes.

********************

Another suggestion:
Differentiate trills into half and whole step (maybe minor and major thirds, but that's rare). Ideally a trill mark in conjunction with a key snap should work, but I think you might need new markings unique to whole step and half step trills as well. It's pretty common for orchestral libraries to have trill patches (section strings in particular).
pcartwright is offline   Reply With Quote
Old 12-22-2016, 08:00 AM   #4
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 22,937
Default

Yep, definitely need more trill options. m3 and M3 trills also exist in some libraries so they shouldn't be omitted from the spec.
EvilDragon is online now   Reply With Quote
Old 12-22-2016, 09:22 AM   #5
cyoder
Human being with feelings
 
Join Date: Aug 2013
Location: Tennessee, USA
Posts: 55
Default

Here's some things I would like to see implemented:

1. Changing articulation by keyswitch
2. Sending velocity information with said keyswitch (I have several sample libraries that have velocity sensitive KS now)
3. Sending CC value alone or along with KS
4. Sending to different MIDI channels (I know this can be done in the ME already, but I feel that being able to modify all the midi data from one channel to be more intuitive to me, because then I won't have to switch channel every time I want to edit a particular part/note.)
5. The ability to combine all of those, and send multiple CC, KS, and MIDI channel info at once
6. A system that is not playback dependent, but that would be able to be live recordable as well
7. Articulation rules being connected to individual notes rather than the entire channel.

I think for me #5 would knock it out of the park. Especially if you can send keyswitches with CCs to two different midi channels at once. It would be useful for me in that then I could combine articulations to create my own. e.g. I have sustain on CH1 and staccato on CH2, for a particular rule I could activate both CH1+2 to create a sustain w/ a staccato accent. e.g. 2: If there are keyswitches built into a patch, I could still layer articulations by loading two of those patches on different channels, so I could send "Sustain KS" to channel 1, and "Staccato KS" to channel 2 to create that same sustain w/ staccato accent.

For #6, I think it would make my workflow easier to be able to activate the particular articulations/rules I create before and while I record rather than recording a take, then having to go through the take to change the articulations to what I wanted. This would make it appeal to both the "live playing" crowd as well as the "draw the midi in" crowd.

#7 is perhaps pie in the sky, but if there are two notes played as a chord on the same channel, it would be cool to trigger two different articulations at the same time, so I could mark C5 as staccato, for example, and E5 as sustain.

I don't think I'm very good at explaining what I mean accurately, so if there's anything I've said that sounds like gibberish, I can try again to explain. Either way, I'm excited about whatever system is implemented.

Thanks,

P.S. I think TransMIDIfier is a great example of how to create a flexible articulation management system. It not only allows you to activate the different articulations, but also creatively combine them. http://www.bewaryprods.com/software/...TransMIDIfier/
cyoder is offline   Reply With Quote
Old 12-22-2016, 09:38 AM   #6
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,078
Default

Quote:
Originally Posted by cyoder View Post
1. Changing articulation by keyswitch
2. Sending velocity information with said keyswitch (I have several sample libraries that have velocity sensitive KS now)
3. Sending CC value alone or along with KS
4. Sending to different MIDI channels (I know this can be done in the ME already, but I feel that being able to modify all the midi data from one channel to be more intuitive to me, because then I won't have to switch channel every time I want to edit a particular part/note.)
5. The ability to combine all of those, and send multiple CC, KS, and MIDI channel info at once
6. A system that is not playback dependent, but that would be able to be live recordable as well
7. Articulation rules being connected to individual notes rather than the entire channel.
I think all but #6 are already done in 5.31pre1. 7 is done but only works for vst3 expression (this is pretty much why vst3 expression was created).
schwa is offline   Reply With Quote
Old 12-23-2016, 06:50 AM   #7
paaltio
Human being with feelings
 
Join Date: Aug 2011
Posts: 107
Default

Quote:
Originally Posted by schwa View Post
Doable, but I'd like some more feedback on how general this is, that instruments represent different expressions via different MIDI channels.
Very! It's the only method for libraries like Hollywood Brass and Hollywood Strings. And there are certainly cases where people build templates with Kontakt that way as well. I would consider it an essential part of any articulation system, even if CC/keyswitch is the preferred method for most use cases.
paaltio is offline   Reply With Quote
Old 12-23-2016, 09:08 AM   #8
pcartwright
Human being with feelings
 
Join Date: Jan 2009
Posts: 938
Default

Just an idea, but perhaps the articulation mapper should be part of ReaControlMIDI instead of the VSTi menu. Users would need to add ReaControlMIDI in front of the desired VSTi to use.

This would have a couple of benefits:

1. Users could see the articulation effect in the MIDI log which would help troubleshoot issues

2. Users could further manipulate the MIDI from the rules
a. add humanization to dynamic changes via parameter modulation or JSFX
b. workaround lack of channel support using
c. probably any number of creative applications that I can't think of right now

The only drawback I could think of is a reduction in simplicity which could increase user error.

Thoughts?
pcartwright is offline   Reply With Quote
Old 12-23-2016, 09:08 AM   #9
stephane
Human being with feelings
 
Join Date: May 2010
Location: France
Posts: 97
Default

in sample.ReaperArticMap file, this example is given

Code:
track dynamics mf : cc 0 7 64
However it doesn't work because it seems it's not dynamics but dynamic the correct keyword
I made some tests and nothing happens with dynamics. It works with dynamic

Plus, it's written

Code:
# track entry format:
# track notation_type notation_value : trigger_type trigger_channel trigger_parameter trigger_value
#
...
#
# track articulation_type can be:
# dynamics text
If we want to be rigourous, we should write

Code:
# track notation_type can be:
# dynamics text
stephane is offline   Reply With Quote
Old 12-23-2016, 09:19 AM   #10
stephane
Human being with feelings
 
Join Date: May 2010
Location: France
Posts: 97
Default

Another thing I noticed, don't use tab character to separate fields otherwise the line will not be effective. just use space character to align fields

edit: seems not working too if too many spaces are used to separate each field of a line

Last edited by stephane; 12-23-2016 at 09:47 AM.
stephane is offline   Reply With Quote
Old 12-23-2016, 10:26 AM   #11
stephane
Human being with feelings
 
Join Date: May 2010
Location: France
Posts: 97
Default

I made some tests with my spitfire libraries by using the UACC. It's not too bad and it works well. Looks very promising.

For those who would want to test, this is the definition of my articulation map file

Code:
track dynamic pppp : cc 0 1 30
track dynamic ppp : cc 0 1 40
track dynamic pp : cc 0 1 50
track dynamic p : cc 0 1 60
track dynamic mp : cc 0 1 70
track dynamic m	: cc 0 1 75
track dynamic mf : cc 0 1 80
track dynamic f : cc 0 1 90
track dynamic ff : cc 0 1 100
track dynamic fff : cc 0 1 110
track dynamic ffff : cc 0 1 120

note text arco : cc 32 1
note text legato : cc 32 20
note text pizz : cc 32 56

note articulation staccato : cc 32 40
note articulation staccatissimo : cc 32 42
note articulation marcato : cc 32 52
note articulation tenuto : cc 32 50

note ornament tremolo : cc 32  11

note text "con sord" : cc 32 7
note text "con legno" : cc 32 58

note text "senza vib" : cc 21 0
note text "con vib" : cc 21 64
note text "con molto vib" : cc 21 127
stephane is offline   Reply With Quote
Old 12-30-2016, 01:27 AM   #12
ReaDim
Human being with feelings
 
Join Date: Oct 2011
Location: Russia
Posts: 49
Default MIDI buses, channels

Quote:
Originally Posted by schwa View Post
Doable, but I'd like some more feedback on how general this is, that instruments represent different expressions via different MIDI channels. And this seems lower in priority than keyswitches or VST3 expression, because it's not triggering events that can't be created in other ways -- it's as easy to set note channels in the MIDI editor as it is to add notation.
I would like to stream midi (through midi send) from one track with no vsti to many separate tracks with vsti (about 100 tracks-articulationst) sending midi to different midi buses and channels (REAPER). I'd prefer to switch articulations acting on Notation Events. For this I request:
- Possibility to use Articulation Maps without vsti / any fx inserted. Maybe imbedded in midi editor as a flouting window per track. Or option to have a mapper in plugin format (maybe js)...
- Option to switch midi bus and channel in 'toggle mode'. All CCs with notes go to a new channel and bus after a switcher (a notation event).
- Note Off messages should go to the same channel+buss as a Note On was sent to. (Without note hang)
- The switcher should work wherever to play from - after the switcher or through.

An other idea how to have 100 articulations for one track is to insert 100 vsti plugins on one track... But again... I need access to midi busses in this case.

ps:Please forgive me my English.

Last edited by ReaDim; 12-30-2016 at 02:01 AM.
ReaDim is offline   Reply With Quote
Old 01-01-2017, 07:53 AM   #13
memyselfandus
Human being with feelings
 
memyselfandus's Avatar
 
Join Date: Oct 2008
Posts: 1,598
Default

Damn this is exciting
memyselfandus is offline   Reply With Quote
Old 01-01-2017, 02:15 PM   #14
Hafer
Human being with feelings
 
Join Date: Nov 2016
Posts: 17
Default

Quote:
Originally Posted by ReaDim View Post
... to have 100 articulations for one track is to insert 100 vsti plugins on one track...
Is it me or why would you want to have one vsti plugin per articulation?
Hafer is offline   Reply With Quote
Old 01-01-2017, 02:31 PM   #15
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 600
Default

Quote:
Originally Posted by Hafer View Post
Is it me or why would you want to have one vsti plugin per articulation?
I don't think you normally would. I myself tend to have dozens of articulations on a single VSTi and in fact on a single MIDI channel.

But I think the basic point is we'd want a solution that doesn't make assumptions about how many articulations may exist on a track, or how many FX they are spread across, which MIDI channels the articulations are on (they may be all sharing one MIDI channel), what MIDI events are needed to change articulations, or indeed whether or not the VSTi handling the articulations is even on the same track (could be a MIDI send). This shouldn't be a problem as long as articulation changes are arbitrarily translatable to a user-defined MIDI event and standard MIDI routing rules apply.

I'd also want everything fully accessible from APIs, so that scripters can extend or improve the UX.
tack is online now   Reply With Quote
Old 01-01-2017, 06:22 PM   #16
reddiesel41264
Human being with feelings
 
reddiesel41264's Avatar
 
Join Date: Jan 2012
Location: North East UK
Posts: 492
Default

Some sample libraries use CC's to control the dynamics of long articulations and velocity for short articulations. The articulation mapper should be able to switch between these two methods depending on the which method is used by the current articulation.
__________________
http://librewave.com - Freedom respecting instruments and effects
http://xtant-audio.com/ - Purveyor of fine sample libraries (and Kontakt scripting tutorials)
reddiesel41264 is offline   Reply With Quote
Old 12-23-2016, 10:27 PM   #17
TryingToMakeMusic
Banned
 
Join Date: Nov 2016
Posts: 416
Default

TYVM for adding this.

Quote:
Originally Posted by schwa View Post
Anything is possible for the future, but the intent right now is more proof of concept and looking for use cases that affect the overall design.
Please consider making articulation display/editing available in the Piano Roll. Example: http://imgur.com/a/VdcoT. Because I record my notes from MIDI keyboard, because I don't want them quantized (not shown in the image I posted); and I use the Piano Roll for editing. Edited later to add: Maybe this is already done. Sorry for my ignorance, if that's the case.

Quote:
Originally Posted by schwa View Post
... Doable, but I'd like some more feedback on how general this is, that instruments represent different expressions via different MIDI channels.
Often it's the only option with EWQL libraries.

Quote:
Originally Posted by schwa View Post
And this seems lower in priority than keyswitches or VST3 expression, because it's not triggering events that can't be created in other ways -- it's as easy to set note channels in the MIDI editor as it is to add notation.
Having to remember which articulations are on which MIDI channels slows workflow. It's easier to work when you can see the name of the articulation, and during editing you select articulation-names rather than MIDI-channel numbers.

Last edited by TryingToMakeMusic; 12-24-2016 at 03:47 AM.
TryingToMakeMusic is offline   Reply With Quote
Old 12-24-2016, 01:24 AM   #18
MorkV
Human being with feelings
 
Join Date: Jun 2016
Posts: 41
Default

One of the possible ways, I think this is fast and simple

and... therefore may add to display a note articulation in Midi editor like in Notation.
MorkV is offline   Reply With Quote
Old 12-24-2016, 02:38 AM   #19
stephane
Human being with feelings
 
Join Date: May 2010
Location: France
Posts: 97
Default

a nice toolbar by using musical icons: http://forum.cockos.com/showpost.php...3&postcount=10 Thanks to @reddiesel41264 for sharing these icons



NB: I didn't find an action to delete dynamics. I found Notation: remove articulation, ornament, octave notation, phrase/slur, but no dynamic. any idea ?
stephane is offline   Reply With Quote
Old 12-26-2016, 06:04 PM   #20
Vagalume
Human being with feelings
 
Join Date: Nov 2015
Posts: 417
Default

[QUOTE=stephane;1773885]a nice toolbar by using musical icons: http://forum.cockos.com/showpost.php...3&postcount=10 Thanks to @reddiesel41264 for sharing these icons



Stephane, this is SIMPLY PERFECT!!!!! ... Visual, neat and professional...I just want to show it to some "orchestral Cubase professional composers". I don't have words ...

Last edited by Vagalume; 12-26-2016 at 06:11 PM.
Vagalume is offline   Reply With Quote
Old 01-05-2017, 09:54 AM   #21
gofer
-blänk-
 
gofer's Avatar
 
Join Date: Jun 2008
Posts: 11,132
Default

Where the track method would route all events to the other channel, including CC? And if you want "parallel channels" on a single track you'd choose "note" but need to care for the CC yourself?

Yep, I think that sounds reasonable. I could imagine there's benefit to gain from the possibility to mix both methods .

Edit:
Aside: It's been said, but can't hurt to repeat. It would be very helpful if events in piano roll view could indicate the channel they are routed to by articulation maps.

Last edited by gofer; 01-05-2017 at 10:02 AM.
gofer is offline   Reply With Quote
Old 01-05-2017, 10:07 AM   #22
gofer
-blänk-
 
gofer's Avatar
 
Join Date: Jun 2008
Posts: 11,132
Default

Another thing that would be helpful to have (early, as it also helps testing):
Menu entries and actions to create a new and edit the currently loaded articulation map file.
gofer is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 02:37 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.