Archive for the 'the cosmos' Category

Cover Songs in 8-Bit Video Games

Saturday, July 5th, 2008

Via GamesSound

Csound Blog: Touch-Tone DTMF Generator

Wednesday, July 2nd, 2008

The Csound Blog
Issue #13

Most people would never think of a touch-tone phone as being an additive synthesizer. Though it may be primitive, a phone does generate tones using two sine wave oscillators, which in my humble opinion, qualifies it as such.

However, I’m not here to debate the semantics of whether or not a phone is a synthesizer. Instead, I’m here to demonstrate how easy it is to emulate the sounds of the touch-tone phone.

Topics

  • DTMF
  • macros
  • additive

More at The Csound Blog. For more information about Csound, please visit cSounds.com.

Beginning Csound @ NYC Resistor

Monday, June 30th, 2008

Beginning Csound

Beginning Csound
July 28, 2008 @ NYC Resistor
1 Session, 3 hours, with personalized post-session project with instructor via email.
Cost $75

Csound is the most powerful computer music language in the world, with a direct lineage to Max Mathews’ original Music-N languages. The focus of this class will be a synthesis of three topics: The Csound language, synthesizer theory, and composing weird alien music.

Together, we will demystify the assembly-like syntax of the Csound language. We will cover the fundamentals of synthesizer theory, including: oscillators, filters, envelopes, amplifiers and modulation. Finally, we’ll tie it all together by composing sounds in the vein of classic Sci-Fi movies.

Taught by Jacob Joaquin (that’s me.) Click here to enroll.

kindercrasher

Monday, June 23rd, 2008


kindercrasher from Inigo Quilez on Vimeo.

This is my contribution to the realtime 4 kilobytes visuals (usually known as “4k intro”) competition for Inspire 2008 (held in Spain). It is a set of spheres with radious controlled by the Fourier Transform (without the “fast”) of the music. it contains some realtime ambient occlusion and depth of field. It’s done in C, using shaders (GLSL). Once again, it all fits in a 4 kilobytes executable (music, animation, rendering engine and effects).

Wicked awesome! Via Create Digital Motion.

Max Mathews: About H.A.L.

Thursday, June 19th, 2008

Dr. Richard Boulanger asks Max Mathews about H.A.L. and why it sings Daisy in the Stanley Kubrick film 2001: A Space Odyssey.

Generative Music - Cellular automata and blip blops

Thursday, June 19th, 2008


Generative Music - Cellular automata and blip blops from batuhan on Vimeo.

A somewhat intelligent cellular automata system that I developed with some atari2600 style sonification.

Link via Processing.org.

Slipmat + Processing Proof-of-Concept

Sunday, June 15th, 2008

Since friday, I’ve been spending all my free time learning as mush about Processing as I possible can. I made this video to prove to myself it was possible to integrate Slipmat with Processing. I guess this means I’m fully committed to learning the black arts of generative audio/visuals.

Slipmat Pre-Alpha 0.01.0 Released

Wednesday, June 11th, 2008
Slipmat 0.01.0

I just released a new Slipmat package at sourceforge. This latest version comes with three new examples, including one that uses a basic Java GUI. Four out of the five examples are now pre-rendered as CSDs for convenience. There are also a handful of new synth Modules to play with.

The documentation has been improved, including better Javadoc support. The Javadocs are not pre-rendered as to keep the size of the release to a minimum, so you’ll have to generate them yourself. Many IDEs, including NetBeans and Eclipse, will generate them for you.

There is also the PseudoTutorial example that gives a broad overview of the design of Slipmat and how to use it.

And in case you’re wondering, Slipmat is “A Java-based modular computer music library built on top of the Csound API.”

Star Wars Floppy Disk

Wednesday, June 11th, 2008

Posted to YouTube by twomore. Via Laughing Squid

MUTO - Graffiti Animation by BLU

Sunday, June 8th, 2008

MUTO
An ambiguous animation painted on public walls
Made in Buenos Aires and Baden
Animation and Editing by Blu
Assistant: Sibe
Music by Andrea Martignoni
Produced by Mercurio Films

via Linkfilter.

Introducing Slipmat for Java and Csound

Friday, May 30th, 2008

Yesterday, I released the first public version of Slipmat, a Java-based modular computer music library built on top of the Csound API. You can download it at Sourceforge.

Let me back up a bit…

Ever since I started Csounding about a decade ago, I’ve heard people refer to the syntax of the Csound language as being very similar to that of Assembly on numerous occasions. I certainly see their point. Let’s face it, Csound is a Frankenstein of language, stitched together with duct tape and bubble gum. And like Frankenstein, it is both powerful, yet scary to those who judge it solely on its facade. Those who turn a blind eye to Csound’s frightening nature and learn to understand it for what it is are rewarded with an amazingly expressive computer music environment. Unfortunately, most people equate their first experience with ladling hot soup onto their laps. Did I mention Csound is afraid of fire?

