pyPortMidi

pyPortMidi

pyPortMidi is a Python wrapper I wrote for PortMidi. PortMidi is a cross-platform C library for realtime MIDI control. Using pyPortMidi, you can send and receive MIDI data in realtime from Python.

Besides using pyPortMidi to communicate to synthesizers and the like, it is possible to use pyPortMidi as a way to send MIDI messages between software packages on the same computer. For example, Using pyPortMidi and MIDI-YOKE on a Windows machine, it is possible to send realtime MIDI messages between programs on the same computer using loopback virtual MIDI ports.

pyPortMidi is now in a distribution package that supports compiling from Win32, Linux, and OS X from the source. There is also binary available for Win32 Python 2.3.x and Win32 Python 2.4.

The source distribution includes a compiled version of the PortMidi C library for Win32, OS X, and Linux.

pyPortMidi is actively used in the Python community and has been updated and forked to be current with more recent Python and PortMidi releases in the PortMidi and pyGame trunks.

Version 0.0.3 – released March 15, 2005 — license added March 15

  • pyPortMidi-src-0.0.3.tar.gz  (platform-independent source in tar.gz format)
  • pyPortMidi-src-0.0.3.zip(platform-independent source in zip format)
  • pyPortMidi-0.0.3.win32-py2.3.exe (win32 self-installing executable for Python 2.3.x)
  • pyPortMidi-0.0.3.win32.zip (compiled Win32/Python 2.4 binary distribution in .zip format )
  • license.txt
  • Similar Posts

    • Have a Seat!

      Have a Seat! is a playful interactive installation in which a video of a traveler of both time and space urges viewers to sit on a couch. When three people sit close together on the couch a special broadcast or snippet of The Muppet Show plays. Strangers coming to view the work find themselves uncomfortably…

    • Ghost in the Machine

      Originally conceived in 2008, Ghost in the Machine (GITM) consists of a webcam and display which mixes and crossfades events in realtime with motion-activated video it has recorded previously. It continually shifts between 3 states: individual, community, and the world. GITM has been shown in many venues and contexts.

    • LegalLanguage

      I wrote LegalLanguage, a scripting language for lawyers at Legal Services Corporation in West Virginia. The staff used LegalLanguage to write simple scripts that could then ask clients questions, give guidance, and print out the appropriate forms. This freed up resources to focus on the large number of cases involving domestic violence.

    • SoundScratch

      SoundScratch is a set of extensions I wrote to manipulate audio in a children’s programming language called Scratch. The environment emphasizes the expressive capabilities of sound through the act of creation and design.

    • The Incubator

      The Incubator is an art piece which was initially installed as part of TechArtICT’s Dreamgrass installation at Exploration Place Fall 2022. Within the installation it was the machine where faceless children were created and indoctrinated. A Center TV displayed a teleprompter which offered encouragement for viewers to become participants, reading into a microphone placed at…