Как установить более одного инструмента от Python плюс Mingus?
В следующем примере A и B имеют инструменты setados, но как A, так и B используют только последний устанавливаемый объект, это как бы переписать.
from mingus.midi import fluidsynth as a
from mingus.midi import fluidsynth as b
from mingus.containers import Note
a.init('/usr/share/sounds/sf2/FluidR3_GM.sf2',"alsa")
a.set_instrument(0, 34, 0)
b.set_instrument(0, 35, 0)
a.play_Note(26, 0, 127)
a.sleep(0.5)
b.play_Note(26, 0, 127)
b.sleep(0.5)
Как я могу установить инструмент для A и B на другой инструмент в том же сценарии или каким-либо другим способом?
1 ответ
Решение
Прежде всего, если вы напишите:
from mingus.midi import fluidsynth as a
from mingus.midi import fluidsynth as b
затем a
а также b
как тот же идентичный объект. Итак, написание b.set_instrument(0, 35, 0)
такой же как a.set_instrument(0, 35, 0)
, Насколько я понимаю fluidsynth
Вы должны использовать два разных канала для каждого инструмента:
a.set_instrument(0, 34)
a.set_instrument(1, 35)
a.play_Note(26, 0, 127)
a.sleep(0.5)
a.play_Note(26, 1, 127)
a.sleep(0.5)