Skip to content

KDMAPI (Keppy's Direct MIDI API) wrapper for Python

Notifications You must be signed in to change notification settings

python-midi/kdmapi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kdmapi

PyPi version Codacy Badge

KDMAPI (Keppy's Direct MIDI API) wrapper for Python

kdmapi provides both C bindings for OmniMIDI.dll and a Python-friendly wrapper for them

A Mido backend is also provided, instructions on how to use it are below

Requires Python 3.8 or greater

Installation

pip3 install kdmapi

You will also need to have OmniMIDI installed

Instructions

from kdmapi import KDMAPI

# Initialize the device
KDMAPI.InitializeKDMAPIStream()

# Send a short 32-bit MIDI message data
KDMAPI.SendDirectData(0x0)

# Close the device
KDMAPI.TerminateKDMAPIStream()

Mido backend

You can use KDMAPI as a Mido output backend

import mido

# Set KDMAPI as MIDO backend
mido.set_backend("kdmapi.mido_backend")

# Open MIDI file
midi_file = mido.MidiFile("your_file.mid")

with mido.open_output() as out:
    for msg in midi_file.play():
        out.send(msg)

License

#
# Copyright (C) 2022 Sebastiano Barezzi
#
# SPDX-License-Identifier: LGPL-3.0-or-later
#

About

KDMAPI (Keppy's Direct MIDI API) wrapper for Python

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages