http://trac.pjsip.org/repos/milestone/release-1.4 Release Focus ============= Release focus: * Nokia VAS and VAS-Direct Support * Initial porting for Symbian 5th Edition * Support for SIP Session Timer extension (RFC 4028) * New test applications for testing audio subsystem and media handling Incompatibility Info ==================== Changes that may break compatibility with previous versions. * ticket #930 changes the semantic of various SIP contact parameters/settings: o the contact_param field of pjsua_acc_config is now used to represent additional Contact header parameters (not Contact URI parameters). o the contact argument in pjsip_dlg_create_uac(), pjsip_dlg_create_uas(), and pjsip_endpt_create_request() now represents the value of the Contact header rather than the Contact URI. This may break the compatibility if application specifies the value without the brackets, for example, "sip:10.0.0.1;transport=udp" instead of "", due to the treatment of the parameters in the Contact header. In the former example, the "transport=udp" parameter will be treated as header parameter and not URI parameter. Deprecation Info ================ Info about deprecated APIs: * ticket #866 allows application to specify more than one STUN servers in PJSUA-LIB. New settings stun_srv_cnt and stun_srv array are introduced in pjsua_config, and the existing stun_host and stun_domain settings are now deprecated. Backward compatibility is still maintained, if stun_srv_cnt is zero then the values of stun_host and stun_domain will be used. List of Enhancements ==================== common #918 Initial porting for Symbian 5th edition pjlib #921 New logging option/flag to include caller thread ID #922 Option to enable mutex related logging to assist troubleshooting concurrency problems #935 New PJLIB API pj_sockaddr_parse2() to parse "HOSTPART[:PORT]" format into the correspondong hostpart and port pjlib-util pjnath pjmedia #923 New API to retrieve current jitter buffer state from a stream/session #929 Improvement in packet lost concealment (PLC) when handling burst of lost packets pjmedia-audiodev #909 Integration of VoIP Audio Service (VAS) for Nokia S60 pjsip #833 Support for SIP Session Timer (RFC 4028) pjsua-lib #866 Allow application to specify more than one STUN servers for more robustness, and continue application startup if STUN resolution fails #910 Configurable passthrough codecs based on audio device encoding formats capability. #912 Flags in logging configuration to append log file instead of overwriting it #930 New PJSUA-LIB account option to add user defined parameters to the Contact header applications #920 New pjsystest application for testing target system/device #925 New application to simulate network and system impairments to see how it affects the audio quality unit-tests #924 Loop media transport now allows more than one streams to receive the reflected packets third-party List of Bugs ============= common #886 Broken exception in Symbian, potentially will cause undefined behavior when receiving bad SIP message #915 Miscellaneous fixes pjlib #913 Concurrency problem in select ioqueue may corrupt descriptor set #931 Logging function may infinitely recursively calls itself on Windows Mobile (thanks Emil Sturniolo for the report) #939 Throwing exception inside exception handler will cause infinite loop (thanks Roman Puls for the report) #946 Symbian kern-exec 0 in resolving IPv6 address. pjlib-util pjnath #916 Crash in TURN client when TCP connection is used pjmedia #783 Latency issue with Windows Mobile (thanks Johan Lantz for the report) #919 An iLBC session must use same mode in both directions. #926 SDP parser compliance with RFC 4566 (thanks Johan Lantz for the report) #942 MIPS test fails on iLBC encode/decode. #943 Assertion in destroying stream port with SRTP in MIPS test #947 SRTP stops functioning after the library is restarted pjmedia-audiodev pjsip #877 Memory consumption of the invite session grows indefinitely if call is running for long period of time and with many re-INVITES #906 Transaction is not destroyed when transport timeout event comes later than transaction timeout (thanks Norma Steveley for the report) #911 Crash when receiving NOTIFY after subscription is terminated (thanks Johan Lantz for the report) #927 PIDF timestamp is not added to the tuple (thanks Johan Lantz for the report) #934 Incoming request requiring non-built-in SIP extensions always gets rejected #938 Presence PIDF document may be rejected by presence servers that implement strict XML checking (thanks Johan Lantz for the fix) #948 Replaces extension stops functioning after the library is restarted. pjsua-lib #933 Incoming OPTIONS may trigger assertion if it arrives when PJSUA-LIB is being shutdown (thanks Johan Lantz for the report) #945 Account config may not get initialized with default values if pjsua_acc_config_default() is called before pjsua_init() applications unit-tests #944 Miscellaneous fixes to pjmedia_test third-party #928 Error linking PJSIP due to inclusion of aes_tables.c in libsrtp (thanks Johan Lantz for the report)