From: Chris C. <ca...@al...> - 2004-12-08 11:24:45
|
On Wednesday 08 Dec 2004 10:20, Steve Harris wrote: > Hmm... well the host ip and port number of the imcoming message are > unique for the source, so the host could remeber it from the original > registration message, and treat messages from that source as coming > from the UI and not reflect them. > > But, I dont think there is a way in the liblo API of getting the > address or port of an incoming message, its a longstanding bug. We need to do something about that, because it's a pretty fundamental problem. What I was trying to do was very simple -- write a script that starts fluidsynth-dssi with GUI visible and a particular soundfont loaded. It can't be done with our current tools, at least not reliably and with a consistent UI, because the host won't update the UI when it gets an external configure request from dssi_osc_send. We absolutely need to be able to do that. Either we find a way to identify incoming messages, or we adopt Fons's suggestion (always updating the UI even for things it initiated itself). The latter would mean changing the structure of existing GUIs, so we should do that now if we were going to. (btw, the same example works as an example of a case where the existing GUI would need significant modification if it were to fit Fons's scheme. Calling configure twice with the same key and value could produce different results -- for example reloading a file that has changed in the meantime -- so a UI can't just ignore a configure request when it happens to have the same value for that key already. This means the Fluidsynth UI would have to act to load its soundfont only when it got the configure update back from the host, not when the user first clicked the file load OK button, or else it would be loading it twice. That would work, but probably be a bit less pleasant for the user.) Chris |