VOCAL’s Android VoIP software enables developers to meet unique mobile VoIP application and performance requirements for mobile devices. Our Android VoIP software library supports a complete range of ETSI / ITU / IEEE compliant algorithms to develop a variety of internet calling applications. The native libraries enable rapid development of mobile VoIP apps using standards-based software that can be easily configured for specific Android VoIP client server applications. VOCAL’s Android software library is available for licensing by developers as a native library. Please contact us to discuss your specific mobile VoIP application requirements.
Android VoIP Software
VOCAL’s native Android VoIP software libraries are developed in C/C++ and optimized for use with the Android NDK (Native Development Kit) include the following:
- Android API class library interface
- Native SIP stack with adaptive jitter
- VoIP codecs for narrowband and wideband speech and audio
- Voice quality enhancement with acoustic echo cancellation, noise reduction and dereverberation
- Acoustic beamforming for microphone noise reduction
Android API Class
For developers that require maximum performance for their custom applications, our Android API Class with the JNI (Java Native Interface) provides ready access to the optimized code in VOCAL’s Android vocoder library. Our library and API Class have been implemented using the Native Development Kit for building compatible libraries in C or C++. The SDK provides developer tools to include our optimized C code in their apps via the Java API class.
VOCAL’s API Class enables access to the Android VoIP Library via the JNI
Android SIP Stack
The native SIP stack provides access to the Android Vocoder Library and incorporates an adaptive jitter algorithm to further enhance voice quality. The proprietary jitter algorithm adapts rapidly to packet loss or delays from congested networks and is exceptional at maintaining constant voice output for the listener.
A native SIP stack and VoIP protocols implement an Android SIP client which provides full access to VoIP Internet calling and other services using SIP and RTP. Video conferencing and streaming are also supported with RTP. In addition, VoIP encryption using SRTP or TCP with SSL / TLS is available to ensure secure communication between Android SIP client and server applications.
Android Vocoder Library
Although the SDK includes basic GSM telephony capabilities, VOCAL’s Android vocoder library includes a range of standard ITU and GSM, Wideband and Other voice codec algorithms. In addition, the low bit rate MELP / MELPe (Mixed-Excitation Linear Predictive / enhanced) vocoders and the OPUS Interactive Audio Codec are available. Developers should evaluate the characteristics of each Android VoIP codec and its suitability for a particular mobile application and/or platform. Please contact VOCAL to discuss other Android VoIP codec options that are available for Android SIP client custom applications and requirements.
Android vocoders may be selected and configured to tailor an Android SIP client for different user requirements and operating environments. The native library structure allows the developer to include only the desired Android vocoder and support packages, thus minimizing memory requirements for the application package files (.apks) ultimately deployed to targeted mobile devices.
The following Android vocoder modules are currently available for mobile Android VoIP client applications.
- G.711 - 64k bps PCM (A-law or μ-law form)
- G.722 - 7 kHz audio coding within 64 kbit/s (SB-ADPCM)
- G.722.1 - 24k and 32k bps, 7 kHz audio
- G.722.2 - Adaptive Multi-Rate Wideband (GSM AMR-WB)
- G.729AB - 8k bps CS-ACELP
- MELPe – 600 bps / 1200 bps / 2400 bps
- Speex – 8 kHz, 16 kHz, and 32 kHz CELP
- SILK – Variable Bitrate Wideband Speech Codec
- OPUS - 8kHz to 48kHz audio with dual layer LP and MDCT encoding
Android Voice Quality Enhancement
The Native Android VoIP software libraries include VOCAL’s voice quality enhancement system with Android echo cancellation, noise reduction, and speech dereverberation algorithms optimized for the architecture. In hands-free voice communications using Android, echo cancellation removes reflected copies of a direct path wave from the acoustic/mechanical coupling between the speaker and microphone in the device; dereverberation handles speech reverberation or reflections from surfaces in an enclosed environment; while noise reduction reduces additive noise sources. All of these techniques contribute to significantly improved voice quality and speech intelligibility for the end user’s listening experience.
Android Acoustic Beamforming
The Native Libraries include acoustic beamforming algorithms to capture the speaker’s voice in dynamic and challenging environments. Mobile devices are often used as hands-free systems with the speaker located some distance from the microphone. Newer Android devices with microphone arrays can use adaptive acoustic beamforming to enhance the speaker’s voice while rejecting interferes and background noise from other sources.
Android VoIP Library Features
- Optimized performance for ARM platforms
- Mobile SIP stack supports Android VoIP client and server applications
- Supports G.711, G.722, G.729, Silk, Opus and other wideband voice codecs
- Acoustic echo cancellation, noise reduction, dereverberation and beamforming available
- Device configuration and provisioning using TR-069 management protocols available
- Supports multi-tasking and multichannel operations
- Supports full and half duplex modes
- Supports multiple VoIP internet services
- Android VoIP client
- Mobile VoIP internet calling
- Audio and video conferencing
- Fax over IP
- Radio over IP