Skip to content

BackupTheBerlios/rubyk

Repository files navigation

Rubyk

Rubyk is an open source tool written in C++ for real time signal processing. This tool uses the oscit protocol (based on OpenSoundControl) to talk with graphical interfaces.

website: rubyk.org

bug tracker: rubyk.lighthouseapp.com/projects/17616-rubyk

license: MIT

author: Gaspard Buma (gaspardbuma.org)

History

I started this tool for the show ‘home’ (first showed in Arsenic, Lausanne, Switzerland in January 2008) because I wanted to be able to write Ruby scripts inside a multimedia application. I never felt at home in the purely visual patchers where you can get lost quite quickly if you create complex works.

Due to speed issues with the first prototype in Ruby, I decided to write the whole thing in C. As I quickly felt like reinventing object orientation I thought it would be more natural to use C++. The project now uses Lua for scripting for its speed and ease of integration but the name rubyk (Ruby Kontroller) was kept. In my country (Switzerland) rubies are used in clockworks so Rubyk is also a reference to this tradition.

Design goals

I made a lot of efforts so that writing new objects is very easy (look at the code for Print or Metro). This makes the development/wrapping of new features very lightweight. All these efforts weren’t made to the detriment of speed which was my main concern with this tool (it is meant to run on tiny, embedded hardware !).

Rubyk is the ‘dynamic’ layer on top of oscit (rubyk.org/oscit). You usually interact with a rubyk server through oscit capable interfaces like mimas (rubyk.org/mimas).

Classes

The real power of rubyk comes from the objects you can create with this tool. These objects are compiled as dynamic libraries and are only loaded on demand. Currently, there are objects for midi signal processing, matrix calculations (PCA, VQ, FFT, etc) and lua based scripting tools.

Compilation

Linux

You might need to install readline and ALSA development headers as well as CMake:

sudo aptitude install readline5-devel libasound2-dev cmake
make

Mac OS X

You should be ok with:

make

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published