Creating a sampling software for live performance using Python.

Tool: Python

MiXture is a Python application that I developed in 2015-2016 at Université de Montréal under the supervision of Olivier Bélanger. It is based on the pyo DSP library and its user interface is powered by wxPython.

MiXture is a “macro-granulator” software: it chops sound waves into tiny pieces (or grains) of varying length and rearranges them in a random order. Either regular sound files or inputs from an audio interface can be fed to the software. It supports an arbitrary number of simultaneous inputs and its main output can be recorded, which makes it a great tool for sound design.

MiXture's user interface
Screenshot of MiXture

However, MiXture is first and foremost meant for live musical performance. As such, multiple sound parameters can be modified by the user: grain size, capture region length, looping, random level, gate percentage, etc. The grain envelope can be manually drawn by the user, and up to 4 user-defined envelope presets can be saved and recalled at will. Each parameter is MIDI-mappable on the fly, and the software allows for saving and loading user sessions.

Depending on its configuration, MiXture can act as a granulator, sample shuffler/rearranger, noise generator or even a live looper, making it a versatile weapon.

MiXture was the central piece of the Greatest Hits performance, premiered at the Ultrasons concert series on April 26th 2016. In this performance, well-known vinyl albums of pop music (Michael Jackson, The Eagles, etc.) were sampled live and rearranged into a noisy and chaotic remix.