Mobile app development has gained lot of momentum since the introduction of iOS and Android platforms. Initially, mobile phones were used for voice calling and messaging. While they’re still important functions, users today are running multiple applications—voice, video, messaging, social networking, content sharing, Web browsing, and much more—often simultaneously.

Multiple Video and Voice over IP (V.VoIP) real-time applications also are available. V.VoIP is used in real time, so smart-phone users won’t tolerate anything less than stellar voice and video quality. They expect to be able to browse the Internet and get real-time quality 24-7.

The Traditional Approach

In the pre-iOS/Android era, very few platforms provided the tools for applications development. In particular, real-time V.VoIP functionality was available as an embedded application. Platforms, processors, memory, and bandwidth were intended to deliver just that functionality and didn’t have to compete for resources.

It was a pretty straightforward optimization for the target platform. No multiple gigahertz-clocked cores were available, and all the functionality was squeezed into a single processor core running at a low frequency of a couple of hundred megahertz. It was more of a one-per-device approach.

Options for Mobile Apps

Mobile platforms now have multiple processor cores combined with hardware accelerators, large screens, and batteries, and overall they have much more horsepower than traditional devices. These platforms have made it possible to run multiple applications simultaneously, including real-time applications such as V.VoIP.

Mobile applications can be broadly classified into one of the following categories:

  • Embedded applications: These deeply integrated applications are part of the native application set. For example, Apple’s Facetime falls in this category since it’s tightly integrated with the phone dialer.
  • Pre-loaded applications: There’s usually no way to delete or disable these applications, such as all of the iOS and Android applications bundled with the platform that you see on the home screen/applications menu like camera, maps, mail, and calendar.
  • Over-the-top (OTT) applications: These applications can be downloaded from the Apple Store, various Android markets (Google Play, Amazon App Store, etc.), and other operators/handset markets/stores.
  • Web-based applications: These applications can be run directly from the Web browser. As cloud-based services become more popular, applications are offloading the processing onto the cloud with just a thin application running on the device platform.

Requirements For Real-Time V.VoIP Applications

Before they can gain wide user acceptance, real-time V.VoIP applications typically require:

  • Low audio/video latency: End-to-end latency should be as low as possible to enable an intelligent conversation and prevent issues related to echo, simultaneous talking, and lip syncing, which provide an unfavorable user experience.
  • Quality of service (QoS): Packet losses and network delays are very common in the wireless environment. The applications and the network both should use the best concealment algorithms to mitigate these contentions.
  • Low power consumption: Any application that heats up your mobile device should be avoided. Applications should be optimized for the target platform and take advantage of the various processing resources made available by the platform, reducing CPU cycles and increasing battery life.
  • Multi-platform support: Users would like to run their cool applications on all of their devices—smart phones, tablets, netbooks, or notebooks—and expect the same voice and video experience across all platforms.
  • Network integration: The application should seamlessly integrate with the network interfaces such as Wi-Fi and 3G/4G networks available on the platform.
  • Standards support: To be interoperable with other similar applications, applications must comply with the standards.
  • Integrated native application: Features integrated with the native application must be widely accepted.

Real-Time V.VoIP Requirements: Options

So, which options suit real-time V.VoIP applications? There are two schools of thought:

  • The developers’ perspective: Developers prefer standalone OTT applications or thin Web-based clients that can be launched quickly with no support from device manufacturers or the operators. OTT downloadable clients are very attractive from a time-to-market perspective. The end result is a quick and dirty application that works across the platforms. This is probably fine for a non-real-time application, but will it enable the most optimized, flawless voice and video experience? Also, does it mean that real-time OTT applications don’t exist? There are tons of them, but the user-expectations for these applications are set accordingly.
  • The users’ perspective: Users prefer an integrated native application that does not drain their battery quickly but still provides a low-latency HD voice and video experience even in a lossy wireless environment. This can only be achieved by tightly integrating with the handset platform and operator’s network, just like embedded applications.


There is an urgent need for the developer community to work with operators and handset manufacturers to come up with best-of-class apps. In fact, this initiative has already started. The operator community has been driving a couple of GSMA standards to enable voice/video over LTE and rich communication services that include social presence, group chat, messaging, and video/image/file share, providing all the applications under one super-app that any user would desire.

In addition, operators have provided a low-latency dedicated pipe for real-time voice and video applications to meet the QoS requirements. The handset manufacturers are opening up the platform application programming interfaces (APIs) for tighter integration, enabling a single integrated super-app.