- B2BUA app with SIP Session Timer (SST) now can also use UPDATE
(see session_refresh_method in sst_b2b.conf)
- if re-INVITE is used, normal SDP OA (INVITE+SDP/200+SDP) is done
using last established SDP (instead of delayed SDP negotiation
and SDP ping-pong)
- SDP is compared only after o= line (no SDP ping-pong with UAs which
always increase SDP version)
- introduced outbound_proxy+force_outbound_proxy at the SIP dialog level (AmSipDialog)
- outbound_proxy+force_outbound_proxy is configurable in the sems.conf
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@1818 8eb893ce-cfd4-0310-b710-fb5ebe64c474
replace AmSession::rtp_str with AmSession::RTPStream() in your app.
for example for pure signaling B2B calls, no RTP stream instance is
created, which saves a lot of memory (especially because of
the RTP receive buffer)
ref r30371 r30372
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@1784 8eb893ce-cfd4-0310-b710-fb5ebe64c474
it, last extra header in outgoing INVITE was not terminated with CRLF.
I have not verified if this is a bug also in 0.10 or if it showed up
with SIP control interface.
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@774 8eb893ce-cfd4-0310-b710-fb5ebe64c474
is that it turned out that in MyISAM tables a unique index does not
guarantee uniqueness if a field in the index can have a NULL value.
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@358 8eb893ce-cfd4-0310-b710-fb5ebe64c474
application.
* Simplified conference application by removing caching of audio
from MySQL to file system.
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@343 8eb893ce-cfd4-0310-b710-fb5ebe64c474
* changed apps that use session specific params to use P-Iptel-Param by default
* added getSessionParam function to ivr
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@260 8eb893ce-cfd4-0310-b710-fb5ebe64c474
Changes
-------
1. Make the AmJitterBuffer work with variable size RTP packets. Packet size
can be changed even during session (ex. Cisco in fax passthrough mode). Also
several improvements and fixes have been made to resyncronization logic.
2. Fix made to the AmPlayoutBuffer class to avoid reading chunks of size
larger than requested. This is required in cases when RTP packets contain
more or less data than internal frame size.
3. Small fix to AmRtpPacket class - replace the pointer to internal buffer
with offset in the buffer. This eliminates the nesessity to reparse the
packet each time the packet has been copied.
4. Replace the sample size field in amci_codec_t structure with two
functions - sampes2bytes and bytes2samples as that field did not allow to
specify sample size for LBR codecs (iLBC, gsm). This also brings ability
for codecs to determine the sample size at runtime (ex. iLBC).
5. Remove the sample size from amci_file_desc_t structure as it was used as
internal attribute of WAV files only and doesn't make much sense for other
file formats. Use the codec's ability to calculate sample size instead.
6. Parameter list for amci_inoutfmt_t.on_close() has been changed to give
ability to determine sample size in this file handler (WAV write_header
procedure requires this).
7. Fix gsm, ilbc, wav plugins and AmPlugin.c to reflect changes to amci.
Add corresponding samples2bytes and bytes2samples functions.
Caveats
--------
1. AmAdaptivePlayout class needs additional checking with RTP streams with
packets containing number of samples different from internal frame size
(for example 240 samples per packet in G711). Adaptive playout class
potentially may produce big packets of audio and therefore make the Conference
application work badly. The adaptive playout is used in Conference application
only and the application is working fine now with jitter buffer and without
adaptive playout. So I turned the adaptive playout off in the Conference app
as a workaround.
Developed by: Sippy Software, Inc.
Sponsored by: Digifonica Canada Limited
git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@185 8eb893ce-cfd4-0310-b710-fb5ebe64c474