def __init__(self, sfpath, synth=None, connection='mono', channel=None, bank=0, preset=0, pool=None, clock=None): if pool is None: pool = defaultPool if synth is None: synth = pool.synthObject(connection=connection) self.clock = getClock(clock) self.synth = synth self._file = os.path.basename(sfpath) self.sfpath = sfpath self._options = dict(sfpath=sfpath, connection=connection, channel=channel, bank=bank, preset=preset) pool.connectInstrument(self.synth, self, sfpath, channel=channel, bank=bank, preset=preset) self._max_velocity = 127
def __init__(self, schedule, clock=None): self.schedule = schedule self.clock = getClock(clock) self.last = 0 self.paused = True self._paused_event = None self._scheduleChildren = []
def __init__(self, clock=None): self.clock = getClock(clock) self._phraseStartTicks = self.clock.ticks self._last_tape = None self._tape = {} self._eraseTape() self.phrase = []
def __init__(self, measures=1, clock=None, meter=None): self.clock = getClock(clock) if meter is None: meter = self.clock.meters[0] self.meter = meter self.period = self.meter.ticksPerMeasure * measures self._loops = [] self._buffer = [] self._last_ticks = self.clock.ticks
def __init__(self, pyo, time=None, interval=(1, 8), clock=None, args=None): if args is None: args = {} self.pyo = pyo self._gatherMethods() self.clock = getClock(clock) self.time = timing(self.clock, time, interval) sched = schedule(self.time, self.modulate, args) self.args = args self.schedulePlayer = SchedulePlayer(sched, self.clock)
def __init__(self, router, reactor=None, audiodev=None): self.router = router self.pool = {} self.settings = {} self._channel_gen = {} if reactor is None: reactor = getClock() self.reactor = reactor self.audiodev = audiodev self.reactor.callWhenRunning(self.startSynths)
def __init__(self, instr, note, velocity=None, release=None, interval=(1, 8), time=None, clock=None, cc=None): """ @param note: A ugen for notes @param velocity: A ugen for the velocity @param release: A ugen for the release (amount of time before calling noteoff) @param time: A ugen for relative time (values returned must be greater than or equal to previously returned value - monotonically increasing) @param interval: An interval division (e.g. C{(1, 4)}) that may be specified as an alternative to time--this creates a metronome with the given interval. @param cc: C{dict} of control-change ugens. @param clock: A L{BeatClock} (defaults to global default clock) """ self.instr = IMIDIInstrument(instr) self.clock = getClock(clock) if velocity is None: velocity = cycle([127]).next if release is None: release = cycle([None]).next self.note = note self.velocity = velocity self.release = release self.cc = cc self.time = timing(self.clock, time, interval) noteMemo = CallMemo(lambda: self.note()) noteonSchedule = schedule(self.time, self.noteon, {'note': noteMemo, 'velocity': (lambda: self.velocity())}) self.schedulePlayer = SchedulePlayer(noteonSchedule, self.clock) releaseChild = childSchedule(self._scheduleNoteoff, {'note': noteMemo.lastValue, 'when': (lambda: self.release())}) self.schedulePlayer.addChild(releaseChild) if cc: ccChild = childSchedule(self.instr.controlChange, self.cc) self.schedulePlayer.addChild(ccChild)
def __init__(self, instr, note, velocity=None, release=None, interval=(1, 8), time=None, clock=None, cc=None): self.instr = IMIDIInstrument(instr) self.clock = getClock(clock) if velocity is None: velocity = cycle([127]).next self.note = note self.velocity = velocity self.release = release self.cc = cc self.time = timing(self.clock, time, interval) noteMemo = CallMemo(lambda: self.note()) noteonSchedule = schedule(self.time, self.noteon, {'note': noteMemo, 'velocity': (lambda: self.velocity())}) self.schedulePlayer = SchedulePlayer(noteonSchedule, self.clock) if self.release: releaseChild = childSchedule(self._scheduleNoteoff, {'note': noteMemo.lastValue, 'when': (lambda: self.release())}) self.schedulePlayer.addChild(releaseChild) if cc: ccChild = childSchedule(self.instr.controlChange, self.cc) self.schedulePlayer.addChild(ccChild)
def __init__(self, midiInput, handlers, clock=None): self.clock = getClock(clock) self.midiInput = midiInput self.handlers = handlers
def __init__(self, midiOut, clock=None): self.clock = getClock(clock) self.midiOut = midiOut self._started = False
def __init__(self, clock=None): self._instruments = {} self.clock = getClock(clock)