Workshop: Exploring Percussion Synthesis and Rhythm Generation in Python
In this hands-on workshop, we'll start from the principles of percussion synthesis, and progress to building a fully-fledged synthesised drum kit, using Python, Jupyter notebooks, and the SignalFlow DSP framework.
We will give an overview of how SignalFlow and Python notebooks can be used to interactively explore DSP algorithms, illustrating different approaches to percussion synthesis from vintage Roland drum machines to physical modelling methods. Once we've implemented each drum in our virtual kit, we'll look at approaches to sequencing and pattern generation, including generative techniques to add complexity and variety.
The workshop will cover:
- Setting up Visual Studio Code for interactive Python development
- Sound synthesis concepts in SignalFlow: graph-based signal processing, nodes, patches, and buffers
- Assembling a synthesised drum kit: hats, kick, toms, shakers, and gongs
- Adding interactive UI elements to prototype sound designs
- Sequencing rhythm patterns and modifying them on-the-fly with live coding
And finally, we will try to synchronise everyone's laptops to create a massive collective rhythm section.
Requirements
This is a hands-on workshop that is designed to get you up and running with prototyping audio in Python, so we recommend you bring a laptop (Mac, Linux or Windows) and headphones.
Some elementary knowledge of Python is helpful, but we'll start from scratch and take things at a pace that a pace that everybody can follow, whilst providing more advanced materials for those who want to explore further.
About the frameworks
SignalFlow is a free Python sound synthesis library, designed for fluid and intuitive expression of sonic ideas. With a built-in library of over 100 synthesis node classes and an expressive syntax using familiar Python idioms, it enables rapid, interactive development of sound design concepts that can easily interoperate with the wider Python ecosystem of data science, ML, sensor I/O and web frameworks.
Daniel Jones
Artist & Composer