back to list

It looks like Scala alone might not be the tool I need

🔗Jill Arroway <saffron@...>

9/18/2008 12:21:41 AM

Scala is much fun to play with, and it's .scl files are doubtless now
an industry standard. However, at the end of Scala for Dummies, it says...

"Keep in mind that you can also tune external synths by..."

Great - except I don't /have/ an external synth. What I want is to
modify MIDI files so that they play /natively/.

Before I re-invent the wheel, I'll ask again if there's an easy way to
do this (take a MIDI file and retune it, so that when you double-click
it, it plays microtonally in Quicktime or WMP).

If not, it's not a big deal. I actually plan to write my own software
anyway. I am (extremely) familiar with the internal nuts and bolts of
the MIDI standard and have no problem pulling MIDI files apart and
putting them back together again. (I actually own a copy of the MIDI
standard, which I purchased). However, I am not familiar with sysex
messages, because they are not documented in the standard (presumably
because they are synthesiser specific). I guess, on the plus side, if
I do end up writing new software, it will benefit other people, not
just me.

Jill

🔗Carl Lumma <carl@...>

9/18/2008 1:06:54 AM

Jill wrote,

>Great - except I don't /have/ an external synth. What I want is to
>modify MIDI files so that they play /natively/.
>
>Before I re-invent the wheel, I'll ask again if there's an easy way to
>do this (take a MIDI file and retune it, so that when you double-click
>it, it plays microtonally in Quicktime or WMP).

Yup, it's covered in my original reply to you. Where did I
lose you?

>If not, it's not a big deal. I actually plan to write my own software
>anyway. I am (extremely) familiar with the internal nuts and bolts of
>the MIDI standard and have no problem pulling MIDI files apart and
>putting them back together again. (I actually own a copy of the MIDI
>standard, which I purchased). However, I am not familiar with sysex
>messages, because they are not documented in the standard (presumably
>because they are synthesiser specific). I guess, on the plus side, if
>I do end up writing new software, it will benefit other people, not
>just me.

Unfortunately the bare MIDI standard does not have a way to
specify the precise pitches of the notes. Pitch bends are
the only way to do it that are compatible with all MIDI devices.
Unfortunately, they were designed for bending pitches, not
tuning them precisely. They're a channel message for starters,
so they effect all notes on the channel they're sent on. So you
run into the 16 channel/bus limit. The "MIDI Tuning Standard"
(a name for a series of extensions added to MIDI over the years,
but very poorly supported by synth manufacturers) allows precise
tunings of notes, but you still have the 128 notes/channel
barrier.

So no matter what you do, it's far from ideal. But usually
there is a way to get results.

-Carl

🔗Jill Arroway <saffron@...>

9/18/2008 5:02:54 AM

--- In MakeMicroMusic@yahoogroups.com, Carl Lumma <carl@...> wrote:
>
> Yup, it's covered in my original reply to you. Where did I
> lose you?

My apologies. It just didn't sink in. I'll check out the
RetuneMIDIFile thing. Thanks a million.

> Unfortunately the bare MIDI standard does not have a way to
> specify the precise pitches of the notes.

I know.

> Pitch bends are
> the only way to do it that are compatible with all MIDI devices.

Right, but it doesn't have to be comptabile with *all* MIDI devices,
just the default player on Windows (WMP) and the Mac (Quicktime), so
what I was wondering is how to retune those particular "software synths".

> Unfortunately, they were designed for bending pitches, not
> tuning them precisely. They're a channel message for starters,
> so they effect all notes on the channel they're sent on. So you
> run into the 16 channel/bus limit. The "MIDI Tuning Standard"
> (a name for a series of extensions added to MIDI over the years,
> but very poorly supported by synth manufacturers) allows precise
> tunings of notes, but you still have the 128 notes/channel
> barrier.

I understand. However, the multiple channel limit is easy to work
around, so that's not really a problem.

> So no matter what you do, it's far from ideal. But usually
> there is a way to get results.

Yep. Thanks very much. I'll see what I can do with Scala. I may well
be writing my own software anyway, just because it's fun. We'll see.

Thanks again.
Jill