Skip to main content

Utilities for sound, music notation, acoustics, etc

Project description

maelzel is a framework for doing computer music in python. It is

based on a core package, which provides datatypes to define notes, chords, sequences, lines, voices, scores, etc. Other modules provide functionality for working with sound (loading soundfiles, working with samples, applying filters, fading, mixing, playback), sound analysis, music, acoustics, music notation, etc.

Documentation

https://maelzel.readthedocs.io/en/latest/index.html


Structure

  • core: core module defining basic classes for computer music (Note, Chord, Voice, Score, etc). Any of these objects can be representated as notation and played back.

  • snd: read/write soundfiles, process samples, apply filters, fades, etc.

  • music: music representation, algorithmic music, etc

  • scoring: music representation. Offers support for microtones (up to 1/8 tones or any cent deviation), very refined cotrol of automatic quantization, glissandi, grace-notes, annotations, etc. Supports multiple backends (lilypond and musicxml at the moment).

  • acoustics: formulas for helmholtz resonators, speed of sound, etc.

  • midi: read/write midi files, general midi

  • ext: wrappers around external software, like sonic-visualizer, audacity, reaper


Installation

pip install maelzel

Dependencies

  • csound (>= 6.16)

Optional Dependencies

  • MuseScore (for rendering musicxml to pdf when using the musicxml backend)


Examples

https://github.com/gesellkammer/maelzel/tree/master/examples

Messiaen - Quatour pour la fin du temps - La liturgie de Cristal

Screenshot of jupyter notebook

Notebook: Analysis and reconstruction of the piano and cello isorhythmic structures

Audiosample

Example of the audiosample module

Screenshot of audiosample notebook

Notebook: spectrogram and fundamental analysis / resynthesis using the pyin method

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maelzel-0.8.1.tar.gz (17.2 MB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page