1 Apr 2008 03:48
Detecting new alsa sequencer clients (with some event loop) so that i can subscribe them
R. Dresens <chromisx <at> nedlinux.nl>
2008-04-01 01:48:01 GMT
2008-04-01 01:48:01 GMT
Hello, I'm currently writing an application that will be able to 'auto subscribe' itself to a certain sequencer client when that client becomes available to the system. I want (for example) to be able to plug in a USB MIDI interface, and when I do that then my application detects this and does a subscription on it, just like aconnect would do. A possible solution is polling; every second or so, i could generate a list of clients with snd_seq_query_next_client and look for a certain client name (libpcre comes to mind here;), but I was wondering if there is a better solution? ..in other words, is it possible to get such events from the system in a similar way like one would receive regular MIDI events? http://www.alsa-project.org/alsa-doc/alsa-lib/structsnd__seq__event.html list all the events; an interesting one could be snd_seq_connect_t for monitoring connections on my own ports, but that's not what I'm looking for. I can't seem to find an event related to this functionality. Is there something what I'm currently overlooking? Such functionality may be usefull for GUI versions of aconnect. I looked in the source of qjackctl (it has an alsa patchbay), but I haven't found nothing usefull yet since it seems to me that this software also does polling/refresh on a certain interval. Has anyone a usefull tip for me?(Continue reading)
RSS Feed