Commit graph

2562 commits

Author SHA1 Message Date
Benny Prijono
05eb3e357e Ticket #915 (misc fixes):
- fixed wrong doxygen comment for pj_list_empty() function (thanks Roman Puls for the report!)


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2872 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 22:31:49 +00:00
Benny Prijono
a248b95705 Ticket #933: Incoming OPTIONS may trigger assertion if it arrives when PJSUA-LIB is being shutdown (thanks Johan Lantz for the report)
- destroy the media subsystem after busy_sleep(1000) in the shutdown sequence
 - also handle the case when OPTIONS arrives just when PJSUA-LIB is being initialized and media transport is not ready (in this case just reply OPTIONS without message body)


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2871 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 22:28:47 +00:00
Nanang Izzuddin
fc9efffbae Ticket #833: Updated Session Timer to keep the refresher role unchanged on any refreshes, by timer or manual.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2870 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 19:04:02 +00:00
Benny Prijono
40d62b6077 Ticket #877: Memory consumption of the invite session grows indefinitely if call is running for long period of time and with many re-INVITES
- introducing flip-flop pools in the pjsip_inv_session. There are two additional pools created, and one of them will be reset everytime SDP negotiation is done to release memory back to the OS


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2869 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 17:53:47 +00:00
Nanang Izzuddin
e5fe420431 Ticket #931: Fixed logging for non-multithreading platforms.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2868 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 17:50:52 +00:00
Benny Prijono
70dfc273ec Bug fix for ticket #833 (session timer support)
- bug in verifying --timer-se option in pjsua



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2867 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 17:28:36 +00:00
Benny Prijono
d7d58ca1ad Misc (ticket #915): enlarge the column for pool name in pj_pool_factory_dump() output
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2866 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 17:24:40 +00:00
Nanang Izzuddin
91ce6e4614 Ticket #833: Fixed pjsip_timer definition (should not in a typedef).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2865 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 11:23:39 +00:00
Benny Prijono
bb995fd284 Ticket #866: Allow application to specify more than one STUN servers for more robustness, and continue application startup if STUN resolution fails
PJSUA-LIB:
 - New fields in pjsua_config to specify more than one STUN servers (the stun_srv_cnt and stun_srv array)
 - The existing stun_host and stun_domain fields are deprecated, but backward compatibility is maintained. If stun_srv_cnt is zero, the library will import the entries from stun_host and stun_domain
 - The library will now resolve the STUN server entries one by one and test it before using it
 - New auxiliary API pjsua_resolve_stun_servers() to perform resolution and test against array of STUN servers

pjsua application:
 - The "stun-srv" command line options can now be specified more than once



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2864 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 11:03:23 +00:00
Benny Prijono
9f0ef0908f Ticket #935: new pj_sockaddr_parse2() API
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2863 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12 10:56:06 +00:00
Nanang Izzuddin
0ea0ead00e Misc fix (ticket #915): Fixed bug of a wrong check variable used in writing playback_lat setting in pjsua app (thanks Wolfgang Fritz for the fix).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2862 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 18:34:03 +00:00
Nanang Izzuddin
9b93f8696f Ticket #833:
- Updated build config for VS6, Symbian, and Makefile for Session Timer.
 - Fixed C/C++ cross-linking problem on some compilers (e.g: Symbian GCCE).



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2861 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 18:21:13 +00:00
Nanang Izzuddin
5ea794187b Ticket #930: Fixed compile error for C++ (missing explicit casting from void*).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2860 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 18:10:15 +00:00
Nanang Izzuddin
65add62e5e Ticket #833:
- Renamed pjsip_timer_default_setting() to pjsip_timer_setting_default().
 - Updated session timer settings in pjsua-lib as whole session timer setting struct (pyhton version remains using se & min_se).
 - Added output param SIP status code in pjsip_timer_process_resp() and pjsip_timer_process_req() to specify the corresponding SIP status code when function returning non-PJ_SUCCESS.
 - Fixed print header functions in sip_timer.c to have buffer check.
 - Added PJSIP_SESS_TIMER_DEF_SE setting to specify the default value of session timer interval.
 - Fixed role reference of the refresher, it is transaction role, not dialog role.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2859 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 16:26:20 +00:00
Nanang Izzuddin
59dffb1a5c Ticket #833:
- Initial version of Session Timers (RFC 4028).
 - Added new options in pjsua app to configure Session Timers settings.
 - Added python tests for Session Timers.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2858 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 12:42:38 +00:00
Nanang Izzuddin
cffb123faf Misc fix (ticket #915): Fixed bug in checking transaction registration with same key, passing wrong pointer of transaction key.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2857 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11 12:36:49 +00:00
Nanang Izzuddin
5d5a20ea15 Ticket #934: Fixed pjsip_inv_verify_request2() to also checks all registered extensions (via pjsip_endpt_add_capability()).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2856 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-06 16:04:20 +00:00
Nanang Izzuddin
5af37ffc77 Ticket #930:
- Updated semantic of contact param in functions pjsip_dlg_create_uac(), pjsip_dlg_create_uas(), pjsip_endpt_create_request() and also variable pjsua_acc.contact to be Contact header value (was Contact URI).
 - Updated docs related to above modifications.
 - Fixed pjsua_im_send() in generating contact header, it should use pjsua_acc.contact instead, if it is set.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2855 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-05 18:41:23 +00:00
Benny Prijono
7e8e0c1653 More ticket #925: added compile time option to enable verbose logging output, and one more fix about samples_per_frame mismatch
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2854 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-05 17:10:35 +00:00
Benny Prijono
b1a3e73533 Ticket #931: Logging function may infinitely recursively calls itself on Windows Mobile (thanks Emil Sturniolo for the report)
- Added feature to temporarily suspend the logging facility while we're in the pj_log() function. The suspension will be thread specific if the platform supports it.


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2853 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-05 10:58:02 +00:00
Nanang Izzuddin
e2c7e85a43 Ticket #930:
- Changed semantic of pjsua_acc_config.contact_params, it is now used for specifying Contact header parameters (it was used for specifying Contact URI parameters).
 - Added a new field pjsua_acc_config.contact_uri_params, for specifying Contact URI parameters.
 - Added fields pjsua_acc_config.contact_params and pjsua_acc_config.contact_uri_params into python pjsua.
 - Updated/added option in pjsua app to specify Contact header parameters and Contact URI parameters.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2852 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-04 14:36:17 +00:00
Benny Prijono
1383e477b8 Misc fixes (ticket #915): compilation warning in IPP about conversion from int to char
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2851 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-01 09:23:15 +00:00
Benny Prijono
ec4b67e9b6 Initial commit for ticket #929: Improve packet lost concealment (PLC) when handling burst of lost packets
WSOLA improvements:
 - Introduce fade-out and fade-in effect
 - Limit the number of continuous synthetic samples (only take effect when fading is used)
 - Export many settings as macros:
   - PJMEDIA_WSOLA_DELAY_MSEC (was HANNING_PTIME)
   - PJMEDIA_WSOLA_TEMPLATE_LENGTH_MSEC (was TEMPLATE_PTIME)
   - PJMEDIA_WSOLA_MAX_EXPAND_MSEC

PLC:
 - added compile time macro PJMEDIA_WSOLA_PLC_NO_FADING to disable fading (default enabled)

Stream:
 - fixed bug when stream is not PLC-ing subsequent packet loss (only the first)
 - also add maximum PLC limit just as precaution if PLC doesn't limit number of synthetic frames
 - unrelated: fixed warning about unused send_keep_alive() function

Delaybuf:
 - modified to NOT use fading in WSOLA since we don't expect it to generate many continuous synthetic frames



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2850 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-01 09:20:59 +00:00
Benny Prijono
6139a40bc5 Ticket #928: Error linking PJSIP due to inclusion of aes_tables.c in libsrtp (thanks Johan Lantz for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2849 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-31 09:55:13 +00:00
Benny Prijono
7bc692406d Ticket #927: PIDF timestamp is not added to the tuple (thanks Johan Lantz for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2848 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-30 19:45:10 +00:00
Benny Prijono
9475b15b4b Ticket #926 (SDP compliance with RFC 4566): updated token definition, which allows more characters
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2847 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-30 19:35:24 +00:00
Benny Prijono
1f47f3f56d Ticket #925: New application to simulate network and system impairments to see how it affects the audio quality
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2846 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-29 12:28:31 +00:00
Benny Prijono
ba23a3621a Ticket #924: Loop media transport now allows more than one streams to receive the reflected packets
- This ticket allows the same loop media transport instance to be attached to more than one streams, and allow application to control which stream(s) receives the reflected packets. 



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2845 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-29 12:19:25 +00:00
Benny Prijono
4d8846bc96 Ticket #923: New API to retrieve current jitter buffer state from a stream/session
- added pjmedia_session_get_stream_stat_jbuf() and pjmedia_session_get_stream_stat_jbuf()
 - fixed const correctness in pjmedia_jbuf_get_state(), jb_framelist_size(), and pj_math_stat_get_stddev(), 
 - modify the jitter buffer statistic log message printed by stream (it contains newlines)



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2844 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-29 12:14:21 +00:00
Benny Prijono
be6d5db124 Ticket #922: Option to enable mutex related logging to assist troubleshooting concurrency problems
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2843 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-22 11:12:35 +00:00
Benny Prijono
f940be43f2 Ticket #921: New logging option/flag to include caller thread ID
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2842 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-21 12:20:17 +00:00
Benny Prijono
cdf2c9c441 Misc (#915): added WAVE_FORMAT_DIRECT flag when opening waveIn/Out in WMME audio dev, hopefully it can reduce latency
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2841 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-18 09:21:09 +00:00
Benny Prijono
dbf4cb963f More ticket #920: fixed wrong latency calculation when there is loud noise in the start of recording
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2840 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-18 09:18:26 +00:00
Benny Prijono
258dc213b2 More ticket #720: added Win32 target in VS2005 project
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2839 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-17 11:37:42 +00:00
Benny Prijono
5a8663af07 More ticket #920: fixed VS directory output for WM6 Pro
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2838 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-16 18:53:39 +00:00
Benny Prijono
e25fe6f844 Sound device is not automatically started after pjsua_set_no_snd_dev() is called, even after pjsua_set_snd_dev() is called
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2837 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-16 17:52:08 +00:00
Benny Prijono
ff64ccfa2f More ticket #920: fix latency calculation not able to calculate latency higher than 500ms and added copyright info in source files
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2836 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-16 11:37:15 +00:00
Benny Prijono
7b40c6c166 Ticket #920: New pjsystest application for testing target system/device. Initial work on Win32 and WM
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2835 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-16 10:36:48 +00:00
Nanang Izzuddin
873f3e4de6 Ticket #919:
- Added default ilbc mode into codec passthrough setting.
 - Added iLBC mode 'negotiation' in iLBC codec_open().
 - Updated stream_create() to prioritize codec_open(), that may update the codec params, over stream initializations involving codec params.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2834 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-15 17:55:16 +00:00
Nanang Izzuddin
fc279de2ab Ticket #909:
- Added support for Nokia VAS 2.0.
 - Fixed wrong value assigned to last downstream state var in downstream callback.
 - Minor fix in config_site_sample.h related to VAS Direct setting.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2833 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-14 14:33:39 +00:00
Nanang Izzuddin
54ad79787c Ticket #918: Added C compatible declarations in modules: G.711, transport SRTP, libresample.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2832 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-14 13:45:52 +00:00
Benny Prijono
169f92c7e0 Ticket #916: Crash in TURN client when TCP connection is used
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2831 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-10 15:38:19 +00:00
Nanang Izzuddin
ab2e716896 Misc fix (#915): Moved a call to dump_check() in ice_session.c to be inside the log printing.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2827 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-02 11:09:23 +00:00
Benny Prijono
25cb51dafc Ticket #913: Concurrency problem in select ioqueue may corrupt descriptor set
- fixed the concurrency problem
 - also fixed ioqueue unregister test in pjlib-test


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2826 74dad513-b988-da41-8d7b-12977e46ad98
2009-07-02 08:24:22 +00:00
Nanang Izzuddin
abf58dbe71 Ticket #910:
- Added a new API pjmedia_codec_passthrough_init2().
 - Updated the initialization steps of passthrough codec in pjsua_media.c, to configure the codecs (of passthrough codec) to be enabled based on audio device extended/encoded formats.
 - Minor update: added passthrough.h into pjmedia_codec.vcproj.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2825 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30 15:02:06 +00:00
Benny Prijono
d06d8c505f Related to #911:
- added subscription state name string in pjsua_buddy_info and display this in pjsua


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2824 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30 13:53:47 +00:00
Benny Prijono
384a6222be Related to #911:
- added SIPp scenario for scenario when the first NOTIFY immediately terminates the subscription


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2823 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30 13:49:54 +00:00
Benny Prijono
ce00fa0cef Ticket #911: Crash when receiving NOTIFY after subscription is terminated (thanks Johan Lantz for the report)
- fixed the bug by not processing the NOTIFY if the subscription is already terminated
 - also added SIPp scenario to reproduce the bug


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2822 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30 13:47:44 +00:00
Nanang Izzuddin
d687a5028c Ticket #909:
- Added new audio device VAS for Symbian platform.
 - Updated symsndtest to use the latest audio device framework.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2821 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30 13:37:26 +00:00
Benny Prijono
45fe2e81e2 Ticket #906: Transaction is not destroyed when transport timeout event comes later than transaction timeout (thanks Norma Steveley for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2797 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-25 10:05:18 +00:00