Support IP handover in rtpproxy for VoIP applications

Issue #304 If you do VoIP applications, especially with open sources like pjsip, you may encounter kamalio and rtpproxy to serve SIP requests. Due to limitation of NAT traversals, rtpproxy is needed to work around NAT. All SIP handshake requests go through a proxy server, but rtpproxy can also relay voice, video or any RTP stream of data. When I played with rtpproxy, it was before version 2.0 and I need to handle IP handover....

June 12, 2019 · 5 min · Khoa Pham

Learning VoIP, RTP and SIP (aka awesome pjsip)

Issue #284 Before working with Windows Phone and iOS, my life involved researching VoIP. That was to build a C library for voice over IP functionality for a very popular app, and that was how I got started in open source. The library I was working with were Linphone and pjsip. I learn a lot of UDP and SIP protocol, how to build C library for consumption in iOS, Android and Windows Phone, how challenging it is to support C++ component and thread pool in Windows Phone 8, how to tweak entropy functionality in OpenSSL to make it compile in Windows Phone 8, how hard it was to debug C code with Android NDK....

May 23, 2019 · 17 min · Khoa Pham

Jitter buffer in VoIP

Issue #157 This post was from long time ago when I did pjsip A jitter buffer temporarily stores arriving packets in order to minimize delay variations. If packets arrive too late then they are discarded. A jitter buffer may be mis-configured and be either too large or too small. Impact If a jitter buffer is too small then an excessive number of packets may be discarded, which can lead to call quality degradation....

February 27, 2018 · 2 min · Khoa Pham

How to calculate packet size in VoIP

Issue #155 As you have probably observed in your studies, there is a determined method for calculating VoIP packet sizes. The packet size depends on many different variables, so there is no great answer for an “average” packet size – average depends on the environment. Just as an example, if you currently have VoIP running within a LAN and want to provision a new WAN so you can use VoIP to another site, knowing how big your VoIP packets are on the LAN won’t help....

February 27, 2018 · 3 min · Khoa Pham