Skip to content
This repository

Ruby MIDI DJing/live-coding thing

1 comment

Modified ypelud's changes to fit my style. Replaced RUBY_PLATFORM wit…

…h Platform gem; used Kent Beck "composed method" to make code smaller; etc.
latest commit 0b08ebdb91
Giles authored November 07, 2008
Octocat-spinner-32 drums feel the ChucK demo phunk November 03, 2008
Octocat-spinner-32 lib Modified ypelud's changes to fit my style. Replaced RUBY_PLATFORM wit… November 07, 2008
Octocat-spinner-32 live This is a bunch of bullshit that doesn't matter. Inconsequential comm… October 12, 2008
Octocat-spinner-32 music_software_files This is a bunch of bullshit that doesn't matter. Inconsequential comm… October 12, 2008
Octocat-spinner-32 other_shit Moved a bunch of shit into a folder called other_shit. This is stuff … August 20, 2008
Octocat-spinner-32 README feel the ChucK demo phunk November 03, 2008
Octocat-spinner-32 db_drum_definition.rb More shit that makes Arx easier to explain, for RubyConf. October 31, 2008
Octocat-spinner-32 demo.ck feel the ChucK demo phunk November 03, 2008
Octocat-spinner-32 ethniq.rb More shit that makes Arx easier to explain, for RubyConf. October 31, 2008
Octocat-spinner-32 eval_style.rb Moved a bunch of shit into a folder called other_shit. This is stuff … August 20, 2008
Octocat-spinner-32 forest_sounds.rb Got the ambient thing working to the point where I can call it done. … August 24, 2008
Octocat-spinner-32 harmonic_cycle.rb Got the ambient thing working to the point where I can call it done. … August 24, 2008
Octocat-spinner-32 mit_license.txt Updated license. November 04, 2008
Octocat-spinner-32 temple.rb Got the ambient thing working to the point where I can call it done. … August 24, 2008
Octocat-spinner-32 xanadu.rb Got the ambient thing working to the point where I can call it done. … August 24, 2008
Octocat-spinner-32 yurt.rb Got the ambient thing working to the point where I can call it done. … August 24, 2008
README
Alpha! Not release-ready! Here be dragonnes! etc.

Archaeopteryx is a MIDI system for Ruby. Archaeopteryx uses MIDIator for MIDI Out and recommends rbcoremidi for MIDI In.

Archaeopteryx is a collection of hacks, some living on their own branches, many of them ugly. The best-known is a probabilistic step sequencer. Other Archaeopteryx hacks tour the circle of fifths and the circle of fourths, do extremely simplistic randomized pseudo-arpeggios, handle chord progressions of the I-IV-V and V-I varieties, synch the probabilistic step sequencer to MP3 playback, automate Ableton Live to create random, brainless "DJ mixes," and crossfade between existing MP3 tracks.

Archaeopteryx differs from projects like ChucK, Supercollider, PD, Max/MSP and OSC in a fundamental way. Archaeopteryx favors simplicity over power, and ubiquitous protocols over any other kind. Archaeopteryx does not want programmatic control over sound or audio. Archaeopteryx exists because music software should have a scriptable command-line interface. Archaeopteryx aspires to be an MPC-2000 with a shell prompt. You use Archaeopteryx as a Ruby front-end to music software such as Propellerhead Reason and Ableton Live.

Consequently you need a MIDI consumer to get anything useful out of Archaeopteryx. The wiki links to two videos which show you how to drive GarageBand with Arx. Arx also includes a simple MIDI consumer written in ChucK which allows programmers to operate Arx's probabilistic step sequencer without being required to buy anything or learn any unfamiliar software. That is, unless you count the ChucK interpreter. Install it here:

  http://chuck.cs.princeton.edu/release/

To use it, first get the consumer running:

  ~/programming/chuck/bin/chuck demo.ck &

Next drive it with the probabilistic step sequencer:

  ruby eval_style.rb

Voila.

The drum samples for demo.ck came from SampleSwap:

  http://www.sampleswap.org/index.php
Something went wrong with that request. Please try again.