我正在尝试通过 rtmidi_python 库控制 Ableton。此时,我可以通过蓝牙向从站发送消息,从站接收它们并将它们发送到 Ableton。问题是“播放”命令不会在另一侧启动 Ableton。我可以看到 Ableton 解释了命令,但没有做任何事情。
当我点击播放时,“停止”按钮将变灰,但曲目没有开始,这将被打印出来
[242, 0, 0]
[250] 0.0
当我停止我收到的曲目时
[252]
当我改变我的位置时,从机也改变了轨道的位置,所以我认为播放命令是不正确的。当我发送 note_on 消息时,它将由 Slave 播放。我还尝试将命令更改为十六进制表示法,但这似乎并没有解决它。
这是大师的midi部分:
midi_in = rtmidi.MidiIn()
for port_name in midi_in.ports:
print(port_name)
selected_device = int(input('Select a device '))
midi_in.open_port(selected_device)
while recording:
message, delta_time = midi_in.get_message()
if message:
data = json.dumps(message)
sock.send(data)
print(message, delta_time)
这是奴隶:
midi_out = rtmidi.MidiOut()
for port_name in midi_out.ports:
print(port_name)
midi_device = int(input('Select a device: '))
midi_out.open_port(midi_device)
data = client_sock.recv(1024)
while data != '':
stream = client_sock.recv(1024)
message = json.loads(stream.decode())
print(message)
midi_out.send_message(message)
有人可以帮帮我吗?此外,如果有人对获取 MIDI 节拍时钟有任何提示,我很想听听他们的意见!
编辑 我刚刚发现我正在寻找 [248] 命令,每个四分音符应该发送 24 次。但它没有出现在我的控制台中。