It was my pleasure to be on set helping with the production of Calling all Voices and the "Mother Earth" music video. This production was a great experience and a great opportunity to meet and work with some amazing people.
Dana Simmons is a professional audio engineer and technology consultant and dabbles in instrument invention, synthesizer construction and other experimental music and technology related projects. Here he rambles about his recent projects and such.
Saturday, January 2, 2010
Wednesday, December 16, 2009
War of the Worlds: A Radio Re-enactment
In tribute to creative content being broadcast on the radio at large. I gathered together a group of friends to revisit the radio drama of ole'. The drama of choice? The classic "War of the Worlds" in abridged form. Our antics are included bellow in recorded mp3 form.
War of the Worlds [abridged]
Enjoy!
Saturday, October 3, 2009
Controlling Ardour and Jackd through OSC and Python

OSC, or Open Sound Control, is a flexible network messaging system intented to allow the control of various music and sound oriented software. There are several mature applications that currently support external control via OSC. These apps include Jamin, Ardour, and Jack. In this post, I'd like to concentrate on controlling Ardour and Jack through Python using OSC.
Ardour has a little known set of OSC messages that it can understand. Oddly enough, this set is vaugly documented in the Supercolider wiki. The messages currently implemented (As of this writing the latest stable version of ardour is 2.8.2) controll basic channel routing functions and simple transport operations (Mute/Solo/Rec Arm, Stop/Play/Punch In). So without the use of any external software we have a basic control of Ardour which can be extended to external interfaces (think midi controllers for Ardour!).
Thanks to a small python module called Simple OSC, it is possible to send, recieve and manipulate OSC messages within Python. We will use python to glue all this stuff together and actually do something interesting.
Unfortunately, Ardour only offers rudimentary control of its transport mechanism over OSC. Which means we mush use some other means to locate the playhead to specific locations and get current time line/meter/tempo information. This is where a little app called jack.clock (or jack.osc) which is a member of the jack-tools package.
The bellow python code is about as simple as it gets, this module will allow a user to play and stop ardour through osc, as well as enter timecode locations (in seconds)
import osc
osc.init() #Initialize the OSC module
def play():
#Send a play message to ardour, there is no additional information required for this
#Hence the empty list!
try:osc.sendMsg('/ardour/transport_play',[],'localhost',3819)
except: raise
def stop():
#Send a stop message to ardour, there is also no additional info for this message
#Hence the empty list!
try:osc.sendMsg('/ardour/transport_stop',[],'localhost',3819)
except: raise
def locate(loc):
#This message requires that there is a jack.clock instance running at port 9001
#jack.clock is a member of the jack-tools package and controls the jackd timeline
try:osc.sendMsg('/jck_rl',[loc],'localhost',9001)
except: raise
Tuesday, September 15, 2009
Quick, Automated, Incremental backup with rsync and ssh.
Working in the multimedia field. I live and die by data management. It's easy to be a little to quick with the delete key. Even with the best data organization strategies, it's all for nothing when a drive fails. This is why i've set our in search of a reliable way to incrementally backup my data.
A few months back I posted a little app that I wrote using rsync and ssh that would backup all my portable media overnight when it got left plugged in. I've since found that data o cumulates very quickly without some sort of incremental organization.
Fortunately, my backup server uses a file system (ext3) which supports hard file links. Hard links make incremental backups very simple to manage as copies of the same file do not occupy additional space. After a little research, if found that with a little rsync and ssh magic, a very simple and efficient backup archive can be built.
Firstly, we have to backup something remotely. I place the most recent backup copies in a "current" folder. Also, notice bellow that the --delete switch is used in the rsync command, this will remove files that no longer exist. That may seem like a bad thing, but i'll show you how this is actually good and helps in the incremental backup scheme.
Now if all we did was run this command. At best, we would just end up with a direct copy of our data, which isn't really much of a backup. But if we then make a hard-linked copy of the 'current' folder and rename it to be asociated with the date the backup was made, we quickly get an incremental backup of our data. This copy can be executed directly after the rsync job has finished.
The -rl switch ensures that directories are copied and that all of the copies should be hard linked, which means that new copies will not occupy additional disk space.
Since bash, python and ssh come installed by default on OS X, this method of backup can also work wonders for the Mac crowd. And for windows
A few months back I posted a little app that I wrote using rsync and ssh that would backup all my portable media overnight when it got left plugged in. I've since found that data o cumulates very quickly without some sort of incremental organization.
Fortunately, my backup server uses a file system (ext3) which supports hard file links. Hard links make incremental backups very simple to manage as copies of the same file do not occupy additional space. After a little research, if found that with a little rsync and ssh magic, a very simple and efficient backup archive can be built.
Firstly, we have to backup something remotely. I place the most recent backup copies in a "current" folder. Also, notice bellow that the --delete switch is used in the rsync command, this will remove files that no longer exist. That may seem like a bad thing, but i'll show you how this is actually good and helps in the incremental backup scheme.
#Backup remotely using rsync and ssh
rsync -avx --delete /home/Dana/ server.home:/backup/dir/current -e ssh
Now if all we did was run this command. At best, we would just end up with a direct copy of our data, which isn't really much of a backup. But if we then make a hard-linked copy of the 'current' folder and rename it to be asociated with the date the backup was made, we quickly get an incremental backup of our data. This copy can be executed directly after the rsync job has finished.
#copy and rename the current folder
ssh server.home cp -rl /backup/dir/current /backup/dir/`date +%Y-%m-%d`
The -rl switch ensures that directories are copied and that all of the copies should be hard linked, which means that new copies will not occupy additional disk space.
Since bash, python and ssh come installed by default on OS X, this method of backup can also work wonders for the Mac crowd. And for windows
Monday, August 31, 2009
Is twitter taking over? I think not!
This past month as been jam packed with stuff for me: Moving, settling into the new digs, painting, wiring for a network, four classes at school, developing software for work, moding my dumpster destined x-box, finishing Out of Control, pre-pro for a new short? etc.
So chances are, if you've talked to me during the past month, you know a little about whats been going on. So this post, I want anyone who is at all curious about anything I may have mentioned in a conversation together to request that I write a post explaining in more detail the (mis)adventures in tech i've experienced as of late.
Post a comment with your request, send me an email or just ask me in person. And if no one makes a request, then that is simply that much less writing I will have to do. (But you really should make a request) I leave you all with the video bellow. Don't try this at home kids! Oh, and of course, you can keep up with my many blurbs of thought and text on twitter @dcsim0n
So chances are, if you've talked to me during the past month, you know a little about whats been going on. So this post, I want anyone who is at all curious about anything I may have mentioned in a conversation together to request that I write a post explaining in more detail the (mis)adventures in tech i've experienced as of late.
Post a comment with your request, send me an email or just ask me in person. And if no one makes a request, then that is simply that much less writing I will have to do. (But you really should make a request) I leave you all with the video bellow. Don't try this at home kids! Oh, and of course, you can keep up with my many blurbs of thought and text on twitter @dcsim0n
Pyro Cannon Test from Kevin Wilson on Vimeo.
Wednesday, July 8, 2009
Rebuilding a studio: Adding Gear
Day two and three of the studio rebuild consisted mostly of placing the gear into the racks and wiring everything up after all the snakes and looms had been run and prepped. The layout of the outboard gear is crucial. By grouping similar gear together one can simplify the usage of looms and snakes. For example, by dedicating one rack to dynamics. A single snake can be dedicated to dynamics and run directly to the rack instead of stretching fan-outs between racks and running extensions and such. Also, it is very important to realize how much heat certain gear generates. Typically, any gear with tube based circuitry will generate a fair amount of heat, along with any high voltage speaker amplifiers. For this type of equipment is is crucial that there be at least 1U of space above for adequate ventilation. Heat can build up quickly and is most harmful to sensitive (and expensive) equipment.
A DL termination on a snake, DL connectors are unique in that they are "zero insertion force" connectors. Meaning that the pins do not wear out from frequent use.

A rack of pre-amps and processing. Notice the 1U spaces between some of the gear for ventilation and cooling.

This is a fan-out, or sometimes just called a fan or breakout. This fan terminates a DL snake into 1/4" TRS connectors for connecting to outboard gear (In this case, for headphone monitor sends).
A rack of pre-amps and processing. Notice the 1U spaces between some of the gear for ventilation and cooling.
This is a fan-out, or sometimes just called a fan or breakout. This fan terminates a DL snake into 1/4" TRS connectors for connecting to outboard gear (In this case, for headphone monitor sends).
Rebuilding a studio: Wiring the rack
I've been helping out in the studios at Ai to rebuild the racks of gear and simplify/tame the many snakes, looms, and rat nests of cable. Here are some pics from Day One, you see the many fans of cable have been lain out on the floor for more work room inside the rack. The ultimate goal here is to keep all of the looms out of the floor from in front of and from behind the rack. The solution? We run all the cable under the rack, bringing the DL looms out from under in the back to mate with the fannouts for connecting to the gear.


Subscribe to:
Posts (Atom)