From: Robert Jonsson <rj@sp...> - 2005-05-15 14:13:59
I'm having bit of a trouble related to the change I made for REL_07 yesterday,
allowing for several synths with identical names.
To my understanding it is not right to have several synths with identical
names since MusE cannot resolv which one is the "right" one, while loading a
song for instance.
Still I would like the it to be possible to assign each synth individually,
just to be able to play them. The change I made in REL_07 was to internally
rename the synth if there already was a synth with that name.
It's not right but it seem to me that it is better than that it's only
possible to assign the first synth, after that the dialog has marked all the
synths with the same name as "used".
Now I was looking into making something similar in HEAD, and I'm basically
stuck on the call to AlsaMidi::findPort from mstrip.cpp. It takes a string as
an argument and it compares this string to the names in alsa.
1. we can't (and really should not!) change the name of a synth in alsa
2. the compare is done on string level so it does not distinguish between
It is possible to distinguish between them by checking the client id (i
think), but the findPort has to be redesigned.
I'm reluctant to do this. First it spoils the symmetry, findPort is used for
other types also.
Secondly, perhaps more importantly, I'm not sure if it's really right to do
this. The bug is really in the synths... we cannot make it fully work however