pjsip logo pjsip.org
Open source SIP stack and media stack for presence, im/instant messaging, and multimedia communication

HOME

SIP/media Features
High Performance SIP
Small Footprint SIP
Symbian Port

FAQ

Documentation

Licensing

Download

Development (Trac)

Projects using pjsip

Mailing List

Open Source Links


About: PJLIB, PJLIB-UTIL, PJSIP, and PJMEDIA are created by: Benny Prijono
<bennylp@pjsip.org>


 

pjsip.org


The PJSIP.ORG website provides the Open Source, comprehensive, high performance, small footprint multimedia communication libraries written in C language for building embedded/non-embedded VoIP applications.

 

PJSIP - Open Source SIP Stack

PJSIP is a SIP stack supporting many SIP extensions/features, with the following key benefits:

Extremely portable

Write the application once, and it would run on many many platforms (all Windows flavors, Windows Mobile, Linux, all Unix flavors, MacOS X, RTEMS, Symbian OS, etc.)

Very small footprint

With less than 150KB for complete SIP features, PJSIP is ideal not only for embedded development where space is costly but also for general applications where smaller size means shorter download time for users.

High performance

...which means less CPU power requirement and more SIP transactions/calls can be handled per second.

Many features

Many SIP features/extensions such as multiple usages in dialog, event subscription framework, presence, instant messaging, call transfer, etc. have been implemented in the library.

Extensive SIP documentation

There can never be enough documentation, so we try to provide fellow developers with hundreds of pages worth of documentation.

 

PJMEDIA - Open Source Media Stack

PJMEDIA is a complementary library for PJSIP to build a complete, full-featured SIP user agent applications such as softphones/hardphones, gateways, or B2BUA. As with PJSIP, applications developed using PJMEDIA will enjoy the following benefits:
Extremely portable

As with PJSIP/PJLIB, PJMEDIA runs on many many platforms, be it servers, desktops, PDAs, custom hardware, PDA, or mobile phones.

Many features

Conference bridge, wideband codec, adaptive jitter buffer, packet lost concealment/PLC, accoustic echo cancellation/AEC, silence detector, tone generation, RFC 2833, RTP/RTCP stack, speex/iLBC/GSM/G.711 codecs, etc.

Very good quality

PJMEDIA supports encoding and decoding of wideband/16KHz, ultra-wideband/32Khz, or in fact any audio sampling rate, with good quality sample rate conversion supplied. PJMEDIA also can tolerate certain amount of network or sound device jitters and some packet losses.

Small footprint, flexible, and embedded/DSP friendly

Media components have been designed as such so that they are embedded/DSP friendly and can be replaced with the appropriate hardware functionality if available or desired.

Good Documentation

PJMEDIA comes with pretty good documentation.

 

PJNATH - Open Source NAT Traversal Helper Library

PJNATH is a new library, available in the SVN trunk, for helping the applications with NAT traversal. It implements the latest specification of Session Traversal Utilities for NAT (STUN), Obtaining Relay Addresses from STUN (TURN), and Interactive Connectivity Establishment (ICE).

 

PJLIB-UTIL - Auxiliary Library

PJLIB-UTIL is an auxiliary library providing supports for PJMEDIA and PJSIP. Some of the functions/components in this library: small footprint XML parsing, STUN client library, asynchronous/caching DNS resolver, hashing/encryption functions, etc.

 

PJLIB - Ultra Portable Base Framework Library

A small footprint, high performance, ultra portable abstraction library and framework, used by PJSIP and PJMEDIA.

PJLIB is about the only library that PJLIB-UTIL, PJMEDIA, and PJSIP should depend, as it provides complete abstraction not only to Operating System dependent features, but it is also designed to abstract LIBC and provides some useful data structures too.

 

PJLIB, PJLIB-UTIL, PJMEDIA, and PJSIP are released under dual open source GPL or alternative license.

 

 

 

PJSIP NEWS and Blog

Mon, 11 Jan 2010 11:34

pjsip version 1.5.5 released: bug fixes only

A new version of pjsip has been released, it fixes 15 issues, no new features. T...
Thu, 26 Nov 2009 03:42

pjsip version 1.5 is released with TLS Rewrite, TLS for Symbian, QoS, and MWI Support

Version 1.5 has just been released with the following features. SSL/TLS Rewrite ...
Wed, 19 Aug 2009 08:29

Version 1.4 is released with support for SIP Session Timer and Nokia VAS

“Good news, everyone!” PJSIP version 1.4 has been released, with new...
Fri, 03 Jul 2009 06:53

Version 1.3 is released with support for ICE regular nomination

Version 1.3 is out (finally!). No major feature was planned for this release, ho...
Wed, 20 May 2009 02:54

Version 1.2 with support for Siren codecs

Version 1.2 has been released, among other things it contains: G.722.1(C) aka S...

rss rss

 

 

rss  Repository Checkins

Mon, 08 Feb 2010 17:42: Changeset [3090]: More ticket #1033: - fixed the problem that caused ACK not to be sent. ...
Fri, 05 Feb 2010 16:03: Changeset [3089]: Misc (#1018): * httpdemo: make the 2nd parameter (output filename) ...
Fri, 05 Feb 2010 11:11: Changeset [3088]: Misc (#1026): PJLIB does not return the correct error code when TCP ...
Thu, 04 Feb 2010 18:29: Changeset [3087]: Implemented ticket #1018: Simple HTTP client implementation * ...
Wed, 03 Feb 2010 14:43: Changeset [3086]: Ticket #998: - Updated pjmedia_sdp_parse() to apply direction attribute ...
Mon, 01 Feb 2010 11:23: Changeset [3085]: Ticket #766: - Applied patch provided by Bram Kuijvenhoven related to ...
Fri, 29 Jan 2010 22:00: Changeset [3084]: More ticket #1033: - fix for r3071: added protection for case when ...
Fri, 29 Jan 2010 15:51: Changeset [3083]: Ticket #1028: - Updated codecs docs, more detail info about codec ...
Fri, 29 Jan 2010 11:20: Changeset [3082]: More ticket #1037: - bug in aligning pointer if sizeof(long) is less than ...
Fri, 29 Jan 2010 10:10: Changeset [3081]: Fixed ticket #1037: Memory pool alignment error when alignment is set to ...
Thu, 28 Jan 2010 05:02: Changeset [3080]: Ticket #1028 (minor): - Fixed missing pjmedia_codec_mgr_destroy() in ...
Wed, 27 Jan 2010 17:22: Changeset [3079]: Initial implementation of ticket #1016: Native Linux ALSA audio device ...
Wed, 27 Jan 2010 11:48: Changeset [3078]: Ticket #1028: Recommit r3074 with updated codec.h.
Wed, 27 Jan 2010 09:09: Changeset [3077]: Fixed ticket #1036: Stray timer may be registered by SIP TCP and TLS ...
Wed, 27 Jan 2010 07:28: Changeset [3076]: Fixed ticket #1035: Crash in timer heap cleanup sequence on Symbian if the ...