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

    • Microphone with proximity detection

      Around 2004 I developed a few protoype microphones enhanced to also offer proximity detection. The microphone could adjust it’s amplitude and bass response based on the proximity of the person using it. This would lessen the variable results users experience when holding a microphone too close or too far. Moreover, with proximity or its derivative mapped to a combination…

    • TV Mountain

      TV Mountain is an art piece which was initially installed as part of TechArtICT’s Dreamgrass installation at Exploration Place Fall 2022. It consisted of 12 TVs at various angles and orientations, together forming a jumbotron. As part of Dreamgrass, it subjected faceless child-like objects to a litany of 80s commercials. The working remote enjoyed a…

    • Avian Migration

      In 2018 I collaborated with Artist Lisa Rundstrom and artist/engineer Tom McGuire to create the public art sculpture, Avian Migration at Wichita’s new Advanced Learning Library. Avian Migration consists of more than 1,300 LEDs controlled by 8 motion-activated sensors spread throughout the library. I was primarily responsible for the development and implementation of the software…

    • Touch #2

      Touch #2 is a playful virtual environment and an interactive, musical instrument. Viewers become participants through play. The work transforms any flat wall into a touch-sensitive surface. A projector and infrared camera mount on the ceiling and infrared emitters mount on top of the wall, allowing the work to detect as many as 10 touches…

    • Still Life

      In 2011, as part of Hack.Art.Lab, I collaborated with composer Mary Ellen Childs and percussionist Michael Holland to create live animation triggered by live performance of Mary Ellen Childs’ composition “Still Life.” We analyzed the piece into 11 sections and created algorithmic video triggered by sound and motion to match each of the 11 sections. The video was projected…

    • SoundBlocks

      SoundBlocks is a tangible environment where youth connect blocks to describe network dataflow. The environment explores digital sound manipulation as a personal, meaningful and fun artistic endeavor, rather than as a venture into mathematical, electronic or networking relationships.