September 29, 2005

Send in the Skype clones

Author: Nathan Willis

Over the past couple of months, public opinion of Skype has shifted from "media darling" to "when will their 15 minutes of fame be up?" Judging from forum and blog chatter, it would appear that the novelty of the product is wearing off and early adopters are feeling restless. Luckily, Internet telephony aficionados have standards-based alternatives to choose from.

This is a dangerous time for Skype, which recently announced it would be sold to eBay. Once users begin to see shortcomings, the door is wide open for a competitor to swoop in and take them all away -- particularly when (like Skype), your service is free or pay-as-you-go.

That is not to say Skype is resting on its laurels. It is offering beta-test programs for SkypeIn and SkypeZones, selling ringtones and avatars, and offering other new wrinkles to keep customers interested.

Nevertheless, Skype's core product is a commodity communications platform, and if a similar one comes along with a better user experience and improved features, Skype could be in serious trouble.

Many are of the opinion that Skype's Achilles' heel is its closed, proprietary network, and that a competitor that builds an equally good product based on the Session Initiation Protocol (SIP) will displace Skype.

While most would agree that open standards are better for Internet users as a whole, closed networks based on proprietary protocols and codecs are not quick to die. We won't need to wonder much longer, though. The first generation of SIP-speaking Skype doppelgangers have hit the ground running.

Open and closed case

Let's start with the Gizmo Project. Gizmo, like Skype, is cross-platform, offering clients for Windows, Mac OS X, and Linux on x86 -- though Gizmo doesn't offer a client for Pocket PC. The user interface is virtually identical to Skype's -- tabs for contact list, status, and call logs, and icons that look like they were designed for Playskool toys.

As with Skype, users can call into the public switched telephone network (PSTN) and receive calls from the public telephone network by purchasing add-on services from Gizmo's corporate parent SIPphone.

For users, the most significant difference between the services offered is that Gizmo uses the SIP protocol stack to locate, initiate, and tear down calls. This means a Gizmo user can call anyone on any competing SIP system.

Gizmo, like Skype, uses the proprietary iSAC and iLBC codecs from GlobalIPSound. It also supports GSM, g711U/A, enhanced G711, and iPCM-wb -- which makes sense when interoperability with other services is desired. Skype only needs to support the codecs it ships. Both clients auto-select codecs when negotiating call setup.

SIP support and interoperability are good to have, but I have seen numerous references to Gizmo as "the open source Skype." Unfortunately, Gizmo's license isn't open source. SIPphone provides the dial-in and dial-out services to make money, and they openly assert their support of and commitment to open standards -- but you still can't have the source.

Skype, Gizmo, and Wengophone clients - click to enlarge

Linux users get an "alpha" version of the Gizmo client. The current version for Linux is available only as .deb packages and to Linspire users through the "click and run" (CNR) service. That complicated my initial tests of the application; I wanted to try connecting to people on all three supported operating systems, but my friends encountered serious stumbling blocks installing the app on other flavors of Linux.

When I did get Mac, Windows, and Linux users online, the audio quality was comparable to Skype's. Basic calling works with the Linux client, but critical UI elements are non-functional: most of the buttons do nothing, the View menu is empty and the File menu has only one entry, Quit.

Furthermore, I experienced symptoms widely reported on the Gizmo forums: CPU usage sits at 100% until the first call is made, frequent segfaults, etc. There is still, shall we say, a lot of room for growth in the Linux client.

Is Gizmo a worthy replacement for Skype? I have to say no. Both are proprietary applications. The sole point in Gizmo's favor is using a recognized standard for call management, but if you are under the impression that this equates to open standards support, then you have overlooked the audio codec issue.

SIP is codec-agnostic, and open platforms have dozens of codecs to choose from, including several open source and patent-unencumbered. If the "commitment to open standards" trumpeted at the Gizmo Project site extends only to SIP (as it seems) then it is skin-deep. SIP is but one piece of the overall puzzle.

If you build it, they will come

But as you might expect, there are several GPLed projects interested in chasing down Skype. For brevity's sake, let's take a look at just one of them.

Wengophone is similar in interface design to Skype and Gizmo, and like those offerings, Wengophone is the progeny of a VoIP-to-PSTN service provider -- in this case, France's Neuf Telecom. Neuf Telecom obviously intends to give the product away as a loss-leader for selling its SIP-to-PSTN gateway services much as Skype and SIPphone do for their softphones. A stable release of the Wengophone client is available for Windows, and there's a beta for Linux on x86. Mac OS X and Pocket PC clients are in development.

Wengophone's Linux client is available in .deb and .rpm binary packages, and you can download the source for all platforms from a Subversion repository.

I had no trouble installing the Debian package, but the RPM was a different story. It suffered from sloppy version-checking and bad linking, and required some manual intervention to get it working. The developers did respond quickly to questions on the mailing list and forum. They assure users that the next release will fix those problems. And, of course, you can always compile it yourself.

Wengophone uses the AMR, AMR-WB, PCMA, PCMU, and GSM codecs. Thus when I test-called a Gizmo user from Wengophone, the only codec we had in common was GSM. Sound quality is appreciably nicer with iSAC in Gizmo-to-Gizmo or Skype-to-Skype calls. The GSM codec is not fault-tolerant, meaning that network traffic can introduce jitter, and it uses 8kHz sampling, capping the sound quality below the 16kHz used by other "wide-band" codecs.

The Wengophone configuration panel has a codec tab, which suggested to me that perhaps additional codecs were or would soon be available. I inquired about it on the forums and learned that user-installable codecs are tapped for the next release. The current release also lacks the ability to specify which audio devices to use for sound, microphone, and ringing, but the defaults worked fine on my machine. It should be noted that Wengophone is very young, so perhaps it is too early to be demanding of it in a review.

Despite its shortcomings, I believe that the GPLed status of the project makes it a safer bet for the future than Gizmo, for several reasons. The app can be modified to work with any SIP gateway (present or future -- you never know how long the parent company will survive in this field). Third parties can add support for additional audio codecs (even non-free ones) and new protocols (say, IAX or XMPP integration). Finally, anyone could port Wengophone to other operating systems and new devices -- unlike Skype and Gizmo.

These constitute clear advantages for Wengophone, given that Skype's commodity pricing leaves customers apt to jump ship. That said, for the time being the audio codec issue is the largest hurdle for Wengophone and all other open-source softphones to overcome.

Hanging up

I don't think that Skype's days are numbered by any means. If anything, there is so much growth potential in VoIP that even the smallest player five years from now will probably have more customers than Skype does today. Nevertheless, the horde of Skype lookalikes has a leg up on them due to SIP support.

But a half-open, half-closed solution is not worth supporting. To those who want to see VoIP softphones become widespread, a SIP client supporting only patent-encumbered, royalty-licensed audio (and video) codecs is one step forward and one step back.

If your commercial OS friends start asking you about Skype, I would suggest steering them away from Gizmo and toward a nice cross-platform, GPLed client. And, in the meantime, I would start looking for a way to speed up support for free voice codecs in open source and proprietary clients.

Click Here!