On Wednesday 30 July 2003 00:54, Guillaume Laurent wrote:
> On Wednesday 30 July 2003 01:05, Guillaume Laurent wrote:
> > And I actually don't know how, apparently it's not done by
> > refreshing the whole segment.
>
> OK, we're sending a MidiController event... I guess I'm being
> confused again by what instrument IDs actually represent.

For the sequencer's purposes it really just describes which MIDI channel 
of a particular device a track is playing on.  At the GUI side we 
associate all sorts of information with an instrument (volume, pan, 
program changes etc), but the sequencer doesn't know that -- it just 
gets asynchronous events when they change, which it pushes out to the 
MIDI device on the right channel for the event's instrument.

The problem with changing the instrument from the dropdown is that each 
MappedEvent already has an instrument id fixed into it.  So if you 
change the instrument for a track, you surely need to rewrite all the 
MappedEvents for all the segments on that track with the new instrument 
ids in them.  As I notice Bownie has also just said, I'd be surprised 
if it worked without doing that.

The other thing is, if you store the track id -> instrument id table in 
a control block and make that available to the sequencer, what does 
that actually give you?  The sequencer doesn't know which track a 
segment or MappedEvent is on anyway... does it?


Chris



-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
Rosegarden-devel mailing list
[EMAIL PROTECTED] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to