back to list

Re: another microtonal softsynth

🔗Robert Walker <robertwalker@...>

4/25/2003 9:12:02 PM

Hi Ambranadi

Thanks for drawing attention to this - it gave me a good idea today
:-)

Well at lest I think so but see what others think. As Manueal has
just mentioned, the pitch information in Scala is in the keyboard
mapping. This gives most flexibility because you can change scale
and keyboard mapping independently.

The synth programmers could do well to add support for loading them too.

Actually I just had the idea today, maybe this is the ideal format
for the interchangeable microtonal text file that I need in order
to start work to explore what a truly microtonal notation program
might look like.

One could just use the same format as midi - with controllers
and everything - and retune it using Scala scales and
keyboard mappings.

Could just look like this:

scl
... Scala scale
-scl

kbm
... Keyboard mapping
-kbm

C 10 0 ! midi controller 10: pan to 0 postion - hard left
N 1 60 127 !note on in channel 1 midi number 60 volume 127
T 1 ! wait one second
N 1 60 0 ! switch the note off again

and so on. Or something like that.

It seems to me that what would be really nice would be if one
could also have a standard for including SCALA scales data
in midi files and to send them as midi messages too. Same
for keyboard mappings. We can do MTS tuning programs already,
and the various types of tuning dumps,
but a SCALA scale sysex would be much more user friendly
for microtonal musicians, and indeed probably for programmers too
- ditto for keyboard mappings.

A sysex is the natural choice there, but we need one that is
suitable to use to send text data like this. In a midi
file you could use a text event.

Once one is able to send a text event, one can put anything we like in it
e.g.
"/scl ...
(scala scale definition)

"/kbm ...
(scala keyboard mapping)

which would be easy enough for a receiving program to deal with.

This is a technique sometimes used to extend a file format without
breaking the existing one - so long as it has a way to add text
comments to it, then one can devise syntaxes for htose and they
will get ignored by all applications that regard them as
comments. For a very well known example - that is how all
the javascript on web pages is done - it is all in html
comments so any browser that doesn't understand javascript
will treat it all as comments to be ignored.

The same technique is used in robots.txt.

So anyway, I wondered what anyone thinks about htis idea.
Also, is there any sysex that gets used for sending text data
via midi already, anyone know?

The other possibility is to make a new sysex - but only manufacturers
can do that. One of the major midi manufacturers would need to be persuaded to make
a new SCALA sysex for anyone to use. Or the alternative is to
introduce a new Universal real time sysex - don't know how
one sets about that - there are only a few of those so maybe they
are hard to introduce.

I can't think of anything else. Anyone got any ideas.
Seems to me that it would be highly desirable to
develop some way of embedding scala scales and
keyboard mappings into midi data streams if it
can be done.

Cheers,

Robert