Forum rss-feed

Forum

Software: Scalar transposition with Belcanto

Most Recent

written by: TheTechnobear

That's interesting so you need 'all base note' due to the multiple scalers?
I assumed it was only necessary when you had multiple nouns (=properties) on a particular agent
eg connections on a controller, kg outputs on a keygroup.

( though ive never tried, as I tend to avoid this 'all' stuff :))

written by: torsten_anders

Wed, 10 Apr 2013 12:53:42 +0100 BST

Dear all,

I have my Pico for about halve a week now, and I try to customise its standard setup. It is really great to see how flexible this instrument is, and various settings are rather strait forward to do (e.g., yesterday I found the folder with predefined scripts :)

Here is what I like to do. The tonic of a scale is particularly important, and often music have figurations around it or otherwise leads to it. Now, all Eigenharp scales start with their tonic. On an Alpha and Tau this is less of a problem, but the pitch range of the Pico is obviously limited.

I would like to be able to play a few scale notes below the lower tonic. For that, I would like to perform scalar transpositions up and down. Belcanto luckily already has this build in in principle for setting up the transposition of courses of the larger Eigenharps, but I could not find anything predefined to perform a scalar transposition on a whole keyboard.

I would like to do this with Belcanto (though I do have WB as well), because then I can later use that for whatever setup I need it without much fiddling.

Below is my first Belcanto script where I am trying to do exactly that. Naturally, the first shot of a newbie does not work (when I try to run the script I get the message: status failed). What am I missing?

I guess that instead of setting the base note of a scale I should somehow decrement it, but I have no idea how. How would I access the current base note value so that I can decrement it before setting it? Also, the interval "unit" may be completely wrong. I found that in descriptions of Keygroups, but it may not apply for setting Scalars.

Thanks a lot!

Best,
Torsten



description
This script decrements the base note of the current scale by one.
Basically, this moves the current scale up by one scale degree.
For example, any tonic key will turn into the last degree of the
current scale.

This will affect all scalers in the system.

script
all rig all scaler hey all base note to - 1 interval set


written by: torsten_anders

Wed, 10 Apr 2013 13:42:04 +0100 BST

To answer my own question: I changed my goal from incrementing to setting specific scalar interval transpositions. Below is the script for scalar transposition down by one scale degree.

It appears that having a range of Belcanto scripts doing essentially the same except for some small detail is a common way of doing things, judging from other scripts I saw.

This begs the question: is there any way of defining Belcanto scripts that expect an argument? For example, you run a script that expects a certain number, and then you press a key that denotes that number? Phrased differently: can users define their own mode keys from scratch?

Thanks!

Best,
Torsten

name
ScalarTransposition-2ndDown
description
This script sets the base note of the current scale to -1
(scalar transposition by that amount).

This will affect all scalers in the system.

script
all rig all scaler hey all base note to - 1 set


written by: keyman

Wed, 10 Apr 2013 14:12:05 +0100 BST



empty join
all rig hey
all scaler base note to - 1 set

(attention to the spaces in between words and signs -)
hope this helps


written by: torsten_anders

Wed, 10 Apr 2013 14:40:01 +0100 BST

Thanks for your kind response. Has your script a different effect? If so, why?

Thanks!

Torsten


written by: TheTechnobear

Wed, 10 Apr 2013 16:03:41 +0100 BST

scripts cannot accept parameters.

the only thing you can do is to use a variable, which can be used to similar effect.

ive have examples on my blog http://myeigenharp.wordpress.com

simple usage is:


-1 as base step define
scaler 1 hey base note to variable base step set

you can see variable definitions with bcat
e.g.

bcat '[interpreter1]' | grep 'base step'



variable names must be belcanto words, basically everything in belcanto has to be in the lexicon.


written by: torsten_anders

Wed, 10 Apr 2013 22:36:39 +0100 BST

Thanks! Torsten


written by: keyman

Thu, 11 Apr 2013 11:54:25 +0100 BST

Sorry Torsten, yesterday I was in a hurry...

You can be familiarize more with Belcanto here Belcanto

Starting an empty conversation (no agent called)
empty join
...and this would be more appropriate
all scaler hey
all base note to - 1 set

independently that there is no scaler agent outside rigs, all scalers in EigenD.


written by: TheTechnobear

Thu, 11 Apr 2013 14:45:57 +0100 BST

That's interesting so you need 'all base note' due to the multiple scalers?
I assumed it was only necessary when you had multiple nouns (=properties) on a particular agent
eg connections on a controller, kg outputs on a keygroup.

( though ive never tried, as I tend to avoid this 'all' stuff :))



Please log in to join the discussions