Major update (12/26/2007): After years of discouraging the use of Skype for interviews here at The Conversations Network, we’re now saying a resounding Yes! Paul Figgiani and I have prepared this audiovisual presentation that covers all you need to know in order to get true broadcast-quality Skype recordings.
The original blog post follows…
Two years ago I posted recommendations (here and here) for hardware configurations to record Skype phone calls. Since then, many people have asked for help getting the best possible audio quality from Skype interviews and conference calls, but I’ve never gotten around to writing it up here on the blog. So here are some tips:
First, make sure everyone has a good USB headset. Avoid headsets that use analog connectors; it’s harder to get the proper mic levels and some computers don’t even have mic-level inputs. Leo Laporte turned me on to a just-right USB headset that most of the regulars on TWiT use. It’s the Plantronics DSP-400 or DSP-500, only $40 or so from Amazon. Highly recommended.
Next, make sure you’re using a recent version of Skype that supports the latest codecs. (Version 3.2+ for Windows, 2.6+ for Macs.)
After that, you’ll want to convince Skype to give you the best possible audio quality. The goals are:
- Use bandwidth of at least 5kBytes/sec (~40kbps).
- Use the latest SVOPC audio codec.
- Minimize latency, preferably below 100ms roundtrip.
To see how well you’re doing, open Skype’s Technical Call Info window. Check the “Display technical call info” box, then place a call and look for the pop-up.
- On Windows: Tools > Options > Advanced
- On Mac: Skype > Preferences > Advanced
The screenshot on the right is from a high-quality Skype test call from my Mac. Note the following:
- Codec is SVOPC.
- No packet loss.
- Roundtrip is only 40ms.
- Bandwidth is 6,250bps. (At least that’s what I think this means. The Windows version makes it clearer.)
- There are no Relays.
- UDP is “Good” on both ends.
You can’t directly control these Skype parameters. Instead you need to create the best-possible environment so that Skype uses the highest-quality options. For example, Skype selects a codec based on the available bandwidth and performance. To make Skype happy, you’re going to have to play/experiment with the following:
- Stop all applications on your computer that use significant CPU resources. Run the Task Manager (Windows) or Activity Monitor (Mac) to see which applications are potential culprits. I record Skype calls on a very fast four-core Intel MacPro with 4GB RAM, and even then I close virtually all other apps.
- Stop all applications on your computer (and others sharing your Internet connection) that consume bandwidth. Kill anything that runs automatically (email, RSS readers, iTunes). Again use the Task Manager or Activity Monitor to see what’s going on.
- Eliminate the use of Skype Supernodes as relays, allowing direct peer-to-peer connections. Check the Technical Call Info for “Relays.” If the value is greater than zero, your calls are passing through one or more Supernodes, which are just other computers like yours on the Internet. Not only does this increase the latency, it also causes Skype to throttle the bandwidth to 1kB/sec as opposed to the 5kB/sec with a resulting reduction in audio quality. (See below.)
- Check the “Roundtrip” time. 150ms is pretty much the maximum to avoid people stepping on one another. Below 100ms you’ll have a very comfortable call. If you’ve solved the above issues and your roundtrip time is still >100ms, you’ll have to check into your Internet connectivity or that of your guest.
- Also check for “Packet loss.” It should be 0% or very low. If the window says you’re using UDP (which you should), packet loss causes dropouts in speech. If you’re using TCP (not as good for this application), you’ll likely hear strange delays and glitches rather than simple dropouts when packets are lost.
- Make sure that all computers on the call can send and receive UDP packets. Check that”SessionOut” and “SessionIn” both show “UDP.” If either appears as “TCP” you need to do some firewall work to make sure UDP packets can reach your system. Check “UDP status,” which should be “Good” for both “local” and “remote.”
If you see Relays greater than zero, if SessionIn/Out is using TCP, or if UDP status is “Bad” for either the local or remote end, then you need to do some work with your firewall:
- Again in Skype’s Advanced window, find the “Incoming connection port.” (Tools > Options > Connection on Windows)
- In your firewall’s configuration, create a “port forwarding” for that port to your computer for both UDP and TCP. How you do this varies greatly, depending on your brand of firewall. Here’s an example from my Netgear firewall config:
If you’re running a software firewall (common on Windows) you’ll have to enable bidirectional UDP access there, too.
Note that when you’re not using Skype you may want to either stop the application or disable the port forwarding in your firewall. Otherwise your computer could be used as a Supernode by others. That’s up to you.
And of course, when you’re done recording your interview or conference call, don’t forget to use The Levelator. We developed it for just this situation.
Finally, this article is a work-in-progress, so please correct me where I’m wrong, add any info you’ve discovered, and let me know what works and what doesn’t. Just add your comments to those below.