The VoIP Search Continues and the Education of Corey Smith
I received an email from another VoIP provider that found my post on Why Not Packet8. The message was from someone from the management team at Phone.com (how about that for a great url?)
What impressed me was the even though they found my email from my blog and could have launched into a sales pitch, it was more of, "Hey, I noticed you have a problem here... let me know what we can do to help." I liked that approach.
So, I commented that I didn't really understand why a softphone was such an issue. It doesn't make sense to me. I mean, I have used it on a locally hosted VoIP system, so why in the world would it be hard on an internet hosted system. Alon Cohen, one of the partners was kind enough to respond. It has some great information that I asked if he wouldn't mind letting me post. So, I have posted it at the end of my comments here... unedited.
I haven't tried their service yet because they don't have a soft phone, so for what I want, it probably won't work. Their willingness to communicate with me was so compelling I think that I will try it out with a land line and let you know how it works. They did offer me to write something about a new product they are going live with in a few weeks (risky since I wasn't so nice to their competitors). I think I will take them up on that when it comes out.
Any way, here is the content from Anon's email. I think it contains valuable information about how softphones work and probably points out why I have some of the frustrations that I have.
I want to start by saying the so far Skype outdone all the others in terms of quality, even though I believe they have outsourced that from a German company at least in the early days of Skype. The above means that in spite of what I am going to write, the task of making a good Softphone is not easy but also not impossible.
The problem with a Softphone is that the environment in which it operates if very unstable with many variables. Unknown CPU power, unknown Mic and speaker gain parameters, unknown audio device, unknown audio device drivers, unknown load on the computer at any given moment, unknown amount of memory on the system, unknown internet connection quality, and so on. Sometimes people don’t even have a microphone but let’s leave those aside.
To really get a Softphone right you need to start with a good audio handling. For that you need a good audio system on your computer i.e. good microphone that does not pick up noises from the disk, good speakers and low delay audio drivers and hardware. Add to that a decent CPU power and you can start with the most basic requirement which is Echo cancellation. Without Echo cancellation you will be annoying the other callers or suffer constant feedback. I don’t accept a headset as solution for echo, it is just not convenient.
Echo cancellation or AEC takes significant CPU power and is delicate process, the CPU power is usually needed for a Wideband Codec (like the one used by Skype) low CPU power narrow band Codecs will be sufficient to make a call to standard telephony systems PSTN, but will not have any benefits when working with another Softphone on the other end.
The next step is dealing with internet connectivity, which instantly tests the Softphone jitter buffer capabilities which determines the latency of the call. I use at my house wifi N router with a 802.11 B Bridge for my VoIP hard phone and I am getting very good results, but wifi or hotel LAN are seldom reliable. Jitter Buffer handling technologies exist on any VoIP hard phone, and eventually deal with all the other problems like packet loss. Those technologies on a hard phone handle the network problems, on a PC however they need to also deal with many issue that the OS creates. Windows is not a real-time operating system and the last thing you want is for the OS to add artificial jitter to the pacts arrival times when the OS decides to access the disk or open outlook. Mishandling of the Jitter or large jitter translates to unacceptable latency and voice breakups.
All the above, translate to patents and royalties and cost for each copy of a Softphone. You probably see the same news we all see where each month another VoIP company is settling yet another patent infringement. The other cost aspect which is associated with Softphone is the usually the unlimited plans and high hacking probability which means additional cost associated with handling fraud.
As you can see all this is not trivial, and hence there are few good soft phones available – I am still looking. I hope that PC manufacturers will create some standard for the audio system that they can call VoIP ready and hence some of those problems will go a way and will make the task of developing a good Softphone much easier in the future.
Personally I often use skype and skype-out with my skype friends and when I travel.
As I joined Phone.com and got my own VoIP hard phone, I used that as my main communication tool from home, every time I dial, the speed and the sound quality are so significantly better that I simply don’t use PSTN anymore.
Since I always travel with my Cellular PDA Smart Phone, I use the Phone.com service to direct my office calls to my cell in case I don’t pick up at my desk phone. I also directed my home numbers (which I transferred to Phone.com using LNP) to my cell phone. I also use Phone.com to collect all my voicemails (which ever they come from e.g. office, home or cell) from my e-mail on my PDA Smart Phone, so all in all, the need for a Softphone is really reduced. It is possible that VoIP companies realize that and simply decide to invest fewer efforts on the Softphone business.
Corey Smith is the president of Tribute Media a web development firm providing high performing, industry specific websites. He is a businessman, writer, technology fanatic, graphic designer and web developer. His greatest passion is teaching, consulting and speaking.
You can find him on Twitter, FaceBook, FriendFeed, and LinkedIn.
You love this post, right? Don't be afraid, Share it with someone...