Commit Graph

57 Commits

Author SHA1 Message Date
sauwming b3ea8a29ac
Add Metal renderer for Mac and iOS (#3841) 2024-01-29 09:28:10 +08:00
jimying 0a142290d1
Fix minor error: duplicate link pjmedia lib (#3544) 2023-04-28 17:46:21 +08:00
Riza Sulistyo 5ac9104514
Expand tab to spaces and remove $Id$ (#3292) 2022-11-22 16:26:54 +07:00
Riza Sulistyo 86b6711777
Fix configure error on android NDK r25 (#3200)
* Fix configure error on android NDK r25

* Pass libc++_shared.so path to Makefile (java/csharp)

* Only pass the STD Cpp lib and env var rename
2022-08-05 14:49:15 +07:00
sauwming fe6cbbc397
Add configure option to disable srtp (#3002) 2022-05-04 09:33:28 +08:00
Nanang Izzuddin 639e7dc7e6
Add Oboe audio device backend for Android (#2707) 2022-02-08 13:58:29 +08:00
sauwming 0046373595
Add support for WebRTC AEC3 (#2722) 2021-06-03 11:50:47 +08:00
Alex Kalmuk 974cb47351
Add --disable-pjsua2 option for targets which lacks C++ (#2630) 2021-01-28 10:45:32 +08:00
Nikolai ZHUBR dad6a34680
Fix building with video support (including dshow camera) on mingw (#2589) 2020-12-10 15:54:40 +07:00
Apteryks 67881cf4f2
libpjproject.pc: Move external libraries to Libs.private. (#2501) 2020-11-24 09:30:18 +07:00
H5117 a9f4e1a8c3
libpjproject.pc: correct the field 'cflags' (#2403) 2020-08-04 14:29:24 +07:00
Sauw Ming 3c9fa7ae2d Fixed #2253: Support for VP8 and VP9 video codec
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@6110 74dad513-b988-da41-8d7b-12977e46ad98
2019-11-22 06:18:55 +00:00
Riza Sulistyo 1d030de05f Re #2059 (misc): Fix some warnings related to use of external Portaudio.
Thanks to Alexander Traud for the report and patch.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5779 74dad513-b988-da41-8d7b-12977e46ad98
2018-04-09 12:30:48 +00:00
Riza Sulistyo 111322c0e1 Re #2059 (misc): Don't include test app (exe) when building for Android.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5761 74dad513-b988-da41-8d7b-12977e46ad98
2018-03-27 05:35:03 +00:00
Sauw Ming 08ff24ac94 Fixed #2086: Add C# binding using SWIG, and support for Xamarin
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5735 74dad513-b988-da41-8d7b-12977e46ad98
2018-02-12 06:50:00 +00:00
Riza Sulistyo eb4d878e78 Re #2054: When setting CXXCFLAGS manually, make sure it's applied correctly.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5679 74dad513-b988-da41-8d7b-12977e46ad98
2017-11-01 05:23:36 +00:00
Sauw Ming 51519471d8 Re #1993: With the update of bundled libSRTP to 2.1, external SRTP needs to be of version 2.x as well. This changeset will allow external SRTP users the option to continue using their current version 1.x.
* Also add autodetection of external SRTP version via the configure script.

Thanks to Alexander Traud for the report.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5656 74dad513-b988-da41-8d7b-12977e46ad98
2017-09-22 02:42:22 +00:00
Sauw Ming 101682a15a Re #2022: Fixed build configuration to make sure that it's not included in other platforms (such as Android).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5606 74dad513-b988-da41-8d7b-12977e46ad98
2017-06-15 02:56:48 +00:00
Sauw Ming 3469abaa11 Re #1954: Add WebRTC to third party component
* Add build config for GNU build systems



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5428 74dad513-b988-da41-8d7b-12977e46ad98
2016-08-25 01:36:33 +00:00
Nanang Izzuddin 5a0186f493 Re #1937: Added libyuv build configs for GNU build systems.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5361 74dad513-b988-da41-8d7b-12977e46ad98
2016-06-28 14:32:08 +00:00
Sauw Ming cfeae392cb Re #1931: Add support for AVFoundation on Mac
- Deprecate QTKit
- Rename ios_dev.m to darwin_dev.m
- Important: Re-run configure and make dep after applying this change!



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5347 74dad513-b988-da41-8d7b-12977e46ad98
2016-06-16 10:38:34 +00:00
Nanang Izzuddin 0d95874914 Misc (re #1843): Fixed warning messages in 'make install' command due to multiple source file specified to 'cp' (thanks Alexander Traud for the report).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5086 74dad513-b988-da41-8d7b-12977e46ad98
2015-05-05 12:09:43 +00:00
Nanang Izzuddin 991d0815f3 Re #1822: Misc fix in Android video device build setting:
- fixed silly typo caused Android video device sources not being built
 - avoid copying Android camera helper codes when video is disabled



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5029 74dad513-b988-da41-8d7b-12977e46ad98
2015-03-26 09:54:18 +00:00
Riza Sulistyo ec2f27eff9 Re #1776: Initial implementation of Libyuv wrapper. Supports:
- library detection via autoconf
 - scaling and conversion function (from/to I420 or BGRA)



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4875 74dad513-b988-da41-8d7b-12977e46ad98
2014-07-14 02:37:06 +00:00
Benny Prijono b3034d498f Re #1758: Initial implementation of OpenH264 wrapper. Supports:
- library detection via autoconf
 - CBP
 - packetization modes: 0, 1
 - key frame request and indication
 - obey remote's fmtp

Also added video codec test in samples (similar to the one in pjmedia test though).
And there are some fixes here and there too (e.g. in vid_codec_util.c).


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4815 74dad513-b988-da41-8d7b-12977e46ad98
2014-04-10 10:01:07 +00:00
Nanang Izzuddin c6ff58ff09 Misc (re #1630): Put back circular reference dependency (previously added by r4607).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4755 74dad513-b988-da41-8d7b-12977e46ad98
2014-02-21 07:28:39 +00:00
Benny Prijono 31be3aae07 More pjsua2 API (re #1519): removed -static-libstdc++ flags from build.mak
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4743 74dad513-b988-da41-8d7b-12977e46ad98
2014-02-12 05:22:51 +00:00
Nanang Izzuddin 7a302f27ed Close #1728: Removed milenage library from linking setting.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4720 74dad513-b988-da41-8d7b-12977e46ad98
2014-01-29 09:53:06 +00:00
Sauw Ming 709083b78f Re #1723: Modified build system to link with C++ library only for pjsua2 lib or app
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4711 74dad513-b988-da41-8d7b-12977e46ad98
2014-01-23 02:28:41 +00:00
Sauw Ming be9ab067d8 Re #1723: Fixed compilation and linking errors
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4705 74dad513-b988-da41-8d7b-12977e46ad98
2014-01-16 06:33:19 +00:00
Sauw Ming f33813f793 Closed #1723: Merging pjsua2 branch into trunk
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4704 74dad513-b988-da41-8d7b-12977e46ad98
2014-01-16 05:30:46 +00:00
Nanang Izzuddin 1683d49f75 Close #1720:
- Added configure flags --with-external-srtp and --disable-resample.
 - Added macro setting PJMEDIA_LIBSRTP_AUTO_INIT_DEINIT to allow application to handle libsrtp init & deinit by itself.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4701 74dad513-b988-da41-8d7b-12977e46ad98
2014-01-03 03:44:05 +00:00
Nanang Izzuddin 3270796782 Re #1716: Initial implementation of new Android app based on pjsua2+SWIG API.
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4691 74dad513-b988-da41-8d7b-12977e46ad98
2013-12-13 09:07:53 +00:00
Benny Prijono f912318dd8 Fixed #1713: Enable building the libraries as shared libraries/DLLs for GNU targets
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4656 74dad513-b988-da41-8d7b-12977e46ad98
2013-11-23 07:13:40 +00:00
Benny Prijono f673a6ef92 Re #1519: Major change in pjsua2.i and etc after actual test in Python:
- Major changes in SWIG interface file (pjsua2.i). 
    - The "ignore" and "unignore" approach caused link error with vector (duplicate symbols because SWIG generates two identical vector functions in the wrapper) so it cannot be used (tried with many combinations and still doesn't work).
    - So scrap that, and now we use "importing" approach, where needed symbols must be listed in symbols.lst file, then use importsym.py to import the symbol declarations to symbols.i. Then include symbols.i in pjsua.i
    - Due to the way importsym.py work, some macros and naked constants need to be placed into a named enumeration, for example:
       - #define PJ_SUCCESS 0  ==> enum pj_constants_ { PJ_SUCCESS=0 }; [types.h]
       - enum { PJMEDIA_VID_DEFAULT_CAPTURE_DEV = -1 } ==> enum pjmedia_vid_dev_std_index { PJMEDIA_VID_DEFAULT_CAPTURE_DEV = -1 }; [videodev.h]
    - Makefile was changed so that symbols.i would be generated if symbols.lst has changed
 - Added "make install" and "make uninstall" targets for swig. Only implemented on Python. This will install to user's lib dir so doesn't need sudo.
 - Deleted approachX.hpp files
 - Added libVersion() method to Endpoint along with Version struct.
 - Fix pjsua2.i to make exception (or redirection?) works in Python
 - Add polling and worker thread related API:
    - PJSUA-LIB: pjsua_register_worker_thread(), pjsua_stop_worker_threads()
    - Endpoint: libRegisterWorkerThread(), libStopWorkerThreads(), libHandleEvents();



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4639 74dad513-b988-da41-8d7b-12977e46ad98
2013-11-01 07:11:48 +00:00
Benny Prijono b64284082a Re #1519: Implementation of Account API, with inheritance approach:
- With small demo app (samples/pjsua2_demo.cpp)
 - Endpoint changed to use inheritance approach too
 - Simple account registration demo and callback works
 - Further tests will be done in high level app (Python GUI?)
 - Temporary build setting fixes (Makefile) to allow linking with pjsua2 and libstdc++
 - Temporary hacks in Makefile to ignore other build targets to speed up build. This should be fixed during integration.

Issues:
 - incomplete Endpoint::on_incoming_subscribe() implementation. There is no Account::presNotify() yet.
 - incomplete Endpoint::on_pager2(), on_pager_status2(), to handle call's pager rather than account's pager
 - some SWIGTYPE (unknown type by Swig) still unresolved



git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4638 74dad513-b988-da41-8d7b-12977e46ad98
2013-10-25 10:34:38 +00:00
Benny Prijono fe3e558601 More re #1519:
- account API implementation (incomplete, callback is still not called)
 - using callback class design pattern (observer?)
 - after this, it might be changed to use inheritance pattern instead


git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/pjsua2@4631 74dad513-b988-da41-8d7b-12977e46ad98
2013-10-23 05:34:48 +00:00
Sauw Ming d9ff64c45b Re #1630 (misc): Fixed the incorrect fix of r4605 above.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4607 74dad513-b988-da41-8d7b-12977e46ad98
2013-10-01 05:46:28 +00:00
Sauw Ming 9f529bce16 Re #1630 (misc): Fixed circular reference dependency build
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@4605 74dad513-b988-da41-8d7b-12977e46ad98
2013-10-01 04:59:42 +00:00
Benny Prijono 28d3c56283 Re #1474: Merged all changes from 1.12 - HEAD (from the 1.x branch)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3999 74dad513-b988-da41-8d7b-12977e46ad98
2012-03-30 07:10:13 +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 69b1f82cae Re #1176: fixed link error in GNU build system
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/2.0-dev@3393 74dad513-b988-da41-8d7b-12977e46ad98
2010-12-10 11:33:01 +00:00
Benny Prijono 8ec5eae272 Support for iPhone tools in the build system:
- more flexible redeclaration of build tools. Now users may
   override build tools with environment variables, e.g.
   CC, AR, RANLIB, etc.
 - added configure-iphone: configure wrapper for iphone
 - tested with iPhone 2.x SDK

This closes #1050


git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/iphone@3168 74dad513-b988-da41-8d7b-12977e46ad98
2010-05-12 10:59:20 +00:00
Benny Prijono ddd4714f1e Ticket #694: work on 'make install':
- adhere to --prefix
 - header and lib files installation
 - pkgconfig creation
 - also added version.mak to fill in with the correct version


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3063 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-15 15:06:20 +00:00
Benny Prijono 8a9b3b272c More #1025 (support for using external third party libraries):
- support for using external libspeex and libgsm
 - replaced --with-pa-path with --with-external-pa


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3062 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-14 14:46:54 +00:00
Benny Prijono fe0c127516 Ticket #1025: Support for using different PortAudio installation/path
- added --with-pa-path configure option
 - remove the use of PaUtil_SetDebugPrintFunction() since this is not always available across all PA versions (?)


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3058 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-13 16:28:15 +00:00
Nanang Izzuddin 56e380affa Ticket #774:
- Added build config for GNU autoconf & make.
 - Fixed some G.722.1 codes for linux & mingw32 targets, e.g: types 
defs, collision function name 'round'.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2601 74dad513-b988-da41-8d7b-12977e46ad98
2009-04-15 14:45:41 +00:00
Benny Prijono d0ebbc59c5 Misc (ticket #772): fixed missing dependency to pjmedia-audiodev in the applications makefiles
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2569 74dad513-b988-da41-8d7b-12977e46ad98
2009-04-06 10:00:56 +00:00
Benny Prijono ccd90bbee2 Continuing task #741 for aps-direct: updated GNU build system for the new audiodev
git-svn-id: https://svn.pjsip.org/repos/pjproject/branches/projects/aps-direct@2501 74dad513-b988-da41-8d7b-12977e46ad98
2009-03-10 15:14:11 +00:00
Benny Prijono 0822c19f28 More ticket #583: autoconf support for Intel IPP
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2232 74dad513-b988-da41-8d7b-12977e46ad98
2008-08-21 20:59:58 +00:00