8/5/09

Audio and Network Issues Omnibus

Or why you should probably stop bugging us about audio problems.

Having slogged though another recording session, fraught with audio and networking problems, I decided to enumerate the problems we've had, and the solutions we've attempted. Hopefully this will reduce the number of people telling us the same damn shit week after week, and maybe someone will have some useful advice.

Before I begin I want to make some things clear. We don't like having a podcast that is full of random Dalek visitations, echo and drop-outs. This is every bit as annoying to us as it is to you. That being said, this is an amateur production. All three of us have day jobs that take priority over anything involving this podcast. Also, we're not making any money off of this gig. Our wonderful sponsors, and wonderful they are, aren't showering us with filthy lucre. We're getting just enough to cover operating expenses. Also, we're not complete idiots here. John has years of professional IT experience. I've sat though probably more networking training than most CCIEs. I studied analog audio production in school. And Peter, well, he's here.

The Issues

The majority of the problems vexing us can be divided into two categories: audio problems and network problems. Of course, right away we run into one of the issues that make resolving these problems so fucking hard. There isn't always a clear delineation between these categories. Is the static you're hearing a result of network problems, or is it a short in someone's microphone? Who fucking knows? That said, here is a list of some of the issues that we've encountered:

Audio:
  • Digital distortion (the Dalek effect)
  • Static
  • Echo
  • Lack of sync (yes we've actually seen the audio lose sync between Skype and the local mic within a single recording file)
  • Miscellaneous audio fuckery (if it sounds weird, we've probably heard it)
Network:
  • Presence detection issues
  • Disconnects
The Variables

It's a plain fact of life that, barring a major infusion of cold hard cash, this podcast is being produced on consumer-grade hardware and software. I don't want to go into excruciating detail here, mainly because I have neither the time, nor inclination to get the information from the other two clowns, but here is a quick run-down of the setup based on my rig.
  • Host Computer: I'm running a 2006 24" 2.33 Mhz Core 2 Duo iMac with 2GB of RAM. Assume that Peter and John have better hardware. At no point recording a podcast have I ever used more than 25% of one core.
  • Network: I'm running wired gigabit ethernet to a 2 year old Linksys router, thence to a 25Mbit/s Cable connection. I don't know how John and Peter are configured. Again, at no point have I ever come close to saturating my link.
  • Audio Hardware: I was using an upper-mid-range Logitech analog gaming headset routed though a Griffin iMic USB adaptor. As of the next podcast I'll be using an upper-mid-range Logitech USB headset directly connected to one of the iMic's onboard USB ports. Again, assume that the boys are using something similar.
  • Software: For the audio chat itself, we have used both Skype and iChat. For recording we are using WireTap Studio from our wonderful sponsors, Ambrosia Software. For the record, to capture both sides of a Skype/iChat call in WireTap you must record both the application and your local audio. This is important in relation to some of the advice we've been given. We've always had at least one person recording just their own microphone. John handles editing, so I won't comment on the setup, but it's honestly irrelevant to this discussion.

Skype vs iChat

At this point, I'd like to digress briefly into why we've shit-canned Skype and moved to iChat. The bottom line is, Skype is an unrelenting piece of crap. Now, by making that statement I know that I'm opening the floodgates of Skype fanbois, who will regale us with tales of how Skype works perfectly for them and saved their kitten from a tree. Goody on you, I don't care. First of all, Skype's presence detection is worthless. Every single week we were using Skype at least one of us was invisible to the other two until we went though a spastic dance of disconnection and reconnection.

Second, while using Skype we were fucking plagued by digital distortion. There were times when we would have to stop and wait for fucking minutes for one or the other of us to stop sounding like a bloody Dalek. By comparison, similar issues in iChat are rare, and usually clear up within seconds.

To be fair, while a vast improvement, iChat has it's moments too. First, it took us several attempts to even get to the place where we could use iChat. Fortunately, iChat in 10.5 doesn't require the dozens of ports to be open in your firewall that iChat in 10.4 did, but you still are going to be fucking with you router settings. Also, audio and video chat in iChat has a major incompatibility with Internet Sharing. As in, if you have Internet Sharing enabled, you ain't fucking chatting. I eventually found the Knowledge Base article explaining this, but come on Apple, you fucking own the OS. You mean to tell me you can't detect that Internet Sharing is enabled and pop up an error explaining that?

Lastly, my machine in particular has a major problem remaining connected to a chat. I get disconnected anywhere from once to dozens of times during a recording session. At this point I have no idea what's causing this, but I have ruled out a general network disconnect. During our last session I pinged a remote host the entire time and, while I disconnected from the chat several times, I didn't drop a single packet.

The Advice

Finally, I'd like to list some of the suggestions we've received. Don't get me wrong, we're thankful for the suggestions, but at this point we're hearing the same one's every week.

Think Globally, Record Locally:

This has got to be the number one recommendation that people make. That, if we just record our audio locally as opposed to capturing the output of Skype/iChat our problems will magically go away. At this point we're moving towards using the capture of the local audio as opposed to the joint capture, but this is more for workflow reasons than anything else. In fact, local capture still leaves us with several issues.

First, while a local recording may eliminate problems with the audio caused by network issues, it doesn't help us at all if someone is so distorted that the other two retards can't understand them. Also, if the distortion is being generated by the recording hardware, a local recording ain't going to fix that (which is why I was staticy last week). Local recording also doesn't do dick about iChat dropping constantly, although it might be fun to hear me screaming in rage while I wait to get added back to the conference.

The second issue with local recording as a panacea is that we have guests on the show from time to time. It's not reasonable to expect that someone will obtain compatible capture software just to appear in our little circus of rage.

The last issue with local capture is that it removes an important safety net. As great as WireTap Studio is, I have had it crash while attempting to save, losing my recording in the process. If we hadn't had someone recording the Skype output from their side that session would have been lost.

Use Skype/iChat/POTS, open ports X, Y & Z, get better hardware, etc.

We've received all manner of advice about how to record a podcast, ranging from software suggestions to suggestions that we invest in some serious hardware. To re-iterate what I wrote at the beginning of this post: this is an amateur production. If we have to invest major money into this, we will either need much more sponsor money, or we will shit-can the whole thing. At this point we're pretty much settled on iChat, but if something better hits the market we'll look into it.

The network issues are what they are. Yes, if we put some major time into it we could sort them out. Again, we don't have the time to do that. We're constantly making tweaks, but the only way to really test them is during the actual recording sessions.

To conclude, we do appreciate that people, for whatever sick reason, want to listen to our rantings. And we appreciate the advice. But seriously, don't fucking say "record the audio locally again." I may kill you.