Metadata-Version: 1.1
Name: python-rtmidi
Version: 0.4.3b1
Summary: A Python wrapper for the RtMidi C++ library written with Cython.
Home-page: http://chrisarndt.de/projects/python-rtmidi/
Author: Christopher Arndt
Author-email: chris@chrisarndt.de
License: MIT License
Download-URL: http://chrisarndt.de/projects/python-rtmidi/download/
Description: 
        Overview
        ========
        
        RtMidi_ is a set of C++ classes which provides a concise and simple,
        cross-platform API (Application Programming Interface) for realtime MIDI
        input/output across Linux (ALSA & JACK), Macintosh OS X (CoreMIDI & JACK),
        and Windows (Multimedia Library & Kernel Streaming) operating systems.
        
        python-rtmidi_ is a Python binding for RtMidi implemented with Cython_ and
        provides a thin wrapper around the RtMidi C++ interface. The API is basically
        the same as the C++ one but with the naming scheme of classes, methods and
        parameters adapted to the Python PEP-8 conventions and requirements of
        the Python package naming structure. **python-rtmidi** supports Python 2
        (tested with Python 2.7) and Python 3 (3.3).
        
        .. note::
            **python-rtmidi** is currently in **beta-stage**, which means is is
            published in the hope that other developers try it out and help finding
            bugs, and that its API is not yet finalised. What is there should work
            but is currently only tested thoroughly under Linux ALSA/JACK and less
            regularly under OS X (CoreMIDI/JACK) and Windows (WinMM).
        
            Support for the Windows Kernel Streaming API is currently *broken* in
            RtMidi.
        
        
        Usage example
        -------------
        
        Here's a quick example of how to use **python-rtmidi** to open the first
        available MIDI output port and send a middle C note on MIDI channel 1::
        
            import time
            import rtmidi
        
            midiout = rtmidi.MidiOut()
            available_ports = midiout.get_ports()
        
            if available_ports:
                midiout.open_port(0)
            else:
                midiout.open_virtual_port("My virtual output")
        
            note_on = [0x90, 60, 112] # channel 1, middle C, velocity 112
            note_off = [0x80, 60, 0]
            midiout.send_message(note_on)
            time.sleep(0.5)
            midiout.send_message(note_off)
        
            del midiout
        
        More usage examples can be found in the ``tests`` and ``examples`` directory
        of the source distribution. API documentation is available by looking at the
        docstrings in the Cython source code ``src/_rtmidi.pyx`` or using tools like
        ``pydoc`` or IPython_ and by reading the (somewhat terse and inaccurate)
        RtMidi_ documentation.
        
        
        .. _rtmidi: http://www.music.mcgill.ca/~gary/rtmidi/index.html
        .. _python-rtmidi: http://chrisarndt.de/projects/python-rtmidi/
        .. _cython: http://cython.org/
        .. _ipython: http://ipython.org/
        
Keywords: rtmidi,midi,music
Platform: POSIX
Platform: Windows
Platform: MacOS X
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: MacOS X
Classifier: Environment :: Win32 (MS Windows)
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Multimedia :: Sound/Audio :: MIDI
Classifier: Topic :: Software Development :: Libraries :: Python Modules
