A new article was posted in PJSIP wiki: PJNATH ICE Heap Usage Analysis and Optimization, that shows how to optimize ICE heap memory usage, from around 76 KB of peak heap usage per call (or 25 KB after the call settles down), down to just 21 KB of peak heap usage per call (or 15 KB after the call settles down). And this was with STUN, ICE, and TURN enabled.
Archive Page 2
Many useful new features have been added on this release, as well as even more bug fixes. Please see the Release Notes for the complete info and get it from the usual Download page.
We are currently migrating svn and trac to new hosting provider, so svn.pjsip.org and trac.pjsip.org will be disrupted for a little while.
Sorry for any inconvenience.
[Update: Everything should back to normal now. As a bonus, https connections are now properly certified without warnings! Yay!]
A new version of pjsip has been released, it fixes 15 issues, no new features.
There’s something for everybody:
- Platform fixes mostly for smartphones Windows Mobile and Symbian.
- ICE (NAT Traversal) issues.
If you are not experiencing the issues listed, then there is no need to upgrade your pjsip.
You can download pjsip 1.5.5 right now.
pjsip version 1.5 is released with TLS Rewrite, TLS for Symbian, QoS, and MWI Support
Published 26 November 2009 Releases , VoIP 6 CommentsVersion 1.5 has just been released with the following features.
SSL/TLS Rewrite
A new secure socket abstraction is implemented in PJLIB. The API is implemented using the native CSecureSocket for Symbian platform and OpenSSL for other platforms. With this API, new type of implementations (such as native Windows SSPI) could be written in the future.
The SIP TLS transport has been rewritten to make use of this secure socket API, while maintaining the existing SIP TLS transport API. The secure socket API will also make way for other SSL/TLS based transports in the future, such as TLS TURN client connection.
QoS Framework
All transports in the library (such as SIP UDP/TCP/TLS transports, UDP media transport, and STUN/TURN/ICE transports) have been equipped with QoS (Quality of Service) settings. The QoS framework abstracts QoS technologies such as the Type of Service/DiffServ Code Point (ToS/DSCP) fields, Wi-Fi Multimedia (WMM) priorities, and IEEE 802.1p tagging (via SO_PRIORITY) in a generic manner, while providing flexibility for applications to adjust the settings manually if wanted.
The QoS framework has been tested on Symbian, Windows Mobile 6, Linux, and MacOS X. Note that currently it is not available on Windows XP and later.
Please see the new QoS wiki page for more info.
Message Summary/Message Waiting Indication (MWI) Support
Added support for both subscription based MWI (RFC 3842) and unsolicited MWI that is used by a popular PBX. For more information please see ticket #982.
Presence Enhancements
Ticket #937 among other things implemented automatic buddy’s presence resubscription upon receiving several specific termination causes. Ticket #411 and #364 improved the PUBLISH request handling.
SIP INVITE/CANCEL Destination Fixes
Ticket #917 and #936 fixed the following problems:
- CANCEL request may be sent to different server than the INVITE when DNS SRV is used
- INVITE request retry because of 401/407 response may be sent to different server than the INVITE when DNS SRV is used
- CANCEL request will be sent with UDP if the INVITE was sent with TCP because of 1300 bytes message size/MTU limit (it must be sent with the same transport)
Please get the new version from PJSIP download page as usual.
Version 1.4 is released with support for SIP Session Timer and Nokia VAS
Published 19 August 2009 Mobile VoIP , Releases 2 Comments“Good news, everyone!”
PJSIP version 1.4 has been released, with new features include SIP Session Timers (RFC 4028), support for VoIP Audio Services/VAS (including VAS-Direct) in Nokia FP1 handsets and newer, and initial porting to Symbian S60 5th Edition. Many bugs were fixed, as usual.
Please see PJSIP download page for more info.
Version 1.3 is released with support for ICE regular nomination
Published 3 July 2009 NAT traversal , Releases ClosedVersion 1.3 is out (finally!). No major feature was planned for this release, however there are few useful enhancements such as support for ICE regular nomination, SIP transport automatically switch to TCP when request is too large, and periodic 1 minute retransmission of provisional responses to prevent dialog from being destroyed by proxies, as well as many bug fixes.
Version 1.0.3 is also out, which contains bug fixes from both 1.2 and 1.3.
Get it while it’s hot from http://www.pjsip.org/download.htm
Version 1.2 with support for Siren codecs
Published 20 May 2009 NAT traversal , Windows CE , Windows Mobile ClosedVersion 1.2 has been released, among other things it contains:
- G.722.1(C) aka Siren7 and Siren14 codecs
- support for building Windows Mobile targets with Visual Studio 2005 (no more upgrading from embedded Visual C++)
- updated PJNATH for the latest STUN RFC and TURN draft.
Version 1.1 is released with support for Nokia native codecs and new audio device API
Published 20 March 2009 Mobile VoIP , Releases , smartphone , Symbian 2 CommentsGood news, everyone!
Finally, after months of developments (read: delays!), version 1.1 is ready for your download. This release contains major feature enhancements, namely support for Nokia native codecs (we use code name APS-Direct for this feature) and a new Audio Device API.
APS-Direct is our codename for functionalities to use the hardware codecs that are supported by sound devices e.g. Nokia Audio Proxy Server (APS) and/or VoIP Audio Services (VAS) directly, bypassing media processing in PJMEDIA. The Nokia APS and VAS support codecs such as G.711 (PCMA and PCMU), G.729, iLBC, and AMR-NB, though the availability of these codecs may vary according to the handset types. There are significant benefits of using these codecs instead of software codecs (in PJMEDIA-CODEC), with the main benefits are performance (hardware vs software codecs, latency) and the given codec licenses/royalties. Due to these benefits, the ability to use these codecs in PJSIP applications is very desirable, hence the support.
This has been a major development in PJMEDIA, as traditionally PJMEDIA works with PCM (linear, L16) audio samples. With APS-Direct, audio frames from the sound device are in encoded format, so some components along the media path need to be updated to support encoded frame format. Understandably, some features cannot be used when encoded audio is active, for example the mixing feature of the conference bridge. Please see APS-Direct wiki for more information.
Half way during APS-Direct development, we discovered that the existing sound device abstraction API couldn’t cope with the new features, for example handling of encoded frames, setting the audio device routing, etc. We could of course patch it here and there, but we decided that creating a new one would be a much better alternative. So a new Audio Device API was developed.
For more information about this release, start from the PJSIP Download page. Enjoy!
Native iPhone SIP Client Based on pjsip Available on App Store: Open Source and Not Tied to any Provider
Published 19 February 2009 pjsip , Porting 15 CommentsTags: Cydia, iPhone, iPod Touch, Samuel Vinson, SIP, sipphone, softphone, VNet Corp, VoIP, voiphone, VoWifi
pjsip on has been running on iPhone and iPod Touch for quite a while. Samuel Vinson (also responsible for making possible VoIP on Nintendo DS) was the first to announce a successful port to iPhone and iPod Touch even before the official SDK became available.
Siphon has already been available for developers and also on Cydia, an alternative distribution platform for iPhone applications. voiphone is another project starting up, based on sound device code from Siphon.
Now another milestone is reached, because an iPhone softphone called SipPhone on iPhone (how many phones can you have in a sentence!), has been released on the official App Store by VNet Corp of Shanghai. This means users unable or unwilling to install Cydia are also able to enjoy VoIP over Wi-fi with their favourite providers, instead of dictated by which client you use.
(For those reading on a computer with iTunes or on the iPhone itself here is the direct link to SipPhone on App Store.)
So how does it work? After downloading from App Store, following the installation instructions, I was able to add Teluu’s sipgate.co.uk account (look, No SIM!):

Main SIP account settings

Additional SIP account settings (optional)

I was then able to choose from my Contacts and make a call as normal. I didn’t do any extensive voice quality testing, just some quick calls. I will try to record some conversations to illustrate better the voice quality.
Another feature that needs pointing out is the ability to have multiple accounts. It was quite easy to toggle which account is active at any one time. The pjsip.org SIP domain uses OpenSER OpenSIPS, so I know this client is compatible with it.

Multiple accounts support for the iPhone SIP client
The source of the application is available at their forum, it seems you can get it even if you are not a customer. This is beyond the requirements of the GPL, so nice touch on VNET Corp people.
I still haven’t been unable to compile it, so as can be seen I have a question pending there.
Overall of course the main issue of VoIP over wi-fi in iPhone remains: no background task. That means, unlike other mobile devices such as Nokia which uses Symbian, it cannot receive any calls while you are doing something else.
Let me know your comments if you have tried this iPhone SIP client.



