Commit graph

504 commits

Author SHA1 Message Date
Benny Prijono
919758f01f Added ICE-CONTROLLING and ICE-CONTROLLED STUN attribute types
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1114 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-29 21:54:21 +00:00
Benny Prijono
dbce2cf75c Fixed pjnath build warnings/errors on Linux
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1112 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-28 16:24:00 +00:00
Benny Prijono
a6bd758a9d Updated projects and Makefiles with the new pjnath library
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1111 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-28 15:49:48 +00:00
Benny Prijono
fd70c9b526 ICE: added media index in pjmedia when handling SDP containing ICE candidates
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1108 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-27 11:00:38 +00:00
Benny Prijono
b681a2f671 ICE (work in progress): use single socket for all candidates in component, and implemented IP interface enumeration on Win32
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1104 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-25 18:44:51 +00:00
Benny Prijono
c97608ee7f ICE (work in progress): integration with PJSUA
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1098 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-23 16:34:20 +00:00
Benny Prijono
24cda7dea5 ICE (work in progress): implemented ICE media transport
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1097 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-23 00:42:47 +00:00
Benny Prijono
a38e78df75 Fixed ticket #183: Add flag in SDP negotiator to specify codec order preference (thanks Esbjorn Dominique)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1072 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-15 22:05:39 +00:00
Benny Prijono
9de76b7020 Fixed ticket #182: SDP negotiation failed when local does not specify telephone-event (thanks Esbjorn Dominique)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@1070 74dad513-b988-da41-8d7b-12977e46ad98
2007-03-15 21:15:16 +00:00
Benny Prijono
58dbca3d1a Updated PJMEDIA_SOUND_BUFFER_COUNT doxygen documentation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@978 74dad513-b988-da41-8d7b-12977e46ad98
2007-02-19 14:40:46 +00:00
Benny Prijono
a771a51a61 Ticket #110: HUGE HUGE changeset to replace all occurence of year 2006 with 2007 in copyright notice in all sources
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@974 74dad513-b988-da41-8d7b-12977e46ad98
2007-02-19 01:13:53 +00:00
Benny Prijono
a70438d0a9 Related to ticket #74: reduce default number of sound buffers from 32 to 16 to reduce audio delay
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@970 74dad513-b988-da41-8d7b-12977e46ad98
2007-02-18 21:06:58 +00:00
Benny Prijono
0eef2c7c47 Updated documentation and sample for media conference with regard to maximum value for audio level adjustment
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@961 74dad513-b988-da41-8d7b-12977e46ad98
2007-02-17 19:38:21 +00:00
Benny Prijono
fe9bffd89e Ticket #82: fix link errors when codecs are disabled from autoconf script
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@909 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-27 17:44:13 +00:00
Benny Prijono
4af234b591 Implement ticket #62: option to play tones continuously, and added --play-tone option in pjsua
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@904 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-24 02:02:09 +00:00
Benny Prijono
258f8bc28d Fixed ticket #74: unstable/stutter sound on Windows Mobile (thanks ChenHuang)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@899 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-23 06:12:28 +00:00
Benny Prijono
a66c331766 Implement ticket #67: added WAV playlist feature to PJMEDIA
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@895 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-21 23:12:40 +00:00
Benny Prijono
c6c0ed0a17 Implement ticket #56: Periodically transmit RTP packet on silence, to maintain NAT binding etc.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@888 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-20 05:18:14 +00:00
Benny Prijono
b5388cfa9c Just updated and improved the doxygen documentations all over the place
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@875 74dad513-b988-da41-8d7b-12977e46ad98
2007-01-04 22:45:08 +00:00
Benny Prijono
6865a3fc7b Implement ticket #40: support for asymmetric encoding/decoding ptime (e.g. with iLBC when local and remote have different mode)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@874 74dad513-b988-da41-8d7b-12977e46ad98
2006-12-30 02:46:57 +00:00
Benny Prijono
b8af0e8d98 Implement ticket #53: Disable silence detector during the first few seconds of RTP transmission to assist NAT traversal
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@868 74dad513-b988-da41-8d7b-12977e46ad98
2006-12-26 21:56:38 +00:00
Benny Prijono
b94a6ab284 Ticket #54: added ability to modify some codec parameters on the fly
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@867 74dad513-b988-da41-8d7b-12977e46ad98
2006-12-26 21:18:11 +00:00
Benny Prijono
0875ae8c4e Added DTMF callback support all the way to PJSUA API (ticket #48)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@863 74dad513-b988-da41-8d7b-12977e46ad98
2006-12-26 00:11:48 +00:00
Benny Prijono
bc96847e46 Implement task #26: integrate table based Alaw/Ulaw/linear conversion into pjmedia (thanks Toni Rutar for the original contribution)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@838 74dad513-b988-da41-8d7b-12977e46ad98
2006-11-30 01:35:00 +00:00
Benny Prijono
c53c6d706e Display actual sound device name in conference bridge port zero
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@833 74dad513-b988-da41-8d7b-12977e46ad98
2006-11-27 09:54:03 +00:00
Benny Prijono
12a669c7a6 Worked on the AEC. Apply constant delay bufferring for the AEC,
and also consider sound device latency when applying EC. It
sounds like working although it still doesn't perfectly cancel
the echo.

EC is now by default enabled in PJSUA.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@822 74dad513-b988-da41-8d7b-12977e46ad98
2006-11-23 07:32:13 +00:00
Benny Prijono
9a44fe2428 Fixed quality setting in MP3 writer (thanks Toni again)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@786 74dad513-b988-da41-8d7b-12977e46ad98
2006-10-21 09:23:37 +00:00
Benny Prijono
8f31052c5a Changed the processing of mp3 _options in mp3 writer with regard to bit_rate and quality to comply with LAME, also changed the pjsua_recorder_create() parameter to allow specifying mp3 options in one of the parameter
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@785 74dad513-b988-da41-8d7b-12977e46ad98
2006-10-20 11:08:49 +00:00
Benny Prijono
b3cdb2bdb7 Support for MP3 recording for Win32 target. Also added "--rec-file" and "--auto-rec" option in pjsua to record voice conversion. The "--rec-file" option will record to either .WAV or .MP3 depending on the file extension.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@783 74dad513-b988-da41-8d7b-12977e46ad98
2006-10-19 15:49:47 +00:00
Benny Prijono
d52174b247 Updated doxygen documentation for media transport (again)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@779 74dad513-b988-da41-8d7b-12977e46ad98
2006-10-18 12:50:46 +00:00
Benny Prijono
43278aba11 Updated doxygen documentation in media transport
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@778 74dad513-b988-da41-8d7b-12977e46ad98
2006-10-18 10:01:25 +00:00
Benny Prijono
85b4bf8d80 Added pjmedia_snd_stream_get_info() function.
** NOTE SOUND DEVICE IMPLEMENTORS: YOU'LL NEED TO IMPLEMENT THIS
   FUNCTION TOO ***




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@744 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-27 22:49:55 +00:00
Benny Prijono
f0c8d4b3b6 Updated doxygen documentation on sdp_neg.h
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@743 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-27 22:45:28 +00:00
Benny Prijono
1d9b9a4996 Tests with other user agents revealed some bugs which
have been fixed below:

- some UAs sends "telephone-event/8000/1" instead of
  "telephone-event/8000", which caused SDP negotiation
  to fail. Fixed in sdp_neg.c.
- codec name was (incorrectly) compared case-sensitively,
  causing negotiation to fail. Fixed in sdp_neg.c.
- Also improved error reporting in SDP negotiation by 
  introducing few more error codes.
- Added Warning header in Not Acceptable response sent
  by pjsip_inv_session when SDP negotiation fails.
- PJSUA-LIB will try to negotiate both SDPs before
  sending 100 response.
- Fixed bug in iLBC codec when setting the mode to 30.

Also:
- Echo cancellation by default is disabled now since
  it doesn't seem to work. Further investigation needed.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@738 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-25 13:40:12 +00:00
Benny Prijono
5ee1f2eb96 Updated doxygen documentation for the website
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@736 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-22 20:43:00 +00:00
Benny Prijono
669643c95c Automatically suspend AEC when nothing is connected to the sound port in the bridge, and resume as soon as frames are transmitted.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@731 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-20 20:02:18 +00:00
Benny Prijono
44763e499a Support for reading non-canonical WAV file in WAV file player port.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@727 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-18 23:33:44 +00:00
Benny Prijono
e0a6f7e2d1 Removed G.711 Annex I PLC from the source (because of possible licensing/patent infringement issues) and replace it with Steve Underwood's PLC implementation which is distributed under dual GPL/LGPL license.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@723 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-17 14:59:55 +00:00
Benny Prijono
5c7e10bced Added EOF callback and get_size() in pjmedia_mem_capture port.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@706 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-12 11:33:22 +00:00
Benny Prijono
88dac53480 Added EOF callback in memory playback port.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@704 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-11 19:55:41 +00:00
Benny Prijono
72b6104702 Added volume control to indivual tone enqueued to the tone generator.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@694 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-05 22:52:26 +00:00
Benny Prijono
7f5c12cb57 Added multi-purpose tone generator in PJMEDIA (tonegen.[hc])
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@693 74dad513-b988-da41-8d7b-12977e46ad98
2006-09-02 23:45:18 +00:00
Benny Prijono
97b87175bc Just updated doxygen documentation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@690 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-24 14:25:14 +00:00
Benny Prijono
5da50430bb Change set_ec_tail() API to set_ec() in sound port, also change suppressor to reduce mic signal by division rather than zeroing the signal. Also moved out VAD and EC settings to config.h.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@658 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-07 10:24:52 +00:00
Benny Prijono
3842ec4a3f Change the silence suppressor to use the adaptive silence detector.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@655 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-06 14:15:47 +00:00
Benny Prijono
22dfe59f7e Change AEC into generic echo canceller framework with either AEC or simple echo suppressor backend can be selected during runtime.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@653 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-06 12:07:13 +00:00
Benny Prijono
70972993e6 AEC and sound backend fixes:
- Changed default sound backend in Windows to PortAudio
- Finalizing AEC settings on Windows:
	- default tail is 256 msec
	- write AEC configuration with "dc"



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@651 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-05 11:13:58 +00:00
Benny Prijono
f20687a082 More work on the AEC (including changes in PJSUA), embed the AEC in sound_port, reduce DirectSound buffer from 32 to 16, and fixed ARM compilation for MSVC WinCE target.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@648 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-04 18:27:19 +00:00
Benny Prijono
69f7312f51 More experimentation with AEC: (1) added media port to create bidirectional port from two unidirectional ports, (2) split AEC functionality into AEC algorithm (aec.h) and AEC media port (aec_port.h), (3) Added the AEC functionality in the sound_port.c.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@646 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-04 11:08:00 +00:00
Benny Prijono
bb9cc5f5d5 Removed the constness of the captured frame from pjmedia_snd_rec_cb specification (experimental, to support AEC since AEC needs to modify the buffer).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@645 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-04 11:06:05 +00:00
Benny Prijono
c8e24a1e53 Added experimental AEC media port (aec_port.[hc]) based on Speex AEC in pjmedia and pjsua-lib.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@642 74dad513-b988-da41-8d7b-12977e46ad98
2006-08-02 18:22:22 +00:00
Benny Prijono
c585988fb2 Really add the iLBC files into SVN now (duh!).
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@638 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-31 15:25:14 +00:00
Benny Prijono
00cae61f5e - Added iLBC codec (experimental) with the following features:
- configurable default decoder mode (20 or 30),
   - encoder mode follows the mode specified in SDP fmtp from
     the remote's SDP,
   - silence detector uses pjmedia's,
   - PLC uses iLBC's PLC,
   - perceptual enhancement (penh) is configurable via codec
     param, as usual.

- iLBC mode is configurable in pjsua with --ilbc-mode option.

- Added packet lost simulation in pjmedia's UDP transport and
  in pjsua (with --rx-drop-pct and --tx-drop-pct options).

- Increase default buffer count in DirectSound to 32 frames
  to make it more resilient to CPU disruption.

- Specify and parse fmtp mode in SDP for codecs that need it.




git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@637 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-31 15:19:36 +00:00
Benny Prijono
c5dfa170c7 Added pjmedia_port_info_init() to fill in pjmedia_port_info structure, avoiding manual initialization and thus improves consistency (and probably reduces size by a tiny bit). This involves modification in quite few places.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@633 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-29 11:14:47 +00:00
Benny Prijono
1b789eda49 - Added splitter/combiner port (splitcomb.c)
- Added function to initialize pjmedia_port_info (still unused though)



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@631 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-27 22:03:51 +00:00
Benny Prijono
92ac447ad2 Changed all public header files to compile correctly when -ansi and -pedantic is used, also when g++ is used
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@622 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-22 13:42:56 +00:00
Benny Prijono
e219b0ffb1 Added PJMEDIA_RTCP_IGNORE_FIRST_PACKETS macro to let application decides how many first RTP packets to ignore when calculating jitter
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@618 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-22 12:45:37 +00:00
Benny Prijono
ac623b3bca Change all pj_memset to pj_bzero(), where applicable
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@582 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-03 15:19:31 +00:00
Benny Prijono
5d4b53b6e8 Miscellaneous bug fix and improvements in PJMEDIA: (1) more stricker SDP parsing and validation, (2) fixed bug in RTCP attribute generation in SDP, (3) configurable telephone-event payload type
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@571 74dad513-b988-da41-8d7b-12977e46ad98
2006-07-02 12:29:54 +00:00
Benny Prijono
b12106f981 Improvements in PJMEDIA to support RFC 3605 (RTCP attribute in SDP) and other changes to improve RTCP communication behind NAT. Also fixed bug related to RTCP reporting changes in revision 565
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@568 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-29 14:45:17 +00:00
Benny Prijono
f2a3e51a35 Minor bug fix and enhancements: (1) fixed bug that caused out-of-order status to be raised when incoming sequence number is random, (2) changed RTCP to only calculate jitter when the RTP timestamp of the packet is different than previous one, and (3) change RTP to randomize initial sequence number
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@567 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-29 09:51:09 +00:00
Benny Prijono
a14fe1f936 Fixed minor compliation warning in transport_udp.c, also corrected misleading comments, and added memory based capture/playback to the Makefile
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@558 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-28 11:48:51 +00:00
Benny Prijono
597d7ad058 Added better API for media transport, and fixed bugs with pending RTP write operation in UDP media transport
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@539 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-22 18:49:45 +00:00
Benny Prijono
84f45890c4 Fixed RTCP statistic returning fraction lost instead of total lost
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@537 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-22 18:44:11 +00:00
Benny Prijono
e8f275a4a1 Added capability to build pjmedia_sock_info from an UDP media transport
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@533 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-22 00:54:54 +00:00
Benny Prijono
9eda522046 Added memory/buffer based media playback and recording
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@532 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-22 00:34:27 +00:00
Benny Prijono
1ec70b3082 Yet again large diffs because of documentation/doxygen update
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@531 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-20 15:39:07 +00:00
Benny Prijono
37235afb40 Updated doxygen documentation to all headers in PJMEDIA
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@518 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-18 02:02:36 +00:00
Benny Prijono
c78c3a3544 Optimizations mostly in the conference bridge (gained more than 3x faster)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@513 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-16 15:54:43 +00:00
Benny Prijono
f37356fe02 Standardise clearing and copying frame with pjmedia_zero_samples() and pjmedia_copy_samples()
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@506 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-14 20:04:04 +00:00
Benny Prijono
2d5d61f0dc Added pjmedia_sdp_neg_was_aswer_remote()
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@501 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-13 22:22:54 +00:00
Benny Prijono
a0d6bc4738 Added mutex protection and option not to delete upstream/downstream port in master_port.c
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@498 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-12 10:13:31 +00:00
Benny Prijono
ba063626cf Changed codec priority to use integer with value between 0-255 instead of enum
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@497 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-11 23:19:43 +00:00
Benny Prijono
8b1889bdd2 Another huge chunks of modifications in PJSUA API, too many things to mention!
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@492 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-06 18:40:40 +00:00
Benny Prijono
ded7da249d Uploaded splitter/combiner API draft
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@488 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-05 13:46:38 +00:00
Benny Prijono
30c658b500 Added options in pjmedia UDP transport to disable source address checking
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@483 74dad513-b988-da41-8d7b-12977e46ad98
2006-06-01 11:37:30 +00:00
Benny Prijono
56de90352a Added set_pos() to WAV player
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@480 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-28 14:51:21 +00:00
Benny Prijono
67e779b638 Added destroy in transport operation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@479 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-28 14:45:33 +00:00
Benny Prijono
4b08be9674 Fixed minor compilation warnings in rtcp.h
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@473 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-25 20:19:04 +00:00
Benny Prijono
70c689132a Install VAD in g711, gsm, and speex, and add the DTX support in stream.c. Also changed the way the silence detector works, and changed default speex quality/complexity to 10
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@457 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-19 15:58:13 +00:00
Benny Prijono
1f98cb8fe9 Changed the way average jitter is calculated in rtcp
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@455 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-18 18:35:05 +00:00
Benny Prijono
b04c9e0072 Major modification in pjmedia to split stream transport into separate functionality, to allow using custom transports with streams
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@452 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-17 17:17:39 +00:00
Benny Prijono
ed8c0fc17f Changed default sound back-end on Win32 to own DirectSound
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@445 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-14 21:29:53 +00:00
Benny Prijono
65382dba06 Set default sound backend in Win32 to own DirectSound, and changed conference clock to 10ms (from 20ms)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@443 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-14 18:50:09 +00:00
Benny Prijono
42adf5e7fb Fixed more bugs with multiple frame handling
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@442 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-14 18:23:34 +00:00
Benny Prijono
8befd9fe99 Another major modifications in PJMEDIA:
- handle multiple frames in one packet
- split stream creation into two steps to allow customization
- PLC framework and implementation with G.711 and speex
- stream returns NO_FRAME correctly.
- added ptime argument in pjsua



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@438 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-13 22:46:23 +00:00
Benny Prijono
0766da0502 Fixed bugs: stream should give to jitter buffer the extended/32bit sequence number instead of raw 16bit sequence number from RTP, to handle the sequence wrapping case, and added options in jbuf to behave as fixed buffer, and added extra frame type for jitter buffer returned frame.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@436 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-11 14:32:26 +00:00
Benny Prijono
3897589998 Fixed bug: incorrect remote and local PT for telephone-events (swapped)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@435 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-11 14:22:01 +00:00
Benny Prijono
9eb336776d Changed jbuf param name in stream_info, and generate random SSRC for RTP/RTCP instead of zero.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@428 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-02 17:49:31 +00:00
Benny Prijono
27071e301e Fixed several bugs in RTCP and tested the compatibility. Fixed bugs: total lost byte order, RTCP RR parsing, normalizing large RTT, RX pkt lost online update.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@427 74dad513-b988-da41-8d7b-12977e46ad98
2006-05-02 17:47:51 +00:00
Benny Prijono
e3ed95281e Fixed bugs in codec priority sorting
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@421 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-29 08:23:37 +00:00
Benny Prijono
0938128264 Added different error code when remote does not support RFC 2833
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@420 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-28 17:49:41 +00:00
Benny Prijono
b9cd54e3d0 Increase the maximum number of formats in SDP media line (from 16 to 32)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@419 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-28 15:37:12 +00:00
Benny Prijono
5fad3e2d00 Added Packet Lost Concealment (PLC) framework, with two backend algorithms (simple replay and G.711 Appendix I)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@417 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-28 14:48:02 +00:00
Benny Prijono
1d709a24fa Fixed obsolete comments in stream.h and session.h about stream transmitting media immediately
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@414 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-27 23:48:08 +00:00
Benny Prijono
a837c3022e Initial support for stereo codecs, and added L16 codecs. Also better handling for case remote media is restarted
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@411 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-27 22:36:40 +00:00
Benny Prijono
6d7a45f38c Better support for continuing media when peer has restarted transmission/RTP session
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@408 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-24 23:13:00 +00:00
Benny Prijono
0bb5b607f6 Added implementation of media clock and master port (to control frame timing of clock-less ports such as file reader/player)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@404 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-20 11:10:09 +00:00
Benny Prijono
92ac452f67 Added the time when session was created in pjmedia_rtcp_stat
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@403 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-20 11:07:59 +00:00
Benny Prijono
903c99d74f Added loss period for rx stream implementation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@399 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-09 17:12:05 +00:00
Benny Prijono
2c29a8b95e Added code in RTCP to handle PerformanceQueryCounter bug on Win32
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@397 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-09 10:42:51 +00:00
Benny Prijono
14b7b66d86 Randomize RTCP send interval to reduce collision risk
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@394 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-07 15:01:51 +00:00
Benny Prijono
6996823860 Integrate (stream) quality monitoring into RTCP framework, and update all RTCP clients accordingly
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@390 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-06 19:29:03 +00:00
Benny Prijono
6e7376d8f4 Fixed RTT calculation bug in RTCP
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@385 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-05 17:13:42 +00:00
Benny Prijono
49ce9a73b8 Fixed bug in RTT calculation in RTCP and increase RTT resolution to usec
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@384 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-05 16:56:19 +00:00
Benny Prijono
a1d03b4d15 Added RTCP end to end delay calculation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@383 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-05 12:53:42 +00:00
Benny Prijono
46ca996b91 Fixed bug in RTCP: packing error causing size mismatch when compiled with MSVC
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@382 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-04 21:39:10 +00:00
Benny Prijono
9a0eab59c8 Changed RTCP timing to use high resolution timestamp
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@381 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-04 19:43:24 +00:00
Benny Prijono
231ad877df Moved private create session info from SDP to public API
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@374 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-03 22:32:49 +00:00
Benny Prijono
e452ddada1 Added DirectSound sound implementation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@371 74dad513-b988-da41-8d7b-12977e46ad98
2006-04-03 09:43:36 +00:00
Benny Prijono
f808329783 Added WAVE writer and resample port, and also found out why audio quality is poor with DirectSound
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@358 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-24 20:41:20 +00:00
Benny Prijono
4fca27bee4 Fixed misc warnings/errors in Solaris build
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@355 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-23 18:04:15 +00:00
Benny Prijono
8482783fff Changed sound device framework to allow opening bidirectional streams from one device
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@352 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-23 13:15:59 +00:00
Benny Prijono
275fd68d29 Redesign RTP/RTCP stuffs so that stream does not create thread implicitly. Changed pjmedia_endpt_create() API.
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@350 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-22 11:59:11 +00:00
Benny Prijono
86ee4b4583 Added macro to exclude filters in resample and added options to select resample algorithm in conference
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@347 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-21 11:59:15 +00:00
Benny Prijono
f4b6091fff Ported PJMEDIA to Darwin/MacOSX
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@341 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-20 16:58:43 +00:00
Benny Prijono
3ea74334a6 Tested and fixed stereo audio support
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@334 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-19 00:48:43 +00:00
Benny Prijono
e3e3e526d2 Fixed no audio bug in new conference, and add level adjustment in port info
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@333 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-19 00:47:02 +00:00
Benny Prijono
a5829a8d4a Fixed bug in stream.c where bits_per_sample is not set properly
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@327 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-17 18:00:19 +00:00
Benny Prijono
b100d69072 Added feature in conference bridge to get and set the signal level of individual port and individual stream direction
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@323 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-17 00:16:01 +00:00
Benny Prijono
d0659a3264 Support for stereo audio (or N audio channels, for that matter)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@322 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-16 19:03:07 +00:00
Benny Prijono
101a78b027 Added sound port (sound_port.h/c), and changed sound and RTCP names from pj_* to pjmedia_*
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@321 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-16 18:52:55 +00:00
Benny Prijono
4381efe1db Added misc flags and modify Makefiles to allow exclusion of PortAudio and specific codec during compilation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@320 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-16 14:24:26 +00:00
Benny Prijono
de8a259f42 Tidying up sound device, register PortAudio error codes, and initial support for stereo sound device (untested)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@319 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-15 20:56:04 +00:00
Benny Prijono
de38058342 Added Null port, and changed conference so that it does not call port get_frame() when there is no listener on the port
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@318 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-15 19:32:41 +00:00
Benny Prijono
8e3344c41d Added options to disable microphone device, usefull for streaming server (some systems only have sound player)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@312 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-08 12:37:22 +00:00
Benny Prijono
51f5bd5bc9 RTP server NAT support and removed rtp_port
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@311 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-08 10:05:19 +00:00
Benny Prijono
9cf18b9963 Fixed warnings in pjmedia_sdp_attr_cmp
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@295 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-06 13:58:54 +00:00
Benny Prijono
8f0e8dc03b Fixed bug if payload type for rx and tx is different (i.e. dyn pt)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@290 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-06 13:30:39 +00:00
Benny Prijono
eb30bf5133 Added Speex for narrowband, wideband, and ultra-wideband!!
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@278 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-04 20:43:52 +00:00
Benny Prijono
08e0d06358 Major modification in conference bridge to allow ports with different ptime and sampling rate. Also introduced sampling rate converter
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@277 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-04 14:52:44 +00:00
Benny Prijono
b550c9c7b8 Support for missing rtpmap for static payload types
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@276 74dad513-b988-da41-8d7b-12977e46ad98
2006-03-03 10:43:08 +00:00
Benny Prijono
a6df7b8ea5 Fixed Linux port warnings/errors
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@242 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-27 00:56:25 +00:00
Benny Prijono
a95a7b1e99 Fixed echo in conference, and add ability to shrink buffer in jitter buffer
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@229 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-25 21:15:49 +00:00
Benny Prijono
8c715611b6 Synched with documentation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@228 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-25 02:04:42 +00:00
Benny Prijono
3987915f25 Added support for playing WAV file
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@222 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-23 02:09:10 +00:00
Benny Prijono
06c709466e RFC 2833 support!
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@215 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-22 12:06:39 +00:00
Benny Prijono
349a0f25f3 Putting initial DTMF efforts
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@214 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-22 09:21:09 +00:00
Benny Prijono
dd7b32d5b7 Added has_local_answer(), and more relaxed negotiation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@207 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-21 23:41:33 +00:00
Benny Prijono
f04ffdddbb Initial conference implementation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@205 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-21 00:11:18 +00:00
Benny Prijono
1496288b02 Added conference bridge prototype
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@203 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-20 01:28:25 +00:00
Benny Prijono
dc32658390 Putting vad template
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@202 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-19 18:38:37 +00:00
Benny Prijono
7f664bf745 Fixed packing error in rtp header, and sdp validation supports non numeric pt for broken uas
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@199 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-19 15:35:54 +00:00
Benny Prijono
24cf04b3a1 Correct broken links in Doxygen documentation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@189 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-15 12:41:43 +00:00
Benny Prijono
274975a463 Created and updated PJMEDIA documentation
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@188 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-15 12:24:23 +00:00
Benny Prijono
a4bf021992 Added pjmedia-codec library
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@176 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-10 15:57:08 +00:00
Benny Prijono
34a404e1ba Failed attempt to build pjmedia with DirectSound on Linux
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@171 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-09 14:38:30 +00:00
Benny Prijono
632ce714c0 Updated with new jitter buffer, and statistics in pjsua
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@169 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-09 14:01:40 +00:00
Benny Prijono
a66c7156a1 Done media integration in pjsua. Needs to do actual voice testing
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@163 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-09 01:26:14 +00:00
Benny Prijono
9519658bae Integration of pjmedia and pjsip error subsystem to pjlib
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@162 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-09 00:13:40 +00:00
Benny Prijono
1519e57fd7 Finished new pjmedia rewrite
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@159 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-08 22:43:39 +00:00
Benny Prijono
bae7499427 Added STATE_REMOTE_OFFER state in negotiator
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@140 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-07 12:34:58 +00:00
Benny Prijono
4ea0bf1ed6 Added SDP negotiator and changed SDP structs (tested)
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@129 74dad513-b988-da41-8d7b-12977e46ad98
2006-02-02 19:16:07 +00:00
Benny Prijono
b50137be77 Compiled cleanly first time for the new pjlib
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@121 74dad513-b988-da41-8d7b-12977e46ad98
2006-01-18 23:12:57 +00:00