Synth Forum

Notifications
Clear all

Using Foot Control 1 as Part Volume Control

9 Posts
3 Users
0 Likes
1,795 Views
Posts: 0
New Member
Topic starter
 

Hi,
I am just working on a very simple setup. Part 1 is a piano, part 2 is a string sound. I am using FC 1 to blend the strings to the piano. I disabled Expression in the Receive area for part 1, so the piano does not change the volume, just the strings. But: Now Slider 1 becomes inactive and let me not Control the part 1 volume anymore. How comes, since the slide is actually cc7 Volume and not cc 11 Expression?
Thanks for any help and comments on this!

 
Posted : 01/08/2017 2:48 pm
Bad Mister
Posts: 12304
 

You did not just disable Expression on Part 1, you actually disabled "Vol/Exp", they are linked.
VOLUME sets the overall level for the MIDI channel and can be adjusted by cc007 (also called the Part Volume); Think of this as the channel volume, like on a mixer.
EXPRESSION sets the relative output level of the instrument being performed on the channel cc011. Think of this as the musician's personal output level.

If the VOLUME (cc7) is set to a value of 96, then a Foot Controller sending cc011 Expression, will never exceed the output level that is equivalent to cc007 = 96. Meaning that the toe down (maximum) position of a pedal doing cc011 would max out at the current cc007 setting. So if know you never need the strings to be louder than the piano, you can set a maximum level... this way you are able to use the full range of pedal movement (heel down to tie down), and feel safe about where the ceiling volume is located.

By deactivating "Vol/Exp" you disabled both "fixed function" Control Change messages that only do output level control.
They are linked, you disabled both when you set the "Vol/Exp" Receive Switch = Off.

What you want to do is not use a "fixed function" Controller like cc7 or cc11. This way you can select what specific parameter within the instrument you would like to control. This would be via a direct parameter assignment.

Standard cc messages for volume, expression, pan, rev send, var send, attack, decay, release, etc., are used throughout MIDI (these are the usual suspects) with Montage you can access most parameters with a direct assignment within its own Control matrix. This will accommodate your requirement of being able to use the Faders - they can remain active...

DIRECT Parameter assignment goes deeper than the standard Control Change parameters (there are 251 potential Destinations within the Montage... including Part Volume, Element/Operator Levels, etc...)

You can use FC1 set to send cc004 (Foot Control)... it does not have a fixed function...

so you can decide on a per program basis what it will control. It could be used as a wah pedal, or to change speeds of your Rotary Speaker effect, or simply as pedal to control "Part Volume" directly (without disabling the standard cc handles)... you decide as necessary for each Performance.

This way you can still use the Fader to set the main Channel Volume for your piano (no need to disable its control). You can use the Control Assign > Ratio parameter to set minimum-to-maximum change for the String Part.

Notice the Polarity is set to Bipolar, so you can increase and/or decrease the volume from the initial (stored) Volume setting. The Fader sets the initial start volume of the strings, the Control Assign Ratio determines the range the pedal movement controls... The Param 1 helps to shape the way it fades in (left-to-right)

I've attached an example that can be bulked to your Montage via the "Montage Connect" utility.
FC1 is sending Foot Control cc4
Foot Control is set to Part Volume of the strings in Part 2.

Hope that helps.

See attached example

Attached files

PianoStringExample.X7B.zip (7.7 KB) 

 
Posted : 02/08/2017 12:51 am
Jason
Posts: 7912
Illustrious Member
 

DIRECT Parameter assignment goes deeper than the standard Control Change parameters (there are 251 potential Destinations within the Montage... including Part Volume, Element/Operator Levels, etc...)

There are 123 direct parameter type destinations, then there are 128 destinations which are for part of the assignment infrastructure. 128 destinations are for the assignable knob linkages which are intermediate assignments and do not directly connect to parameters. These 128 (of 251 total) destinations are a routing mechanism which can later be set (cascaded) to link to a parameter. I think it is a reasonable distinction to make as to not conflate the amount of parameters which can be assigned as related to "Part Volume", "Element/Operator Levels", and the like.

 
Posted : 02/08/2017 5:22 pm
Posts: 0
New Member
Topic starter
 

