Skip to content

swans-one/overtone-music-abstractions-presentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Music Abstractions

Music, a lot like programming, can be built as a series of abstractions from simple underlying components. This repository is the source code for a live coding presentation given to Pittsburgh Code & Supply.

This talk focused on building from a very low level of abstraction, pure tones in the form of simple sine waves, into instruments that could play notes, up to sequences of notes, and finally a small composition of sequences.

The file src/music_abstractions/talk.clj is the source code typed in during the course of the talk, including comments with demo examples. The file src/music_abstractions/composition.clj includes the instruments definitions, sequencer function definitions, patterns, and composition in a clean progression to a simple generative piece of music.

The Tools

To make use of the code in this talk, you will need Clojure (likely with Leiningen), And the Overtone libary.

The presentation was given using Emacs, using Cider to connect to a networked Clojure REPL (nREPL).

Getting Started with Overtone

For someone interested in getting started with Overtone, the introductory documentation is fairly good and is definitely the right place to start. However, it is not at all comprehensive. For someone interested in going beyond the introductory documentation, but unsure how to proceede, I have two suggestions.

  1. Within the Overtone source, available on github, are a large number of examples. These examples are not referenced in the introductory documentation, but cover a much greater breadth of the functionality available through Overtone.

  2. At the REPL, Overtone provides a help function, odoc which will print off documentation for a given command. For example:

     => (odoc sin-osc)
    

    will print off information about the sine wave oscillator ugen.

Simply typing in some of the examples linked above, and calling the odoc function on anything I did not immediately understand, helped me to quickly grasp a significant portion of what was possible with Overtone.

License

Copyright 2014 Erik Swanson

The contents of this repository are distributed under the MIT Public License. See LICENSE for more information.

About

A talk given to Pittsburgh Code and Supply about how music can be built as a series of abstractions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published