def __init__(self, stdscr): # super(Display, self).__init__() Thread.__init__(self, name='Display') self.button_grid_bus = bus_registry.get('button_grid_bus') self.LED_grid_bus = bus_registry.get('LED_grid_bus') curses.use_default_colors() for i in range(0, curses.COLORS): curses.init_pair(i + 1, i, -1) self.stdscr = stdscr self.grid_h = c.H self.grid_w = c.W * 2 self.grid_x = 5 self.grid_y = 3 self.ins_x = self.grid_x + self.grid_w + 3 self.ins_y = self.grid_y self.ins_w = 4 self.ins_h = c.MAX_INSTRUMENTS + 2 self.page_x = self.ins_x + self.ins_w + 1 self.page_y = self.grid_y self.page_w = 9 self.page_h = c.MAX_INSTRUMENTS + 2 self.col_scheme = select_scheme('default') # self.OLED_Screens = proxy_registry('OLED_Screens') self.keep_running = True return
def __init__(self, inp): Thread.__init__(self, name='Clock') self.daemon = True self.input = inp debug("Clock input is " + str(inp)) self.ticker_bus = bus_registry.get('ticker_bus') self.midi_in_bus = bus_registry.get('midi_in_bus') self.clock_bus = bus_registry.get('clock_bus') self.keep_running = True
def __init__(self, initial_bpm): Thread.__init__(self, name='SelfTicker') self.daemon = True self.bpm = initial_bpm if initial_bpm: debug("ticker's bpm is " + str(initial_bpm)) self.ticker_bus = bus_registry.get('ticker_bus') self.beat_clock_count = 0 self.midi_clock_divider = 32 self.midi_out_bus = bus_registry.get('midi_out_bus') self.keep_running = True
def __init__(self): super(Supervisor, self).__init__() self.clock_bus = bus_registry.get('clock_bus') self.button_grid_bus = bus_registry.get('button_grid_bus') self.LED_grid_bus = bus_registry.get('LED_grid_bus') self.beat_clock_count = 0 self.midi_clock_divider = 6 self.conductor = Conductor() self.save_on_exit = False self.OLED_Screens = proxy_registry('OLED_Screens') self.OLED_Screens.text(1, ["world..."]) # for i in range(4): self.OLED_Screens.set_encoder_assignment(f"Select Mode", 0) self.OLED_Screens.create_menu(0, ['Play','Select Instrument','Add Instrument','Load','Save','Quit']) self.OLED_Screens.create_menu(2, ['a','b','c','d','e','f','g','h','i','j','k']) self.keep_running = True
def __init__(self, mportin): Thread.__init__(self, name='MidiInListener') self.daemon = True self.mportin = mportin self.midi_in_bus = bus_registry.get('midi_in_bus') self.clock_count = 0 self.beat_count = 0 self.midi_clock_divider = 3 # self.midi_beat_divider = 3 self.count = 0 self.keep_running = True
def __init__(self, mportout): Thread.__init__(self, name='MidiOutput') self.daemon = True self.mportout = mportout self.midi_out_bus = bus_registry.get('midi_out_bus') self.keep_running = True
import mido from midi_input import MidiInListener from time import sleep from buses import bus_registry from constants import BEAT, TICK with mido.open_input('supervisor_In', autoreset=True, virtual=True) as mportin: counter = 0 midi_in = MidiInListener(mportin) midi_in.start() midi_in_bus = bus_registry.get('midi_in_bus') while True: msg = midi_in_bus.get() couunter += 1 print(counter) if msg == BEAT: print('----') if msg == TICK: print('x')