k y m a • t w e a k y — the kyma collective || view the current website || February 2015 Archive

/ WebHome / WebHome / Know.SoundToGlobalValuesInVCS


Know Section

Problems & Sol'ns
Download Updates


All Sections


Login / Register 
Change password
Forgot password?

Symbolic Sound

Kyma Forum
Eighth Nerve

TWiki Links

TWiki Formatting FAQ
What is TWiki?
%SESSION_ENDIF% twiki.org


As I edit random generators in the expressions library, I want to view numbers that are generated to see if they match my expectations. My solution was to put expressions into the Value field of the 'SoundToGlobalController' and use a numberbox and slider in the VCS for visual feedback.

My question has to do with the VCS and how it is responding to the input. The range I am working with is -1 to 1. As a test I used the expression, (1s random). When the VCS Min/Max range is set from 0 - 1, the VCS numberbox seems to show the predicted values. The generated numbers are in the -1 to 1 range with a uniform distribution -- the slider(rightly) cannot accurately respond to values below zero. I was surprised that the number box showed this range because I thought the VCS would modify the values to fit the 0-1 range that I specified.

To see if I could make the slider reflect -1 to 1, I tried changing the Min/Max range in the VCS to -1 to 1. Doing so created a some very unexpected results. The range shown in the numberbox now seems to extend from -3 to +1. How is the VCS interacting with input from 'SoundToGlobalController'?


Unlike incoming MIDI controller values (which are assumed to be in in the range of (0,1)), the values generated by a SoundToGlobalController are unbounded. For that reason, you don't ordinarily have to rescale the vaue of a SoundToGlobalController in the VCS. Since the VCS is expecting values in the range of (0,1), rescaling the value of a SoundToGlobalController can yield unexpected results.

For example, if your actual values are (-1,1) and you set the VCS fader range to (-1,1), the VCS will scale the value by 2 to get the wider range and then subtract 1 to offset the minimum value. So when the SoundToGlobal's value is -1, the VCS would multiply by 2 to get -2 and subtract 1 to get -3.

The good news is that SoundToGlobal values don't require any scaling in the VCS. The downside is that the graphical widgets aren't able to reflect the full range of values (the only way to view the values is in a text box, as you've already discovered). We are thinking of changing the behavior of the VCS so that it can resccale the range and offset of the graphical widget associated with a SoundToGlobalController without scaling the number itself. That way, you would be able to use the graphic controls as graphic displays.

-- CarlaScaletti - 08 Jul 2004

But if you wanted to display for example note number of range 0 to 128. You would have to divide it by down by 128 before it even got into the SoundToGlobal? module otherwise all your info would be clipped off. Therefore you would want the VCS range control to scale up both the widget and the text box or else you could never get the two (Widget and text) to match. It would have to take the higest abs value of the upper or the lower limmits in the VCS, and use that as it's multiplication factor. No offsets would be nessesary as that would just confuse things in any case.

-- PeteJohnston - 09 Jul 2004

TopicClassification: Solved
OperatingSystem: Mac OS9, Mac OSX, Win 98, Win ME, Win XP, Win 2000
HostProcessor?: PowerPC? G5, PowerPC? G4, PowerPC? G3, Pentium 4, Pentium 3, Pentium 2, Athlon, Celeron, Other
RAMInMB?: 0-127, 128-255, 256-511, 512-1023, 1024-2047, 2048+
CapyInterface?: Flame, PCI
KymaVersion?: KymaX?
CapybaraVersion?: Capy320, CapyLS?, Capy66, Capy33
ExpansionCards?: None, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
VirtualMemory?: On
MonitorSize?: 12, 15, 17, 21, >23
NumberMonitors?: 1, 2, 3, >3
NumberColors?: 8 bit (256), 16 bit (thousands), 24 bit (millions), 32 bit (true color)

© 2003-2014 by the contributing authors. / You are TWikiGuest