On writing your own VOIP application

080508

For my final, big, worth-too-many-marks-to-mess-up, project; I’ve been making my own VOIP application. Like Skype, but for the sake of art. It’s been… tricky. Before I get into it too much though, here’s an MP3 sample of how it sounds.

If you listened to the clip, allow me to translate. I’m saying, “Hello, my name is Simon Grout and this is my project”; followed by some whistling. Obviously. There are two lots of reasons why the audio sounds like this; there are technical reasons and then there are critical / contextual reasons (which sound made up).

Technically, I’m quite pleased with myself. A while ago, I worked out that all digital sound is, is a series of numbers between -1 and 1. In the case of CD audio for example, there are 44100 of those numbers every second and each number is represented by 16bits of data (hence 44.1kHz 16bit audio). Numbers are good; numbers can be manipulated and moved, transmitted and received. Numbers can go into arrays (I like any excuse to use an array).

Back to my project. You may have noticed that I sound like I’m talking through a Commodore 64 (whereas I’m actually talking through several Apple Macs). This is is because the audio is being transmitted at 8000Hz in 8bits, with no buffering. It’s meant to be that way. Here’s how it works:

That sounds quite simple put like that, but I felt clever.

Briefly, in the context of the project the audio is supposed to sound digital. Skype and other VOIP applications try their very best to be telephones; they use buffering and error corrections and all sorts of other clever things to sound as analog as possible — which if you ask me is a missed opportunity to make the most of digital technologies. In fact a lot of software spends it’s time pretending to be an tangible object; word processors emulate paper (and seriously, who’s fooled by that drop shadow on the page?) and media players provide you with a nice row of push buttons. My project tries to find it’s own aesthetic, and if that means you can’t actually understand what I’m saying, well so be it!

Categories