> On 4/9/2012 10:32 PM, D. Michael McIntyre wrote:
>> I think we intended for melodic instruments to float by default, so
>> the behavior you're seeing is expected, I think. I wonder why it isn't
>> working?
>
> Ok, so it should be working for me. Then let me detail the steps to
> reproduce and what I've tried.
>
> I usually use fluidsynth, but this seems to have no bearing
> whatsoever on the problem. I can see that it isn't working by watching
> the "OUT" field on the transport (even when fluidsynth is down). When I
> have an instrument in "auto" mode, the "OUT" field always says "NO
> EVENTS". As soon as I switch it to fixed, I see events going out (and
> the VU meter comes to life in the track).
>
> I can reproduce this 100% from a brand new sequence. I just drop in
> a segment, throw in some notes and hit play. Nothing in the "OUT"
> field. Then I switch the instrument to "fixed" and the "OUT" field
> comes to life.
OK, thank you for the reproduction recipe.
> I'm starting to grasp this logical instruments thing, I think. It
> appears that the idea is to let the sequencer pick a channel instead of
> having each instrument fixed to a specific channel.
Exactly.
> I assume this would
> allow one to shift instruments as the sequence progresses and different
> instruments are needed. Not sure how one might change instruments as a
> segment progresses. Maybe each segment has its own instrument?
Exactly, and for "auto", its own time interval on some channel.
> Or is
> there a way to insert a program change event into a segment?
That's been deprecated for a long time and it will confuse both fixed and
auto.
> Anything else I should try? Path through the code to follow?
I'm not sure what to path to tell you, since I'd be following it myself
and that would duplicate our effort. So I'll give you a brief overview of
how channel is handled.
InternalSegmentMapper contains a ChannelManager which governs the channel:
chooses it, sends appropriate setup. For fixed channel, it does almost
nothing. For SoftSynth instruments, it should be doing nothing at all,
just checking that and returning. Each MappedEvent knows a channel.
AlsaDriver learns that channel in processMidiOut and from that point on,
the channel logic is unchanged.
Tom Breton (Tehom)
------------------------------------------------------------------------------
Better than sec? Nothing is better than sec when it comes to
monitoring Big Data applications. Try Boundary one-second
resolution app monitoring today. Free.
http://p.sf.net/sfu/Boundary-dev2dev
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel