Interactivity & visualization ============================= Keyboard input -------------- - :doc:`Computer Keyboard Input ` — Demonstration of receiving computer keyboard events and using them to play notes based on the key number. - :doc:`Notating Computer Keyboard Input ` — Same as Computer Keyboard Input, except that a metronome is playing back while the user plays notes with the keyboard, and the result is rendered as music notation. - :doc:`Key Plane ` — Maps the computer keyboard onto a 2D grid of pitches with scamp_extensions' KeyPlane; each key press starts a flute note whose pitch and volume come from its row and column. *(needs scamp_extensions)* Mouse input ----------- - :doc:`Mouse Input ` — Demonstration of receiving computer mouse events and using them to play notes based on x and y position. - :doc:`Indispensability ` — Mouse position controls a rhythmic texture based on Barlow's beat indispensability (barlicity extension). *(needs scamp_extensions)* MIDI input ---------- - :doc:`Live MIDI input and output ` — Demonstration of receiving and sending live midi input to and from a midi keyboard. - :doc:`MIDI Keyboard Mapper ` — A script written at the request of Paul Timmermans, in which different pitches or ranges of pitches on the keyboard can be mapped to particular instruments and chords. Responding to a GUI ------------------- - :doc:`Qt Interactive ` — A draggable PyQt rectangle drives live playback in a server session. Visualization ------------- - :doc:`Conway's Game of Life (pygame version) ` — Conway's Game of Life sonified, with a pygame window used for visualization instead of matplotlib. *(needs scamp_extensions)* - :doc:`Barlicity ` — A large interactive piece built on harmonicity and indispensability (barlicity extension), with multidimensional-scaling visualization in Qt. *(needs scamp_extensions)* - :doc:`Leaf Loops ` — Generative process behind Marc Evanstein's "Leaf Loops" for violin and viola. *(needs scamp_extensions)*