[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] MIDI
Re: [Denemo-devel] MIDI
Wed, 05 Aug 2009 16:08:01 +0100
On Wed, 2009-08-05 at 06:37 -0500, Jeremiah Benham wrote:
> This sounds like a good idea. I think the things that people are going
> to want to control most are the following:
> pitch bend
> Aftertouch/key pressure
> Mod Wheel
> sostenuto pedal press/release
> sustain pedal press/release
> Here is a chart showing these values:
> Does this help?
I trust so, I don't have the bigger picture here - that page is just a
mass of columns with numbers and names to me. As an example, I was
assuming that the second thing you mention Crescendo would not be a MIDI
thing, but something done by a script deciding on the volume (velocity
in MIDI-speak) to go with each NOTEON message.
We urgently need someone who knows what MIDI output they want and how it
relates the the music notation + extra MIDI-attributes attached
to/between notes/chords/ at start of staff/voice/at start of score.
So if Denemo has
c' d' e' f'
in the first measure, the MIDI generator will output (roughly)
NOTEON notenumber-for-c' velocity
NOTEOFF notenumber-for-c' 0
NOTEON notenumber-for-d' velocity
NOTEOFF notenumber-for-d' 0
Now if someone wants something else in that MIDI stream they need to be
able to say what it is by looking up that table you quote. At which
point I can imagine that all sorts of complexities may arise, which we
need to sort out to make sure we can do it within the control mechanisms
in place. The example of a complexity that I mentioned, the one that
occurred to me overnight, was if you wanted a MIDI message attached to a
chord which goes out after the chord's NOTEOFF message. (Obviously,)You
can put a standalone MIDI message there:
(d-DirectivePut-standalone-midibytes "mytag" "the midi message bytes")
but if you want it attached to the chord (so that it gets deleted with
the chord, etc) then we need a new override flag, else it will be
emitted at NOTEON. Channel switch was the case discussed on #denemo: you
can't attach a channel switch and switch back to a note without them
both ocurring at the same time - you would have to put the switch back
as a standalone directive after the note. So this would need fixing.
Assuming channel switch is actually what people want. It doesn't occurr
in your list Jeremiah, so it may be that there are completely different
potential user groups involved here.
I guess that other issues will arise with pitch bend etc, but I don't
know what relationship these things have with the music, beyond what the
name conjures up in my imagination.
We don't need programmers for this, we need people who want to create
MIDI controls around the notes of a MIDI track. They know they want a
MIDI something and can look it up in that table, and tell us what they
want to insert.
Later we can come to the user interface...