HDVoice In Service Of Online Radio: Part 3

Sometimes the simplest questions result in the most interesting path of investigation. So it has been with Soljon’s initial question;

I am looking for an IP phone that supports G.722 and has audio inputs / outputs so I can connect it to my mixer. We are trying to connect two studios together for an online radio station. I have yet to find anything other than high end Polycom gear that has something like RCA in/out jacks. Have you by any chance come across anything?

In part 1 I examined simple ways to get the audio stream from a hard phone into an audio mixer.

Then in part 2 I considered an alternative approach using a soft phone on a computer in place of the desk phone.

However, pondering the matter further, and considering the broader use of wideband telephony as an audio production tool, I find that there’s a third approach worthy of consideration.

Not all soft phones are created equal, and not all soft phones are dressed simply as soft phones!

That may sound obtuse, but it’s true. Did you know that you can use Asterisk or Freeswitch as a soft phone? Well, you can. In fact, there is relatively new project called Freeswitch Communicator that is an effort to build a soft phone around the Freeswitch core.

For radio production application such as this there may be some advantages to using a small Freeswitch instance as a soft phone. The Freeswitch dev team has an uncanny ability to incorporate new codecs, often within days or even hours of the release of sample code! I can think of numerous examples, but it’s clear that Freeswitch leads the way with respect to implementation of wideband codecs.

Codecs alone are not always especially useful. For example, Freeswitch implements Skype’s SILK codec, which is certainly very exciting. However, that doesn’t mean that you can readily achieve interop with the Skype network. The codec is merely the means of encoding the audio. Gaining access to the Skype cloud is wholly another matter.

Still, there are times when that ability to establish production quality point-to-point communications is advantageous. I think that this kind of radio production situation may be one of those times. A pair of studios, otherwise distant, might benefit from such an arrangement. If the connection need not support interop with the PSTN then very high-quality audio can be realized with low latency using the open source CELT codec.

Freeswitch supports CELT and is known to work with sample rates of 48 KHz, yielding and audio channel approaching 24 KHz. It will actually work at 96 KHz but there’s little practical reason to do that. Further, part of the attraction of CELT is that it was designed from that start for very low latency. According to the CELT page:

  • Ultra-low latency (typically from 3 to 9 ms)
  • Full audio bandwidth (≥20kHz; sample rates from 32 kHz to 96 kHz)
  • Support for both speech and music
  • A quality/bitrate trade-off competitive with widely used high delay codecs
  • Stereo support
  • Packet loss concealment
  • Constant bit-rates from 32 kbps to 128 kbps and above
  • A fixed-point version of the encoder and decoder

By the way, most professional audio production for radio and TV is done using 48 KHz sample rates. Music CDs are sampled at 44.1 KHz.

So, a pair of small net-tops running Freeswitch could give you the ability to pass production quality audio across the internet. Each would also have the ability to perform conferencing, including sample-rate converting calls from the PSTN or G.722 based callers.

If desired, you could call out from one Freeswitch instance to your hosted conference bridge, providing a pathway to the narrowband realm of the PSTN, but all the while sustaining the highest possible audio quality for people in the studios.

As before it would be best to have one end-point that served as the place where the mixer took its feed, and not use that as device for someone participating on the call. In essence each Freeswitch stance is behaving as an uber-wideband soft phone.

There would certainly be some work in getting it all setup the first time, but I suspect that the ability to pass production quality audio between locations, while sustaining G.722 and PSTN interoperability, would be worth the trouble. This would certainly be an interesting project.

Oh, by the way. The Freeswitch project runs a weekly conference call every Wednesday. Being hosted on a Freeswitch instance it would be a nice far end location to call to confirm that you have CELT passing to/from your location.