:orphan: Quantization Comparison ======================= *Example script* (scamp): `examples/Notation & engraving/Quantization/quantization.py `__ *Download:* :download:`quantization.py ` Records a loose piano improvisation against a metronome, then plays back the quantized version. *Topics:* :doc:`Notation & engraving › Quantization ` .. raw:: html
.. code-block:: python from scamp import * import random s = Session() drum = s.new_part("metronome", (0, 116)) piano = s.new_part("piano") s.start_transcribing() recording = True random.seed(4) def piano_part(): while recording: if random.random() < 0.5: piano.play_note(50 + random.random()*20, 0.5, random.random() * 1.5) else: piano.play_chord([50 + random.random()*20, 50 + random.random()*20], 0.5, random.random() * 1.5) s.fork(piano_part) print("Making Recording...", end="") for _ in range(8): drum.play_note(80, 1, 1) recording = False performance = s.stop_transcribing() quantized_performance = performance.quantized( QuantizationScheme([ MeasureQuantizationScheme.from_time_signature("4/4", max_divisor=5, max_divisor_indigestibility=3) ]) ) print("Done") while True: print("Replaying recording with quantization") wait(1) quantized_performance.play() print("Replaying recording without quantization") wait(1) performance.play()