Hi Bad Mister!
Thanks a lot for your detailed explanation. This clears a lot of open questions. Actually I found this workaround in the meantime assigning FC1 to cc8. In order to avoid the bipolarity I created a user curve which is an inverted standard curve. Setting it's range to -32 than blends in the strings from 0 up to the actual part volume. Problem solved!
I have two questions left:
1. Is there any reason for the link of cc 11 and cc 7? My knowledge of the Midi specification should be OK, I know the functional distinction between expression and volume.
2. During my work on my Masterkeyboard setup I have to go into performance edit mode, selecting parts. Being there, naturally I am trying out, e.g. whether the sliders are working. This often screws up the element volume of the selected part accidentally. I know, that the sliders are supposed to work that way, controlling element or operator volumes. But in order to protect my parts, Is there any possibility to define, that the sliders always behave as in the performance home state?

Again, thanks a lot,

Johannes

 
Posted : 08/08/2017 11:42 am
Bad Mister
Posts: 12304
 

Thanks a lot for your detailed explanation. This clears a lot of open questions. Actually I found this workaround in the meantime assigning FC1 to cc8. In order to avoid the bipolarity I created a user curve which is an inverted standard curve. Setting it's range to -32 than blends in the strings from 0 up to the actual part volume. Problem solved!

Assigning FC1 to cc8 is the equivalent of assigning it to cc4 in that you avoid a cc number that has a fixed function of always sending a volume change message of some kind. Yamaha selected cc11 and cc4 as the normal defaults for FC1/FC2 because one offers Volume (always) and the other is completely Assignable on a per Program basis.

I'm not at all sure what you mean by the 'bipolarity' in this context or why you needed to build a custom Curve, but if you have it working as you need then that's a win.

Bipolarity in Controller assignment means you can assign control over a parameter yet select a value setting, other than minimum or maximum, and you can move in either direction from that start value .... bipolarity let's you then both increase or decrease the value from that stored starting point. Unipolarity means if you start with a value setting as your initial setting you can move in one direction and then back to that start value. Bipolar means you can go above and then return to original and then go below the original setting. Unipolar is just one direction and back to the original.

When you say "in order to avoid the bipolarity" we guess you mean that the start value of your setting only needs to travel in one direction from its original stored value and back to that original value. Is that correct? Otherwise, there would be no reason to avoid it. It just sounds curious, as you set this as you require, not to avoid something.

1. Is there any reason for the link of cc 11 and cc 7? My knowledge of the Midi specification should be OK, I know the functional distinction between expression and volume.

They are linked by convention in MIDI. If you are asking "how come" the engineers sort to link them here...? the important thing to know is that they are linked.

2. During my work on my Masterkeyboard setup I have to go into performance edit mode, selecting parts. Being there, naturally I am trying out, e.g. whether the sliders are working. This often screws up the element volume of the selected part accidentally. I know, that the sliders are supposed to work that way, controlling element or operator volumes. But in order to protect my parts, Is there any possibility to define, that the sliders always behave as in the performance home state?

No, there probably is not. The SLIDERs behave a specific way always, the key is to know what the lighted buttons are telling you.

When I first received the Montage more than a year and a half ago, I remember saying to myself one of the first things I needed to get comfortable with is *when* the Faders, Buttons and other things were functioning a certain way. Any time there are multiple functions assigned to a Knob, button or slider, you can bet there is some indicators There was obviously a method to the madness. Words of wisdom came back to me from my long tenure at Yamaha, 'a lighted button cost more', you light a button not just for the cosmetic and esthetic value, there is a hierarchy even among lighted buttons... it says "I'm important, you'll want to pay attention... " a lighted function is always trying to tell you something.

Notice, if you will, the three green lights to the left of the Faders... this will always inform you as to what you will get from moving them... the Faders will control PART VOLUME for Parts 1-8 or PART VOLUME for Parts 9-16 or they will control Element Level or Operator Level of the Part assigned and currently selected.

Important things to know: Enlightenment
When you are on the [PERFORMANCE (HOME)] screen, the Performance title is highlighted, the upper "COMMON" is selected... the Faders are going to be Part Volumes. This makes sense - a Performance can be multiple Parts, when Common is selected you are controlling their volumes relative to each other.

