I used to use pypm but it has become a bit of a pain (in my case, I also had to deploy on MacOSX which became almost impossible without jumping through hoops). So I found portmidizero (https://gitorious.org/portmidizero) which so far seems to be doing the job but I have not yet worked with it extensively. However, you cannot install it with easy-install as there are errors in setup.py (description repeated twice or something like that... grab the gitorious source, hack it and do setup.py install). pygame  seems like an overkill just for MIDI functionality...

Good luck.

Michał


On Thu, Oct 3, 2013 at 12:31 PM, Atte <atte@youmail.dk> wrote:
Hi

I'm working on some midi thing in python. I had a hard time finding a decent library. In the past I used PySeq alot, but that's tricky to install and seems un-maintained. So I settled for pygame, and it's going ok. However:

1) In PySeq I created inports and outports that were visible for instance in qjackctl. Is that possible in pygame (currently I just connect to the right client from python)? Why would I prefer one over way over the other?

2) If I unplug the connected client or press ctrl-c (my preferred way of exiting my programs) I get:

PortMidi call failed...
  PortMidi: `Bad pointer'
type ENTER...

How can I exit a pygame program cleanly without getting errors?

3) One of the things I'd like to do I automatically connect to any client that shows up while the program is running and *gracefully handle it* if clients disappear while the program is running. I imagine the first is a matter of scanning for clients every now and then, but right now I get the error mentioned in 2) if I pull the plug on a device that my program is connected to. Any ideas how to handle this?

Any feedback is greatly appreciated!

--
Atte

http://atte.dk   http://modlys.dk
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-user