Commit Graph

1057 Commits

Author SHA1 Message Date
Nanang Izzuddin 9670575855 Misc (re #1320): updated vs2005 projects setting with the newly added files (such as pjsua_vid.c etc).
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3619 74dad513-b988-da41-8d7b-12977e46ad98
2011-07-12 03:25:33 +00:00
Benny Prijono 9f468d176d Initial commit re #1263 (PJSUA-LIB Video API):
- API designed and reviewed (pjsua.h)
 - Implemented these APIs and added to pjsua sample application:
   - video device enums API
   - video capture preview API
 - refactoring in PJSUA-LIB:
   - video stuffs go to pjsua_vid.c
   - call dump goes to pjsua_dump.c

We're still missing:
 - video call API implementation
 - media info and statistic API implementation



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3609 74dad513-b988-da41-8d7b-12977e46ad98
2011-07-07 07:46:33 +00:00
Perry Ismangil ebf16b053e Really fixed #1296 deleting VS6 workspaces and projects
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3602 74dad513-b988-da41-8d7b-12977e46ad98
2011-06-30 12:53:51 +00:00
Perry Ismangil 1fef1f9b59 Fixed #1296 deleting VS6 workspaces and projects
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3583 74dad513-b988-da41-8d7b-12977e46ad98
2011-06-14 14:35:39 +00:00
Sauw Ming e90ece8dc3 Closed #1275: Change pjmedia_vid_subsys_xx() to pjmedia_vid_dev_subsys_xx()
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3579 74dad513-b988-da41-8d7b-12977e46ad98
2011-06-09 04:05:44 +00:00
Nanang Izzuddin 5f32640196 Fix #1235: fixed lock codec to check all active media (previously only checked one media: first active audio).
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3573 74dad513-b988-da41-8d7b-12977e46ad98
2011-05-20 08:47:14 +00:00
Nanang Izzuddin b6c239c6db Fix #1237, #1238, #1241:
- Fixed handling remote re-offer, where SDP media line may be added or removed.
 - Fixed bug in receiving remote offer (initial or subsequent), media channel create sdp must consider acc->cfg.max_audio_cnt setting.
 - Fixed bug media transport is not closed after call disconnected.
 - Fixed assertion in lock_codec after receiving initial answer but no acceptable media (in pjsua level, e.g: SRTP nego failed), now the call will be terminated.



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3560 74dad513-b988-da41-8d7b-12977e46ad98
2011-05-10 05:42:28 +00:00
Benny Prijono 029806a4d1 Re #1201: re-enable printing of ICE and SRTP specific info in call statistic output
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3531 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-13 18:07:12 +00:00
Nanang Izzuddin 91ba2a2f1a Re #1201: Added SDP c= line in session level copied from the c=line of the first media, for compatibility purpose.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3521 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-11 19:59:09 +00:00
Benny Prijono bd6613f326 Re #1185: fixed ICE media transport to work with video in pjsua-lib
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3520 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-11 17:27:14 +00:00
Benny Prijono 09c0d67773 Re #1201: fixed sending 488 when receiving double hold
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3518 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-11 05:03:24 +00:00
Benny Prijono 9d5efa7681 Re #1208: fixed error if RTCP XR is enabled
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3515 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-10 23:52:05 +00:00
Nanang Izzuddin a641429ed1 Re #1201:
- fix bug responding 488 after receiving re-INVITE for doublehold
 - updated pjsua_media.c to skip instantiating video devs when call hold by local.



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3512 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-08 04:26:18 +00:00
Nanang Izzuddin e03faada5c Re #1201: Fixed crash when remote initiate call hold with SDP media connection address "0.0.0.0".
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3508 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-07 14:51:28 +00:00
Benny Prijono 316f02aac0 Re #1185: requesting call hold did not set video direction to sendonly
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3506 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-07 07:53:25 +00:00
Benny Prijono 9439562d14 Misc re #1208: fixed SIP user agent layer to not automatically reject incoming REGISTER containing To-tag with 481 (functionality required by a registrar sample)
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3504 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-07 05:16:09 +00:00
Nanang Izzuddin 56b2ce43d8 Re #1186:
- Added custom negotiation callback mechanism in SDP negotiator, mainly for specific formats that require SDP fmtp negotiation.
 - Modified video codec ID string to use encoding name+payload type (was encoding name+clock rate), also added encoding description in video codec info, so duplicated codecs (e.g: multiple H264 configurations) can be differentiated.
 - Few enhancements for H264 in ffmpeg wrapper (e.g: added proper profile-id & packetization-mode setup).




git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3500 74dad513-b988-da41-8d7b-12977e46ad98
2011-04-06 13:55:01 +00:00
Benny Prijono 00ae45add3 libswscale rearrangement (re #1219/ffmpeg codecs): instantiate libswscale converter from the converter manager instead of having to instantiate it manually in all apps
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3487 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-25 08:13:43 +00:00
Nanang Izzuddin 07fe8d35f9 Re #1201: Fixed bad definition of pjsua_vid_set/get_setting() (caused compilation error on GCC).
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3476 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-23 04:43:01 +00:00
Nanang Izzuddin 50fae73e7d Re #1201: Added pjsua API for video devices and codecs management.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3471 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-22 09:49:23 +00:00
Benny Prijono 9b61ff5873 Re #1201: replace union media stream in pjsua_call_media with struct, to avoid the conf_slot corrupting the video capturer value
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3465 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-18 09:55:48 +00:00
Nanang Izzuddin bf26db1ec6 Re #1201:
- Initial version of video stream integration into pjsua-lib.
 - Replaced audio info array in pjsua_call_info with media info array.
 - Added video media info into call dump.
 - Fixed assertion caused by pjsua_set_state(NULL) logging after pjlib shutdown.



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3463 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-18 07:54:50 +00:00
Benny Prijono 0bc99a9ca3 Modifications in PJSUA-LIB to support multiple media streams (multiple audio and/or video) and dynamic creation of media transports. This closed #1185 and closed #1201.
1185: Dynamic creation of media transports
============================================
Done:
 - media transports are created on demand now

Todo:
 - media transport creation is still blocking


1201: Video support in PJSUA-LIB
===================================
Done:
 - call now supports N media (N audio and M video)
 - number of audio/video streams is configurable per acc
 - extra audio stream info in pjsua_call_info to support multiple audio streams
in one call
 - video subsys and ffmpeg initialization in PJSUA-LIB
 - ability to offer and create video SDP answer
 - "dq" for more than 1 audio streams
 - introducing pjsua_state and pjsua_get_state()

API change:
 - on_stream_created() and on_stream_destroyed() callbacks: changed session to
stream

Todo:
 - many others features are disabled, just search for DISABLED_FOR_TICKET_1185
macro (these have also been added to ticket #1193 (Issues & Todos)). Notable
missing features are:
      - creation of duplicate SDP m= lines for optional SRTP
      - mm.. that's it?
 - whole lot of testings

pjsua:
===============
 - Added --extra-audio and --video options. Specify these more than once and
each time an extra audio/video streams will be added. :)



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3457 74dad513-b988-da41-8d7b-12977e46ad98
2011-03-17 04:34:43 +00:00
Benny Prijono c45d951901 Migration of current video works from private repository to this repository. This closed #1176
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3392 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-10 11:04:30 +00:00
Benny Prijono 9d33c95716 Misc (re #1151): respond incoming re-INVITE with 491 instead of 500 if we are waiting for response for our outgoing re-INVITE. If we are currently processing another incoming re-INVITE, then respond with 500, as it is now
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3385 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-02 11:21:01 +00:00
Benny Prijono 0324ba5b56 Fixed #1170 (Assertion when receiving updated SDP offer with all media lines removed):
- pjsua_media.c checks if audio media is present in the offer; if not, do not set any answer
 - sip_inv.c checks if app has supplied an answer after on_rx_offer() callback is called, and returnd 488 (Not Acceptable) if not (previously, it will return 200/OK without SDP!)
 - added a SIPp scenario file to reproduce this


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3383 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-02 10:41:46 +00:00
Benny Prijono 1ec65e83ae Fixed #1166: Detection of offer/answer glare condition with re-INVITE
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3381 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-02 10:08:59 +00:00
Nanang Izzuddin 6d0e23c6f3 Misc (re #1151): Fixed pjsip_multipart_create() in initializing media type, should use pjsip_media_type_init() (thanks Dan Price for the report).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3378 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-02 03:46:11 +00:00
Nanang Izzuddin 5fc7fcfb3b Misc (re #1151): fixed pjsua_acc_config_dup(), some fields, i.e: contact_params, contact_uri_params, and auth_pref, were not duplicated properly (thanks Roman Grachev for the report and the patch).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3377 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-01 08:53:52 +00:00
Nanang Izzuddin 3150d8bc2c Fix #1165:
- Fixed pjsua_media_channel_create_sdp() to re-calculate audio index of the remote offer, instead of using existing audio index calculated by pjsua_media_channel_init(), as for subsequent SDP offer/answer, pjsua_media_channel_init() may not be called.
 - Fixed SRTP transport to be able to switch SRTP status from active to inactive/by-passed and vice versa.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3376 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-01 08:20:28 +00:00
Benny Prijono 789794904e Fixed #1164: Possible crash in PUBLISH session if network connectivity is lost between two requests (thanks Nikolay Popok for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3375 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-29 14:49:37 +00:00
Nanang Izzuddin ec9190096e Fix #1163:
- Fixed lock codec to always be done after successful media update, and pend the lock codec until call state CONFIRMED if media update is done in call state EARLY but remote does not support UPDATE method.
 - Added additional checks in lock_codec() and perform_lock_codec(), e.g: skip locking codec when media deactivated.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3374 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-25 09:27:06 +00:00
Benny Prijono 0249327c6b Fixed #1159: UPDATE is sent to lock codec even though call is being disconnected
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3371 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-17 09:15:04 +00:00
Benny Prijono e49e620d77 Re #1020: fixed pjsua_acc.c, wrong allocation length for outbound contact.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3368 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-16 07:01:25 +00:00
Benny Prijono 2562b75e03 re #1020 (SIP outbound): remove sip.instance and reg-id parameters from the Contact when re-registering if the server does not support SIP outbound
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3367 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-16 06:01:38 +00:00
Benny Prijono b54719ff91 Implemented SIP outbound (closed #1020)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3366 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-16 03:07:46 +00:00
Benny Prijono 1a1f51e4ac Fixed #1156: New option to ignore bad NOTIFY presence message body (thanks Johan Lantz for the suggestion)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3363 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-10 12:13:46 +00:00
Benny Prijono c84ba48757 Fixed #1155 (Run-time option to disable the use of "rport" in outgoing requests (thanks Marcus Froeschl for the suggestion)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3361 74dad513-b988-da41-8d7b-12977e46ad98
2010-11-03 06:48:58 +00:00
Benny Prijono 1e60155980 Fixed #1149 (Crash when holding the call after receiving SDP answer with multiple codecs (thanks Cyril GY for the report)):
- avoid using pre-created SDP, but rather use timer and create SDP right when the UPDATE/re-INVITE is about to be sent, to avoid the use of stale pool
 - also fixed bug in the old code when the lock codec feature is not activated after the call is confirmed


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3349 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-20 05:31:08 +00:00
Benny Prijono 82defdd231 Fixed #1147 (Bug in parsing multipart message bodies (thanks Johan Lantz for the report)): leave the quote in parameter values and let the multipart code handle this instead
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3342 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-13 11:17:51 +00:00
Benny Prijono bb0348ed76 Misc (Re #1134): do not allow subscription state callback to be called with NULL event parameter as application may not expect this
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3341 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-13 11:13:22 +00:00
Benny Prijono fe937cb814 Fixed #1147: Bug in parsing multipart message bodies (thanks Johan Lantz for the report)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3340 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-13 09:41:37 +00:00
Benny Prijono 6349989e20 Closed #1144: New presence callback to report subscription state (thanks Johan Lantz for the suggestion):
- added on_buddy_evsub_state() callback
 - added sample implementation in pjsua_app.c


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3339 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-12 12:45:15 +00:00
Benny Prijono f279c0937d Closed #1146: support for multipart message bodies in incoming NOTIFY requests
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3337 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-12 11:35:55 +00:00
Nanang Izzuddin 1e952a88ad Fix #1143:
- Fixed no audio bug when pjsua with SRTP optional-with-duplicated-offer calls pjsua with SRTP disabled, by updating active media index after SDP negotiation done.
 - Fixed bug in generating SDP, pjsua_media_channel_create_sdp(), by making sure all media in the SDP candidate are aligned with current active SDP before calling pjmedia_transport_encode_sdp().
 - Fixed bug in modifying SDP for call hold, the media index to be modified was hardcoded to 0, should be active media index.
 - Added python tests for calls with SRTP optional-with-duplicated-offer.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3334 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-05 16:32:04 +00:00
Benny Prijono 89e5261fc6 Misc (re #1134): added Supported header in outgoing SUBSCRIBE request. Although RFC 3265 says it is only optional, some downstream RFC may bring this requirement to SHOULD strength - e.g. RFC 5373 (thanks Johan Lantz for the suggestion)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3331 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-01 04:09:08 +00:00
Benny Prijono dd63b997df Closed #1142 (Account based configuration to specify if "c=0.0.0.0" method should be used when putting call on hold):
- use PJSUA_CALL_HOLD_TYPE_DEFAULT to specify default global call hold type
 - use pjsua_acc_config.call_hold_type to specify call hold type for the account
 - call hold type can also be set on per call basis by changing the call_hold_type in the call structure (requires inclusion of <pjsua-lib/pjsua_internal.h>

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3330 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-01 02:03:42 +00:00
Benny Prijono 202837d6d3 Closed #1141: Compile and run-time setting to allow printing of port number in URI in To and From header (thanks Marcus Froeschl for the suggestion)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3329 74dad513-b988-da41-8d7b-12977e46ad98
2010-10-01 00:24:23 +00:00
Benny Prijono 1768adeffd Closed #1121 (Deadlock in transaction code when hanging up calls): fixed the race condition when setting up transaction timeout
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3328 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-30 23:38:20 +00:00
Nanang Izzuddin 60e8aa911d Close #1137: added field reg_hdr_list into pjsua_acc_config to specify custom headers for REGISTER requests of the account.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3326 74dad513-b988-da41-8d7b-12977e46ad98
2010-09-28 10:48:48 +00:00