Wednesday, August 19, 2020

PJSIP is an Open Source Embedded SIP protocol stack written in C.


PJSIP is an Open Source Embedded SIP protocol stack written in C.
The development of PJSIP is mainly focused on having a small footprint, modular, and very portable SIP stack for embedded development purposes (although it’s perfectly good for Win32/Linux/MacOS as well). Some of the characteristics of PJSIP:
  • it is built on top of PJLIB, and since PJLIB is a very very portable library, basically PJSIP can run on any platforms where PJLIB is ported (including platforms where normally it would be hard to port existing programs to, such as Symbian and some custom OSes).
  • it has quite a small footprint, although probably it’s not the smallest SIP stack on the planet (the smallest SIP stack would be a stack that does nothing!),
  • it is quite customizable and modular, meaning that features that are not needed won’t get linked into the executable,
  • it has pretty good performance (thousands of calls per second), and
  • it has quite a lot of SIP features.
A high-level SIP multimedia user agent API is available for both C and Python language.


New: Video codec VP8 & VP9!

PJSIP is a free and open source multimedia communication library written in C language implementing standard based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE. It combines signaling protocol (SIP) with rich multimedia framework and NAT traversal functionality into high level API that is portable and suitable for almost any type of systems ranging from desktops, embedded systems, to mobile handsets.

PJSIP is both compact and feature rich. It supports audio, video, presence, and instant messaging, and has extensive documentation. PJSIP is very portable. On mobile devices, it abstracts system dependent features and in many cases is able to utilize the native multimedia capabilities of the device.

Learning VoIP, RTP and SIP (aka awesome pjsip) @

This is interesting
Debugging SIP message traffic with PJSIP History

No comments: