On 2013/04/02 20:24, Jan Stary wrote: > Is there a way to tell (from sndiod debug, preferably) > to which exact midi port an application has connected? > The debug is detailed about _audio_ devices, as in > > snd0 pst=cfg: device requested > sio(rsnd/0|ini): created > snd0 pst=ini: 48000Hz, s16le, play 0:1, rec 0:1, 9 blocks of 960 frames > sock(sock|ini): processed in 39680us > > - is there a way to get such a detailed info > about connections (and disconnections) to the > exposed midi ports and midithru boxes?
(sorry, just picking on a couple of small parts of your mail, I will leave the rest to someone who knows more about this ;) You can print the internal devnum that would let you work it out, but to get a nice human-readable output I think we'd need what is suggested in the XXX comment. Index: sock.c =================================================================== RCS file: /cvs/src/usr.bin/sndiod/sock.c,v retrieving revision 1.5 diff -u -p -r1.5 sock.c --- sock.c 6 Dec 2012 08:13:04 -0000 1.5 +++ sock.c 2 Apr 2013 19:14:16 -0000 @@ -860,6 +860,14 @@ sock_hello(struct sock *f) if (f->midi == NULL) return 0; /* XXX: add 'devtype' to libsndio */ +#ifdef DEBUG + if (log_level >= 3) { + sock_log(f); + log_puts(": device "); + log_putx(p->devnum); + log_puts("\n"); + } +#endif if (p->devnum < 16) { d = dev_bynum(p->devnum); if (d == NULL) > In fluidsynth's settings, midi.sndio.device is "default". btw in 1.0.9 this was blank, which is what caused the crash printing settings from fluidsynth in my first attempts at updating to 1.1.6; I don't know if "default" was the best option but it seemed to make sense.