Continuing with the Frankenstein metaphor a little longer, Slipmat is a Java abstraction layer that attempts to tame the monster. To teach it some manners and civility. If all goes well, Csound will be putting on the ritz in no time.

Let’s take a look at a simple Slipmat java program (included with the download.) The following plays every note in a 12 note octave between 440 and 880:

import com.thumbuki.slipmat.*;
import com.thumbuki.slipmat.module.*;

public class SimpleExample {
    public static void main(String[] args) {
        SynthRack synthRack = new SynthRack(false);
        SinePerc sinePerc = new SinePerc();
        Output output = new Output();

        synthRack.addModule(sinePerc);
        synthRack.addModule(output);
        output.setInput(sinePerc.getOutput());
        
        for (int i = 0; i <= 12; i++)
            sinePerc.playNote(i * 0.25, 0.9, 440 * Math.pow(2, i / 12.0));

        synthRack.startCsound();
        
        try {
            Thread.sleep(4000); /* Keep java running for four seconds */
        }
        catch(Exception ex) { }
    }
}

If we think of Slipmat as a high-level abstraction of Csound, which it is, then what happens behind the scenes is that Slipmat “compiles” Csound code, and then this code is fed to the Csound engine. This is sorta how Java produces bytecode that is executed by a Java Virtual Machine. The following is the code that is produced by the previous example:

<CsoundSynthesizer>
<CsOptions>
csound -d -A -odevaudio null.csd
</CsOptions>
<CsInstruments>
sr = 44100
kr = 4410
ksmps = 10
nchnls = 2

0dbfs = 1.0

gitable1 ftgen 1, 0, 8192, 10, 1.0

chn_a "chna0", 3

instr 1
aclear = 0.0
chnset aclear, "chna0"
endin

instr 2
a1 oscil p4, p5, gitable1
aenv linseg 0, p3 * 0.05, 1, p3 * 0.95, 0
a1 = a1 * aenv
chnmix a1, "chna0"
endin

instr 3
a1 chnget "chna0"
outs a1, a1
endin

</CsInstruments>
<CsScore>
i 2 0.0 0.125 0.9 440.0
i 2 0.25 0.125 0.9 466.1637615180899
i 2 0.5 0.125 0.9 493.8833012561241
i 2 0.75 0.125 0.9 523.2511306011972
i 2 1.0 0.125 0.9 554.3652619537442
i 2 1.25 0.125 0.9 587.3295358348151
i 2 1.5 0.125 0.9 622.2539674441618
i 2 1.75 0.125 0.9 659.2551138257398
i 2 2.0 0.125 0.9 698.4564628660078
i 2 2.25 0.125 0.9 739.9888454232689
i 2 2.5 0.125 0.9 783.9908719634986
i 2 2.75 0.125 0.9 830.6093951598903
i 2 3.0 0.125 0.9 880.0
i 1 0 -1.0
i 3 0.0 -1.0

</CsScore>
</CsoundSynthesizer>

I know what you’re thinking… What the hell am I looking at? Truth is, this code is not meant for human consumption. A person who regularly writes Csound code can write code that is more clear than this. Even then, compared to Java-Slipmat code, it can look like chicken scratch. Or my handwriting.

Since Slipmat is more or less a Java library built on top of the Java-Csound API, this means all of Java’s and whistles are now available to use in conjunction with Csound. Want a reliable cross-platform GUI? Give swing a try. Want to integrate Processing with you Csound? You can. Want a tool that automagically hides all the grunt work from you, such as assigning instr numbers, tables, chn software busses, etc? More than anything else in life (personally speaking.)

I should warn you… Slipmat is currently pre-alpha. Which means everything is in a state of flux, and there isn’t anything that resembles a specification at this point. Methods and classes are guaranteed to change drastically over the next few months. Tutorials on the way…

Old-School Sequencing with Herbie Hancock and Quincy Jones

Sunday, April 6th, 2008

Herbie shows off while Quincy Jones looks on. 1983

via NYC Resistor

untitled

Wednesday, April 2nd, 2008

untitled

Flickr photo by cornpone

Maintenance Tomorrow

Saturday, March 29th, 2008

Just a quick heads up. Tomorrow, I’m doing maintenance work on this site. I don’t foresee any major problems, though I have seriously screwed things in the past. So if this site goes blank for a couple of days, then I made a bad. :)

Update: (March 30th, 2008) WordPress 2.5 installed. In the middle of upgrading the theme. Tag support may take a few days. Need to add links back to the sidebar.

Update: (March 31th, 2008) This site is starting to come back together. Put the links back in the sidebar, along with upgraded twitter and flickr support. The theme still needs work. Tags are currently on hold.

W&S 056 - Taste Bud Stimulus

Friday, March 28th, 2008

via it’s 3am. Posted to blip.tv by wreckandsalvage.