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