Получение входных данных от MIDI-устройств в реальном времени (Python)
Вопрос
У меня есть триггерный палец (MIDI-планшет), и я хочу иметь возможность читать его ввод в реальном времени и заставлять Python выполнять действия в зависимости от нажатой клавиши.
Мне нужно для Windows и желательно работающее с Python 2.5+
Спасибо
Решение
PyGame включает в себя встроенный миди-модуль, доступен для Linux, Windows и MacOS и очень хорошо поддерживается.
Например, вот документация для pygame.midi.Input:
Input is used to get midi input from midi devices.
Input(device_id)
Input(device_id, buffer_size)
Input.close - closes a midi stream, flushing any pending buffers. closes a midi stream, flushing any pending buffers.
Input.poll - returns true if there's data, or false if not. returns true if there's data, or false if not.
Input.read - reads num_events midi events from the buffer. reads num_events midi events from the buffer.
Если вы ищете альтернативу, посмотрите PythonInMusic в вики Python.
Там есть различные проекты, связанные с вводом и выводом MIDI, некоторые также для Windows.(Нажмите на маленький знак > после каждого проекта, чтобы перейти по ссылке на домашнюю страницу проекта)
Я не использовал ни один из них лично, но уверен, что это поможет вам начать работу.