On Tuesday, 6 June 2006 18:21, Chris Cannam wrote: > On Saturday 03 Jun 2006 12:49, Pedro Lopez-Cabanillas wrote: > > I've opened a RFE #1500028: Multitrack MIDI recording, and I would > > like to know your opinions, and discuss the technical details. > > Would you like your discussion over here or over there?
I don't mind. > Perhaps we need a Latin .po file. Sure :-) http://kde-i18n-la.sourceforge.net > > There is a little problem: the IPB is a collection of properties for > > one Playback Instrument, which may be shared by several tracks. The > > recording instrument is another different beast. We should create > > another box below the current two ones, named "Recording Parameters", > > and holding properties for only one track. > > A problem with this is consistency with audio instruments, which have a > single IPB containing both record and playback parameters. (A synth > plugin instrument has a similar IPB, but lacking the record > parameters.) > > Audio tracks actually draw their recording source from the same > instrument as the playback target, so this means that an instrument is > not only a description of playback data. If more than one audio track > is set to the same instrument, they all record from the same source. > If you look at Instrument.h, you'll see that this is directly encoded > into the base Instrument class (ugh, but it's my fault) as > getAudioInput etc. It seems the lightweight way to deal with this for > MIDI, at least beneath the surface, might just be to do the same thing > and have the "playback" instrument also define the record source. > Would this be such a problem? It doesn't really sound like it to me, > but I'm not an advanced MIDI user. If it is -- if we would really want > to separate record and playback -- then we should perhaps do that for > audio too. > > Regardless, we should probably aim at some point to provide consistent > IPBs between audio and MIDI in this respect. We could either pull out > the record source stuff from the audio IPB into another recording IPB > as you describe (doing the same thing for MIDI of course) and then give > the synth plugin tracks only a single IPB for playback, or we could > give the MIDI IPB a similar concept to the audio one, i.e. have two > adjacent In and Out channel combos. > > Note that although I don't like the MIDI IPB all that much I like the > audio one even less, so I'm not going to suggest copying it just for > the sake of not having to change the audio one. The shared playback Instrument is something I like as a valuable feature, even if it confuses many users the first time. When you are building and playing an arrangement, you play the tracks thru instruments. Usually several tracks thru the same instrument. It is a clean and useful concept. On the other hand, when you are recording MIDI (or audio), you are making "takes". It's usual to record several takes of the same part, each one in consecutive tracks. When this happens, you usually assign the same playback instrument to all the takes (tracks) and use the "mute" button to choose the best performance of them. If you are recording several tracks at once with a multitrack recorder you may want to take several takes of each musician, too. I think that associating the recording properties to the playback instrument may be useful: you can share the same settings along several takes, identifying the recording settings by the playback instrument, used also by the THRU function (which is necessary). And the other argument in favour of this design: it is simple to do, and it is consistent with the audio recording behavior, so it requires less lines of code. So, after thinking it another time and given your arguments, I prefer to keep only one IPB, adding to it the required recording parameters. > > Another parameter could be "Sysex track" (check box) > > Would this affect anything other than what events are recorded? If not, > it could just be another option in the record channel combo (1..16, > All/Omni, Sysex -- where Sysex is like All but excludes all channel > events). I would prefer to provide a default setting behaving exactly as now. I mean: If you arm one track, and press the record button, everything is recorded on the selected track including sysex events. With the new multitrack recording system, this should be also the default behavior. If you want to use only one combo, it would have the following options: * All + Sysex (default) * All, no Sysex * Sysex only * Channel events in one channel (1-16) To offer the same combinations with one combo and a checkbox, Channel combo: * All (default) * None * Channel events in 1-16 Sysex checkbox: (checked by default) > > What about opening a new branch in the SVN? > > Fine by me, I suggest you do as you see fit. OK. I prefer to do it this way, to avoid disturbing other people. It will be a slow development, as I don't have much free time. Regards, Pedro _______________________________________________ Rosegarden-devel mailing list Rosegarden-devel@lists.sourceforge.net - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel