Code Monkey home page Code Monkey logo

archaeopteryx's Introduction

Archaeopteryx

Caveats

I wrote this library years ago, and have since rewritten it twice, in CoffeeScript and Clojure.

The code's quite a mess, and I definitely prefer Clojure (with Overtone) for music hacking today.

But if you want to play with this, by all means, jump in. The midi_files branch is actually more up-to-date than master. Sorry about that. The wiki's full of links to more detail, so that should be useful. The rhythms in this library's demo file still sound better than the rhythms in any of the subsequent rewrites.

Original 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

archaeopteryx's People

Contributors

bleything avatar gilesbowkett avatar ypelud avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

archaeopteryx's Issues

Ruby and the deployment of a midi jam room forum

I am new to ruby. Actually, building my first app. this isn't an issue with your software. I am a reason user as well. I was wondering if you are aware of any internet midi applications that create a bridge between two similar midi applications.

I found midi chat below:

http://midichat.blogspot.com/

when I watched the screencast I was still unclear if this can be shared over the internet. I thought not.

I was thinking of a simple rehearsal space online where the sound library and standard softsynth modules could be accessible much like the Reason rack. (Perhaps in Reason 12)

Maybe Plogue bidule because it is in development and is an awesome modular application it could be integrated with a midi chat application written in ruby and server as a VPS.

A virtual open mic night once a week or rotating acts every evening.

Tis a pipe dream.

Load error at eval_style.rb

Hi Giles,

I saw your Archaeopteryx presentation online and wanted to give it a try. I installed chuck and when I tried to run ruby eval_style.rb but I get the following error...

juan@black-narwhal:~/Desktop/archaeopteryx$ ruby eval_style.rb
/home/juan/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require': cannot load such file -- lib/archaeopteryx (LoadError) from /home/juan/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
from eval_style.rb:1:in `

'

Is there anything I can do ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.