When you press a [PART SELECT] button, you literally have entered that instrument, immediately the green light switches to indicate you are now set to access Element Level, if the Part contains an AWM2, or Operator Level, if the Part contains an FM-X. You've selected a Part, now you can access the settings within that Part. Make sense?

Simply knowing the above, it starts to be less of a guessing game about what the Faders are doing at any time. Once you know to look and you know what causes the function to change, this puts you into a position, where it stops being an issue. This happens because you are no longer guessing what the Faders are doing. The lights will clearly indicate their current function. It soon becomes second nature.

Hope that helps.

 
Posted : 08/08/2017 2:39 pm
Jason
Posts: 7912
Illustrious Member
 

The choice of linking CC7 and CC11 is made "further up the chain" than Yamaha. Yamaha is implementing a specification which links the two.

Reference:

https://books.google.com/books?id=DlstBAAAQBAJ&pg=PA190&lpg=PA190&dq=CC7+relationship+to+CC11&source=bl&ots=nRBf9u4kPX&sig=LX5Ulqkyq6HTzRHPkLcTlL4TPmk&hl=en&sa=X&ved=0ahUKEwil0P_I88fVAhWBQSYKHbz9DHoQ6AEIXzAH#v=onepage&q=CC7%20relationship%20to%20CC11&f=false

Page 190 of "An Introduction to Music Technology" (above link) describes the MIDI spec covering CC11 and CC7.

Another book "Music Technology and the Project Studio: Synthesis and Sampling" provides a formula for the resulting volume which establishes a mathematical relationship between the two CC values.

https://books.google.com/books?id=YhypAgAAQBAJ&pg=PA222&lpg=PA222&dq=CC7+relationship+to+CC11&source=bl&ots=zP1TEavrWO&sig=A0Iwf_CyF8dlv74Ws07hFNBgTyI&hl=en&sa=X&ved=0ahUKEwil0P_I88fVAhWBQSYKHbz9DHoQ6AEIYjAI#v=onepage&q=CC7%20relationship%20to%20CC11&f=false

Effective volume setting = (CC11 Value / 127) * CC7 Value

Neither book is authored by Yamaha or specific to Yamaha's MIDI implementation. Rather, documentation to help translate the MIDI specification.

Going "to the source" - the full 1.0 MIDI Specification (1996) can be downloaded from:

https://www.midi.org/specifications/item/the-midi-1-0-specification

And page 9 of additional information (General MIDI System Level 1 Developer Guidelines) - or page 318 of the full specification PDF - details the resulting volume (in dB) for different combinations of CC7 and CC11 - which establishes the required relationship between the two values and volume output (the common link of volume).

-------

As far as polarity (bi vs uni) - you can always refactor parameter offsets in 3 ways:

1) Make the default for the parameter (the non-offset programmed value) a high maximum value - then use the destination offset as uni-polar with a negative ratio to subtract from the maximum value

or

2) Make the default for the parameter (the non-offset programmed value) a low minimum value - then use the destination offset as uni-polar with a positive ratio to add to the minimum value

or

3) Make the default for the parameter (the non-offset programmed value) a middle value (like 64) - then use the destination offset as bi-polar which will both add and subtract from the middle value

The choice of which one to pick is somewhat arbitrary for most controllers. Controllers with no "automatic" resting position would not mind which of the 3 you picked. MS Lanes have an automatic resting position - so which one you pick may matter if the Motion Sequence = OFF state and where your controllers "go" matters. Also, the ribbon controller has a mode where it "snaps" to the middle (pitch bend also "snaps" to the middle mechanically) so these controllers it may matter which you pick as they have automatic resting positions - aftertouch also falls in this category. Expression pedals and mod wheels are examples (for Montage) which do not have a default resting position. They stay where you leave them - so it may not matter which one you choose since there is not something automatic which will snap these controllers to a specific value.

If using a foot controller (expression pedal) - I'm not sure it matters which of the 3 methods you choose and, to me, it's fine to refactor the controller to any one of the 3 if the refactored representation makes more sense to you in terms of "looking" at the programming and recognizing what is happening (self-documentation). Another message here is, however, that you should be equally familiar with all methods (using uni with each sign of ratio +/- and bipolar) so the choice of which method to pick is not all based on lack of familiarity. As there may be situations (if not here, but elsewhere) where the solution does "require" one of the three methods (such as how to handle different reset conditions for controllers - including MS Lane - that "snap" to a resting position).

 
Posted : 08/08/2017 3:08 pm
Posts: 0
New Member
Topic starter
 

