May 25, 2007
you care a lot about your perception when it's all you got
Today I saw a Technology Review article on eJamming, which is a service for people to jam together online. I have tried eJamming a few times, and haven't been terribly impressed (and yes I am biassed towards NINJAM for obvious reasons), but I thought I'd just pick apart what bugs me about this article (and likewise the whole situation).
First, the eJamming software decreases the file sizes sent over the network. To do this, the company's engineers developed their own compression and decompression algorithms that shrink the file size, yet still maintain an audio quality higher than MP3, a common compression scheme, says Glueckman.
OK so shrinking the size of data does help latency, but it's not the biggest part. What bugs me here is that A) they appear to be using Speex for their audio side, which is an open format, and doesn't scale to high qualities. Do they really need to claim that they developed their own codec? OK so maybe they did develop their own codec-- why isn't this news? If it's so much better than OGG or MP3 or AAC, how come we haven't heard of this?
Second, each musician is directly connected with the other musicians in a jam session, instead of being routed through a server. This peer-to-peer configuration "results in a lower latency by routing the audio stream directly to your jam mates rather than, on average, doubling that transport latency by directing the audio stream through a remote server," says Bill Redmann, chief technology officer of eJamming.
Wow! Connecting clients to clients! Peer to peer! This is so unique!
But what the article fails to mention here is that while this approach does reduce latency, it also increases the amount of bandwidth requires by each host exponentially. Their stuff is limited to 4 people I believe, but if you have 4 people, each client needs to send its stream to EVERYBODY else, so if they run a 50kbps channel (though it appears they're using a much lower bitrate codec anywa), that'd be 150kbps of upstream for a 4 person jam. Which isn't that bad, but it doesnt scale well and definitely requires some decent broadband.
The following quote, however, is what really bugs me:
The company is promising to reduce the delay experienced over the network to, at most, hundreds of milliseconds (depending on upload speed and geographic distance between musicians)--a delay to which, Glueckman says, most musicians can adjust with practice.
Hundreds of milliseconds?! Are you kidding me? This is unusable. Their patented "delay monitoring of the local signal to sync with the remote" even makes it worse. I tried it with Christophe, who is on the same ISP and less than 10 miles away, and the latency was very noticeable and made it difficult to play anything remotely complex.
Imagine trying to play synchronized with someone at the other end of a football field. ugh.
Granted NINJAM's solutions aren't perfect either, but I find the increased quality and overall experience to be far superior. And the newer voice chat and session modes are damn usable.
OK OK so I didn't mean to turn this into a big eJamming vs NINJAM thing.. I just am irritated with these people being all "look we're soo innovative" and having lofty claims, yet when we use their software it's miserable (and I didn't even go into how badly constructed their application is-- application development isn't an easy thing, and in this case it definitely shows).
May 25, 2007
mac poo
I hate Xcode. Too bad I have a ton to get done using it.