rtmidi-python
Python wrapper for RtMidi, the lightweight, cross-platform MIDI I/O library. For Linux, Mac OS X and Windows.
Setup
The wrapper is written in Cython, but the generated C++ code is included, so you can install the module as usual:
python setup.py install
If you want to build from the Cython source, make sure that you have a recent version of Cython (>= 0.17), and run:
python setup.py install --from-cython
Usage Examples
rtmidi-python uses the same API as RtMidi, only reformatted to comply with PEP-8, and with small changes to make it a little more pythonic.
Print all output ports
import rtmidi_python as rtmidi
midi_out = rtmidi.MidiOut()
for port_name in midi_out.ports:
print port_name
Send messages
import rtmidi_python as rtmidi midi_out = rtmidi.MidiOut() midi_out.open_port(0) midi_out.send_message([0x90, 48, 100]) # Note on midi_out.send_message([0x80, 48, 100]) # Note off
Get incoming messages by polling
import rtmidi_python as rtmidi
midi_in = rtmidi.MidiIn()
midi_in.open_port(0)
while True:
message, delta_time = midi_in.get_message()
if message:
print message, delta_time
Note that the signature of get_message() differs from the original RtMidi API: It returns a tuple instead of using a return parameter.
Get incoming messages using a callback
import rtmidi_python as rtmidi
def callback(message, time_stamp):
print message, time_stamp
midi_in = rtmidi.MidiIn()
midi_in.callback = callback
midi_in.open_port(0)
# do something else here (but don't quit)
Note that the signature of the callback differs from the original RtMidi API: message is now the first parameter, like in the tuple returned by get_message().
License
rtmidi-python is licensed under the MIT License, see LICENSE.
It uses RtMidi, licensed under a modified MIT License, see RtMidi/RtMidi.h.
Metadata
Release files for rtmidi-python 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| rtmidi-python-0.2.2.tar.gz | 54.8 kB | Without provenance | Details for rtmidi-python-0.2.2.tar.gz |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| rtmidi-python-0.2.2.win-amd64-py2.7.exe | Details for rtmidi-python-0.2.2.win-amd64-py2.7.exe | |||
| rtmidi-python-0.2.2.win32-py2.7.exe | Details for rtmidi-python-0.2.2.win32-py2.7.exe |
Total release size: 535.9 kB
Release files / rtmidi-python-0.2.2.tar.gz
| Download URL | rtmidi-python-0.2.2.tar.gz |
|---|---|
| Size | 54.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a092ab3d9b45d43a342a602a60bfd94381dce39d8120f4d06152d7755d57ecf2
|
|
BLAKE2b-256 checksum How to use checksums |
d17086e366288c5efef823926a0bfa19fdc90674ea11415f9b19a15894b71994
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / rtmidi-python-0.2.2.win-amd64-py2.7.exe
| Download URL | rtmidi-python-0.2.2.win-amd64-py2.7.exe |
|---|---|
| Size | 256.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1d341334182f4c041da107f109115b2e3a02c5eca961880fc11a664da7b4575d
|
|
BLAKE2b-256 checksum How to use checksums |
18e196b91ea9b79d9af6837ed4ef7af52ba4722b0b42a9e09d8f6acd0209316c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / rtmidi-python-0.2.2.win32-py2.7.exe
| Download URL | rtmidi-python-0.2.2.win32-py2.7.exe |
|---|---|
| Size | 224.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
20959f5db54338a497d7c9e1821e5845bd1501654f8c59be0129e8c04d14bdbb
|
|
BLAKE2b-256 checksum How to use checksums |
3e44552a9cc5ee1e4d9c3f70dbd90504160d6018f90ff511dd3d245b6409f29a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for rtmidi-python 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.