MIDI-controlled Text Zoom in Quartz Composer

To end my series of experimentations with Quartz Composer that I started 2 months ago, here is my last patch:

It’s based on the previous one and is also driven by a Berhinger BCF-2000 MIDI controller. The purpose of this composition is to zoom a piece of text, give it some kind of velocity and change its color. Again, nothing fancy here: it’s just a simple patch, which source is available for download.

As for the last time, I recorded a little demo to pratice my new videomaking skills (and to find a justification for buying more video gear ;) ):

The audio part is Dream by Paolo Lunardi (from his album Essential). I found it on Jamendo under a Creative Common BY-SA v3.0 license.

Quartz Composer & Behringer BCF-2000 MIDI controller tests

Featured

A year ago I explored visual control by plugging a generic Behringer BCF2000 MIDI controller in Apple’s Quartz Composer. My initial intention was to drive some animations and visuals during Cool Cavemen‘s live concerts. Now that’s I’ve abandonned the idea of using Quartz Composer, it’s time to share these stuff with you.

So here is my MIDI playground:

Nothing exceptionnal to see here. It’s just a bunch of dumb patches to control the color of the background screen and its intensity. The latter can be modulated by pulses with different profiles, and also by the sound captured by the MacBook‘s microphone. The source composition is downloadable.

Just for the sake of it, I’ve recorded a quick and dirty demo with my Canon 7D (set to 1080p, 25 fps and 1/50 shutter speed) and the fantastic Tokina 11-16mm f/2.8:

Here is the video, which I edited with Kdenlive:

The audio is sourced from Jamendo. It’s the track One Year written by Paolo Lunardi for his album Essential, and released under a Creative Common BY-SA v3.0 license (thus making my video subject to the same license).

Audio commands

  • Merge several .wav file to one file named merged.wav:
    sox part1.wav part2.wav part3.wav merged.wav
    
  • Convert .wav audio file to ALAC lossless file:
    ffmpeg -i audio.wav -acodec alac audio.m4a
    
  • Convert .asf audio file to PCM wave file:
    mplayer -vo null -hardframedrop -ao pcm:file=audio.wav audio.asf
    
  • Convert MIDI file to Ogg/Vorbis:
    timidity -Ov1S *.mid
    
  • Extract the Right then Left channel of a stereo .wav file:
    sox stereo.wav -c 1 rightchan.wav avg -r
    sox stereo.wav -c 1 leftchan.wav avg -l
    
  • Some sox compressor parameters:
    play audio.wav compand .1,.1 -60,-10 0 0 .1
    play audio.wav compand .01,.3 -6,-4,-3,-3,0,-3
    play audio.wav compand 0.3,1 -90,-90,-70,-70,-60,-20,0,0 -5 0 0.2
    
  • Test Alsa audio driver output via gstreamer v0.10:
    gst-launch-0.10 audiotestsrc ! alsasink
    
  • Generate cyclic pink noise (source):
    play -t sl -r48000 -c2 - synth -1 pinknoise tremolo .1 40 <  /dev/zero
    
  • Generate background low frequency noise (source):
    play -c2 -n synth whitenoise band -n 100 24 band -n 300 100 gain +20
    

Other related ressources: