Ir al contenido

Caja de ritmos

Una caja de ritmos sonando: el cabezal recorre una cuadrícula de pasos, un puntero pinta nuevos pasos de tom y los pads destellan

Una caja de ritmos de seis sonidos: examples/audio/drum_machine.py.

Ventana de terminal
python examples/audio/drum_machine.py

Haz clic o arrastra en la cuadrícula de pasos para escribir el ritmo, toca cada sonido con su pad y cambia el tempo y el swing con las perillas.

El ritmo corre dentro del motor, no en Python. Un módulo clock marca cada semicorchea y mueve un sequencer por fila; el disparo de cada secuenciador golpea su drum:

clock = engine.add("clock", bpm=124, division="1/16")
for sound in ("kick", "snare", "clap", "hihat", "hihat", "tom"):
drum = engine.add("drum", sound=sound)
seq = engine.add("sequencer", steps=16)
engine.connect(clock, "clock", seq, "clock")
engine.connect(seq, "trigger", drum, "trigger")

Así el ritmo se mantiene a tiempo por muy ocupada que esté la ventana. La cuadrícula solo cambia las puertas de los secuenciadores (engine.set(seq, "gate_5", 1)) y el cabezal lee el paso en el que están (seq.state["step"]).