Re: [Qtractor-devel] LV2-Yoshimi state save/load
An Audio/MIDI multi-track sequencer
Brought to you by:
rncbc
From: Will G. <wil...@mu...> - 2016-04-03 15:39:06
|
On Sat, 2 Apr 2016 22:31:18 +0100 Rui Nuno Capela <rn...@rn...> wrote: > On 04/02/2016 08:08 PM, Will Godfrey wrote: > > On Sat, 2 Apr 2016 17:43:01 +0100 > > Rui Nuno Capela <rn...@rn...> wrote: > > > >> On 04/02/2016 04:46 PM, Will Godfrey wrote: > >>> Yoshimi's state includes all volume & pan settings, but qtractor somehow > >>> doesn't seem to restore these. It gets all the instruments in the correct parts > >>> but with pan at centre and default volume. I don't know how it manages to do > >>> that! Both Ardour and Muse get this right. > >>> > >> > >> could it be that yoshimi responds to MIDI channel volume (cc#7) and > >> panning (cc#10) messages ? > >> > >> qtractor does override each MIDI track/channel with those controllers > >> --they're both handled as MIDI track/channels properties for that > >> matter--upon session setup and anytime later, eventually whenever > >> MIDI connections changes. > >> > >> hth. > > > > Yes, Yoshimi accepts most standard MIDI CCs > > > > This is a real problem. Yoshimi state is a very complete setup and is intended > > to restore it to *exactly* the condition it was saved at. If you are changing > > anything at all after the state has been loaded you break Yoshimi's model. > > > > I've had this discussion with other sequencer builders. While I can appreciate > > the desire to put things in a known condition, it's my belief that any such > > changes should only be made *before* a state or patch set load. > > > > and why is that a problem at all? > > i must say it's been like so since day 0 in qtractor model; it has been > like so for external soft- and hard -instruments, following the GM/GS/XG > standard all over; plug-ins are no different either, even though you can > insert a multi-timbral plug-in on a midi output bus, MIDI tracks volume > and pan will converge to it on respective MIDI channel basis, so there's > no escape from that. > > otoh. the problem i see is often one of hard-wiring these MIDI > controllers (cc#7, cc#10) directly to an internal instrument state > parameters or control ports, whatever--in my (fairy tales) book, > hard-wired MIDI CC's *should* "modulate" the DSP model variables, and > never override directly fundamental state model variables. > > eg. considering a state_value in the normalized range [0, 1] and > midi_value in [0, 127] 7bit range, then the effective dsp_value > should be: dsp_value = state_value * midi_value / 127; > > thinking of which, you may probably know that doing this MIDI controller > 1:1 functional mapping to a plug-ins internal state is considered > "serious felony" by the LV2 police, don't you? ;) > > cheers One of the things I like about qtractor is it is much lighter weight than either of the other two well known sequencers that support LV2. However, neither of them seem to have this problem. If I re-load a session, not only are all the tracks as I saved them, so is even the song position and the complete state of Yoshimi at that time. I'm not going to get into arguments as to which is right or wrong, but it does rather take the shine off. I can sort-of get round it by bedding in CCs at the start of each track although that's rather tedious - but what other CCs do you set? It would seem to me the only valid CC for a sequencer itself to set would be 121 - reset all controllers. That would not be a problem, because one of the user settings in Yoshimi is to ignore it! (there is a sequencer that sends this at the beginning of every segment of every track). -- Will J Godfrey http://www.musically.me.uk Say you have a poem and I have a tune. Exchange them and we can both have a poem, a tune, and a song. |