On 5/29/2014 12:23 PM, igevorse wrote: > I've talked with daeavelwyn and he gave me an example of problem that he > have. > Imagine if you have a score with staff1 = flute, staff2 = piano and staff3 = > piano. MuseScore makes it: channel1 = flute, channel2 = piano. > Now you decided to add clarinet. Clarinet staff would be between flute and > piano, so we will get channel1 = flute, channel2 = clarinet and channel3 = > piano. > But... you use an external VSTi, and without changing settings in qmidiroute > clarinet is playing like piano! > So, every time you writing a new score you need to re-route qmidiroute. In this instance the new clarinet staff should be assigned channel 3 rather than reordering all the channel numbers. This would require saving the channel number to the MuseScore file as you mention in solution 1 below.
> 2 possible solutions: > > 1. We need to route signals once and change staff's channel in MuseScore! > We should have an ability to change channels in mixer window. > But not all users use JACK MIDI, right? So, We need to hide this feature > from regular users, and show only if Preferences->I/O->"Use JACK MIDI" > checkbox is checked. > > It would be like that: [4] > Also, we need to slightly change MuseScore file format to have an ability to > save our staff->channels links. > > Recap: We need to change mixer GUI and file format. > We get an ability to set channels to staffs. This is the traditional method. Keep in mind that MIDI is limited to 16 channels per bank/port. So you would also need to save a bank number in the file and display it in the UI in order to allow more than sixteen instrument per score. (See "Finale instrument list.PNG" for a sample screenshot) > 2. One port per each staff > > There is another approach, we wouldn't change GUI, and fileformat, and every > staff would have an own port. Port names can be generated from staff name + > number if name repeats. > You can see an example here: [5] > > Which option is better? > Thank you. This seems pretty clean. I don't have enough experience working with external synths to know the disadvantages of option 2. Would all synthesizers/samplers support this method? Are there limits to the number of ports synthesizers/samplers might support? If the user changed the staff name in the score would that trigger a new automatic naming of the port and break the Jack audio connection for that staff? If so, that would be unexpected (and undesirable) for the user. David ------------------------------------------------------------------------------ Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet _______________________________________________ Mscore-developer mailing list Mscore-developer@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mscore-developer