On 07/09/2014 12:54 AM, Clemens Ladisch wrote:
Have a look at how aseqdump decides what PORT_CAP bits to set.
Thanks, will do.
Also, what about ALSA permissions that amidicat itself advertises? To make a long story short, I think I have this backwards.
These bits specify what _other_ clients can do with the port.
Makes sense to me.
Does the thread actually read the delivered events from the kernel buffer?
Should be, I'm calling snd_seq_event_input() in a tight loop. Hoping this is the appropriate function to be calling, and that all the various structures around it are initialized correctly.
Also, try "amidicat --list", which will give you output similar to "aplaymidi -l" but include more devices (unlike aplaymidi, amidicat does no filtering, it shows you everything, even including itself in the list).
It should list only those ports it can use, i.e., connect from/to.
It already does, in a way. Anything that has read/write permission, direct and/or subscription, is usable. I like showing everything, it's useful for diagnostics/troubleshooting. If user wants filtered output they can apply that later (or perhaps I'll add it when adding the --quiet flag). I still think the most complete/useful output should be the default.
Josh