0

我一直在努力在 python 中使用 rtmidi(或任何其他 midi 脚本包)获得对 Synesthesia(VJ 程序)的完全控制。

我的主要目标是在 python 中开发一个 midi 控制器,它可以打开和关闭 VJ 程序中的电位器(我已经可以这样做)并连续控制推子(这是我的问题)。

实际上我真正做的是我有一个手部识别算法(基于深度学习),我想用我的手势制作一个 midi 控制器。

我已经可以做的:

import rtmidi

midiout = rtmidi.MidiOut()
available_ports = midiout.get_ports()
if available_ports:
    midiout.open_port(1)
else:
    midiout.open_virtual_port("My virtual output")


# do some deep learning stuff->

#if hand recognized ->
note_on = [0x90, 60, 100]

# else

note_off = [0x80, 60, 0]


请帮助我真的被卡住了。

谢谢。

4

1 回答 1

0

好的,它很快,我实际上可以解决它:)

连续控制推子:

>>> for k in range(100):
...     fader = [0xB0, 10, k]
...     midiout.send_message(fader)
...     midiout.send_message(fader)
...     time.sleep(0.01)
...

这也很有用,只需将命令粘贴到上述函数:

https://ccrma.stanford.edu/~craig/articles/linuxmidi/misc/essenmidi.html

于 2020-02-09T22:54:17.413 回答