Scoring Central

Full Version: Sonatina Symphonic Orchestra additions
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7
(08-06-2016, 07:55 PM)peastman Wrote: [ -> ]I'm really excited about the idea of a new version of SSO.  It's a fantastic library, and this looks like it will be a major upgrade.

I'm trying to fill in some gaps in the SSO library that were probably not possible to fill when it was first created. I hope what I'm doing will live up to the standard that was set by the SSO library. I'm trying.

(08-06-2016, 07:55 PM)peastman Wrote: [ -> ]Would it be possible to make the instruments respond to the expression controller?

This is probably a stupid question. I've never used "expression" although I make good use of volume automation. What should the expression controller do? What parameter would change? Should it simply adjust the volume?
(08-07-2016, 02:01 AM)pbattersby Wrote: [ -> ]This is probably a stupid question. I've never used "expression" although I make good use of volume automation. What should the expression controller do? What parameter would change? Should it simply adjust the volume?

In many cases, expression (CC#11) functions as a secondary volume control- the user sets the channel volume at the start of the track with CC#7, volume, and controls per note volume with Key Velocity (data sent with the key, not a CC), but CC#11 is used as a continuous volume controller during the performance (particularly useful for brass). This does not include crossfading, just volume, so it is sort of old-fashioned/deprecated with modern libraries. Now many top-end devs are using expression as a vibrato crossfade control, or using mod for vibrato/non-vibrato crossfade and CC#11 for velocity crossfade.

If you program in crossfades (something I discussed in that other thread with Mattias), then consider using CC#1/Mod instead. I figured out the layer crossfading, but I am not sure yet how to map volume to something other than CC#7. I will have to examine the spec more.
This video describes the difference: https://www.youtube.com/watch?v=8zbnC-_wey4

Basically, you use expression for shaping individual notes and volume for balancing tracks against each other.

In some synthesizers, they both have exactly the same effect, and their values just get multiplied to determine the overall volume. In others the expression controller is used to create more realistic changes in dynamics: it sounds like the musician is playing louder (blowing harder, pressing harder on the string), rather than just turning up the volume dial.

The mod wheel is a bit different. In old synthesizers, it was pretty consistently used to control the amount of vibrato. But these days it's treated as a generic controller for whatever aspect of the sound the designer wanted to let you control: vibrato, distortion, noise, etc. I've used one library (Garritan Personal Orchestra) that uses it for volume, I guess because they decided that was the most important thing to let you easily control. Actually, it uses three different controllers for this purpose: expression, mod wheel, and breath controller. It treats them as interchangeable, and moving any one of them changes the volume.
As near as I can tell, the volume/expression opcodes I can adjust are:

gain_ccN
volume_onccN (apparently an undocumented 2.0 opcode)
amplitude_onccN (apparently a custom ARIA opcode)

So, I'm not sure how best to use these (or even IF I should use these) to try to use CC7 to set the volume and CC11 as a continuous volume controller.

I can do this:

gaincc11=10
volume_oncc7=10

... but they both appear to operate identically as expression. Neither can reduce the starting volume (unless I use a negative number, then increasing the controller value, reduces the volume - counter intuitive) so neither can be used to actually set the volume.
I could be wrong, but isn't CC#11 support something that the sampler loading the sfz files should provide, not the sfz's themselves? I.e. if the sampler doesn't respond to CC#11 by default then there's nothing you can do about it on the sfz level.
(08-08-2016, 12:06 PM)pbattersby Wrote: [ -> ]As near as I can tell, the volume/expression opcodes I can adjust are:

gain_ccN
volume_onccN (apparently an undocumented 2.0 opcode)
amplitude_onccN (apparently a custom ARIA opcode)

So, I'm not sure how best to use these (or even IF I should use these) to try to use CC7 to set the volume and CC11 as a continuous volume controller.

I can do this:

gaincc11=10
volume_oncc7=10

... but they both appear to operate  identically as expression. Neither can reduce the starting volume (unless I use a negative number, then increasing the controller value, reduces the volume - counter intuitive) so neither can be used to actually set the volume.

To set sample volume, use volume.

Those controls all appear to, from your description, function as modifiers of some sort? Much like Peter Jones' description of the Velocity/Key tracking opcodes here-
http://drealm.info/sfz/plj-sfz.xhtml

Quote:For example, with 100% velocity tracking, this gives about -84dB of gain for a note with velocity 1, -13dB at velocity 64, -4dB at velocity 100 - and, of course 0dB at velocity 127. -10% velocity tracking would give 8.4dB, 1.3dB, 0.4dB and 0dB for the same velocities.
(08-08-2016, 09:15 PM)Samulis Wrote: [ -> ]To set sample volume, use volume.

Yes, but the volume opcode does not appear to be CC controllable. We're talking about using CC7 to set the volume and CC11 to adjust the volume.

The opcodes I mentioned appear to permit a gain boost based on the CC11 value for example. If I do this:

gain_cc11=10

That seems to mean that a CC11 value of 0 will have no effect on volume. A CC11 value of 127 will add 10db of gain (and of course CC11 values between 0 and 127 add between 0 and 10db of gain), but I don't see any way to use a controller to set a volume level, only add to the volume that is already present (or if inverted subtract from the existing volume, but not both).

So, unless I'm still misunderstanding something, I can add a sort of expression as a boost to the current volume, but that's it.

So next question, assuming what I said is right. Is a 0 to 10db boost enough control as expression?

(08-08-2016, 08:56 PM)Mattias Westlund Wrote: [ -> ]I could be wrong, but isn't CC#11 support something that the sampler loading the sfz files should provide, not the sfz's themselves? I.e. if the sampler doesn't respond to CC#11 by default then there's nothing you can do about it on the sfz level.

I, as an author of the sfz file can decide that I want cc11 to control gain, or I can control various filter opcodes. I can also choose to allow cc11 (or any cc value) to control ampeg_attack, decay release etc.

It seems it's up to the sfz file, what each continuous controller will control.
(08-08-2016, 11:09 PM)pbattersby Wrote: [ -> ]I, as an author of the sfz file can decide that I want cc11 to control gain, or I can control various filter opcodes. I can also choose to allow cc11 (or any cc value) to control ampeg_attack, decay release etc.

It seems it's up to the sfz file, what each continuous controller will control.

Yes, but, any self-respecting sampler should map Expression to Expression and Modulation to Modulation and whatnot. And any self-respecting sampler format should treat these incoming CC messages as the MIDI default. In the case of CC#11, a proprortional track volume to be used for fades and swells and the like. Is it actually the case with SFZ that it doesn't do anything with CC#11 unless it's defined in the SFZ file? I seem to remember that it worked in SSO when I developed it using mainly Dimension LE and SFZ Player.
Quote:I seem to remember that it worked in SSO when I developed it using mainly Dimension LE and SFZ Player.

It doesn't work in Sforzando, for what that's worth.  I looked at a few of the GPO instruments to see how they implemented it, and they're using the amplitude_onccX opcode, which apparently is an Aria-specific opcode: see http://plogue.com/phpBB3/viewtopic.php?f=14&t=4389.
(08-09-2016, 01:12 AM)peastman Wrote: [ -> ]
Quote:I seem to remember that it worked in SSO when I developed it using mainly Dimension LE and SFZ Player.

It doesn't work in Sforzando, for what that's worth.

With SSO, I can confirm that using rgc:audio sfz, both cc7 and cc11 by default act as a volume control. With sforzando, by default cc11 does nothing, but cc7 does control volume.
Pages: 1 2 3 4 5 6 7