Re: [linux-audio-dev] News about sequencers (not my own though!)

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] News about sequencers (not my own though!)
From: David Slomin (dgslomin_AT_alumni.princeton.edu)
Date: pe tammi  21 2000 - 11:43:19 EST


Fredrik wrote:
>
> A midi stream for each note? Current high end samplers and synths
> have about 128 notes polyphony and two midi inports. Imagine a
> sampler with 256 midi ports! (128 in + 128 out) Software synths
> makes these things easier, without doubt.

Using Ethernet (for example) as a transport, you could multiplex a
nearly unlimited number of MIDI streams over a single cable, just
like you can multiplex a nearly unlimited number of TCP streams over
a single cable with Ethernet today. I already run MIDI over TCP over
Ethernet in a multiplexed manner quite happily, using my little
NetMIDI toys. I certainly wasn't proposing to have 256 actual MIDI
cables going into a single synth!

As a purely academic exercise, you could theoretically multiplex
multiple MIDI message streams over a single MIDI transport cable,
(sticking each packet inside a sysex message) but the speed would be
abysmal.

> But how do you know which patch is assigned to that channel? Do you
> send a program change before each note? That could be a good idea,
> in that the patch is a property of the note rather than the channel.

How do you do it today? MIDI does not provide any concept of a query
and response, since it is a uni-directional protocol (like a pipe).
For practical purposes, you trust that once you initialize something
it stays that way until you change it again. If you don't
initialize a channel to the patch you want, then it's your own fault
if your piano comes out as a harmonica.

Actually, now that I got that bit of snideness out of my system
(sorry), I see what you're really asking. You don't use a new
channel or stream for every note of the song. If you were
simulating a guitar, you would only need six channels, since there
are only six strings which can be doing different things at the
same time.

> Another limitation of the MIDI protocol is the low resolution in
> CC's. They're represented as 7 bit integers. If you control a
> filter over MIDI you can clearly hear filter stepping. Some synths
> (e.g. Nord Lead) use interpolation to get around this.

Unfortunately (or fortunately, depending on your point of view),
this is just plain false. If you read the standard, you'll see that
CC's are designed to built up using several separate messages to
send a single multibyte value. This is accomplished using the
concept of set-and-hold, which is pretty pervasive in MIDI. Sadly,
many synth vendors either don't understand this, or they just leave
it out to cut costs.
 
> Roland used to sell a device (ASC-10), that implemented non-western
> scales by translating incoming note-on events to note-on+pitchbend
> or if you connected it to a GS device, note-on+NRPN.

Sounds pretty cool. I'm not much into microtuning myself, but I
recognize it as a necessary facet of music. I know that Big Briar
(the current company of Robert Moog, synthesis pioneer) sells
MIDI-enabled theremins. If you're unfamiliar with theremins, they
are continous pitch instruments (like trombones) whose range goes
from subsonic to supersonic. In order to represent this in MIDI,
they must be doing something similar to the ASC-10.

Div.


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : pe maalis 10 2000 - 07:23:26 EST