@Bad Mister:
Thanks for the hint with the lights, simply hadn't been aware of that. My fault!
You found the thing with the user curve curious. Maybe it is, if there is another way to achieve this functionality via standard curves. Using the bipolar standard curve with positive range values would get the strings fully blended in at half way of the pedal movement. Using negative range values would fade out the strings half way. Since I found no way to simply invert the standard curve (do. I miss something here?), I created this inverted behaviour using a user curve.Setting it's range to -32 gives me the full range of the pedal movement. Do I miss an easier way to get here?
Again, thanks this all helps and I got what I want anyway:-)

@Jason: Thanks for all that links and informations, but I think I made my question misunderstandable. Maybe the term "linked" led to this confusion. All Daws and other systems I had used let me treat cc7 and cc11 separately. E.g. using the NI B4 with it's drawbar hardware in combination with Apples Mainstage let me use a volume knob on the hardware to control the mastervolume, whilst my FC2 can directly adress "Swell Volume" to the B4. All possible destinations in the B4 may have set to an individual cc number And each destination can be to switched Off for receiving any controller without affecting any other mapping. There is no such thing like disabling the reception of cc7 would automatically disable the Swell-function (cc11) or vice versa.
All what I was trying to say, is that I would have found it more logical, if Montage would allow me to have discrete Transmit and Receive-switches for the two controller.

 
Posted : 09/08/2017 10:50 am
Posts: 0
New Member
Topic starter
 

@Jason#2
Thanks for the input of using all the controllers. But in my case, I haven't found a way to set the strings Part volume to 0 and increase it's volume via a unipolar positive standard curve. I thinks the part volume rules here and the strings would stay at 0. Do I miss something here?

 
Posted : 09/08/2017 10:59 am
Jason
Posts: 7912
Illustrious Member
 

Most organ or other VST instruments will allow for programming any CC - so I would just set the expression pedal to something other than CC7 or CC11 since there are many "open" values and use the plug-in's "learn" function (or manual CC assignment) to program the expression pedal up.

I have a picture of what the FCx ON/OFF as well as FCx CC assignments will do in the context of PART level controls and forwarding information to destinations (motion control).

https://www.yamahasynth.com/forum/how-to-turn-off-foot-controller-1-to-designated-parts

Thanks for clarifying. Note that the "link" internally (a different kind of link than described before) can be severed by FCx CC assignment. FCx meaning either FC1 or FC2.

-------------

As far as "invert" the standard curve. I agree - I think you mean "reverse" the standard curve (mirror vertically):

As I think of inverting the curve as flipping horizontally (by using a negative ratio).

For non-exponential curves (linear curves -- or "curves" with just straight lines like the standard curve that looks like a triangle) - you can use user curves to generate a mirrored (vertically) curve. The user curve system does not give provisions to construct anything other than linear slopes - so vertically flipping standard curves with any other parameter than the linear one is not possible. You have to approximate an exponential curve with straight lines or refactor so you can use the internal preset curves which use non-linear segments.

Luckily - there is this provision given to us - so we can refactor. Some cases it would be "easier" ("more powerful") to vertically mirror the curve rather than both editing the parameter's default value and using a standard curve which has only one orientation. But I'll take possible over impossible.

I did mention recently about the curve limitations here: https://www.yamahasynth.com/forum/working-with-scenes#reply-22898

Which also includes not being able to adjust the "knee" of the curve. This can have relevance when your input data cannot be naturally altered/scaled such as when using envelope follower.

When it comes to offsets vs PART settings - there is no one that overrides the other. They work in combination. The result is always parameter + offset = effective value. This is for internal assignments (Montage tone generator result).

You have different destinations and one destination is PART Volume. So as long as you target the correct parameter - you can increase from 0 if that's what you're after. Or decrease from 127. Or increase+decrease from 64 (or any middle value).

 
Posted : 09/08/2017 1:11 pm
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us