RELEASE NOTES
Version 0.5.4 2006/03/07
PJLIB:
New features:
-
Added pj_strdup2_with_null() to duplicate a C string and add NULL terminator.
-
Added log message containing version info in pj_init().
Bug fixes:
-
In Linux, select() or epoll() may return non-zero while no descriptor is set,
causing 100% CPU utilization. Added sleep() as temporary fix until the real
problem is found.
-
Fixed bug in timer heap poll() where it can return negative time, causing
application to wait indefinitely in the next run.
PJLIB-UTIL:
New features:
-
Added PJLIB_UTIL_EINXML in errno.h, for general XML parsing failure.
PJMEDIA
New features:
-
Major modification in conference bridge, to allow ports with different clock
rate and ptime to join the bridge.
-
Added resample.c to support wideband and ultra-wideband audio clock-rate
conversion.
-
Support for missing rtpmap in SDP for static payload type.
-
Support for sending and receiving RTP with different payload number (for
dynamic payload types).
-
File port now reads in chunks instead of the whole (to conserve memory usage).
Bug fixes:
-
Deadlock in conference bridge when starting/stopping sound device in Linux.
-
Fixed SDP negotiation to include stream's clock rate (e.g. for Speex).
PJMEDIA-CODEC
New features:
-
Added Speex narrowband, wideband, and ultra-wideband.
Bug fixes:
-
Fixed broken GSM codec support (encoder and decoder were sharing states!).
PJSIP (Core, Ua, and SIMPLE)
New features:
-
(SIMPLE) Instant messaging and message composition indication in SIMPLE.
-
(Core) Changed pjsip_endpt_handle_events() to return pj_status_t instead of
void.
-
(Core) Added optional header and message body arguments in
pjsip_dlg_respond()
-
(Core) Changed pjsip_msg_body_clone(), added pjsip_msg_body_create().
-
(Core) Maximize the size of UDP's SO_SNDBUF and SO_RCVBUF, for better
performance.
-
(Core, UA, SIMPLE) Added API to terminate dialog/invite/evsub prematurely.
Bug fixes:
-
(SIMPLE) Allow application to send unsubscribe while pending subscribe is in
progress. The last subscribe overrides the previous one.
-
(Core) Fixed bug where rdata's pool is not reset properly causing memory
to grow indefinitely.
-
(Core) Fixed Makefile to adhere to other libraries dependencies.
-
(UA) Fixed bug where dead INVITE session is brought to life again when ACK is
received.
-
(UA) Fixed bug when dialog is gone after it is found (should not happen in real
life?).
PJSUA-LIB and PJSUA
New features:
-
Added --add-codec option to allow user to specify codec order and specific
codecs to use.
-
Added --quality and --complexity arguments for codec.
-
Added --uas-duration and --uas-refresh option to specify maximum duration of
incoming cal and interval to send re-INVITE.
-
Renamed getopt to pj_getopt to avoid mistake in linking with LIBC.
Bug fixes: