Commit Graph

47 Commits

Author SHA1 Message Date
irungentoo
87c9ac242b
Merge branch 'Opus-Codec-Settings' of https://github.com/JasonLocklin/toxcore 2015-07-31 23:36:19 -04:00
Jason Locklin
f05fdae055 added documentation 2015-07-31 11:11:32 -04:00
Jason Locklin
ef086a5897 Set packet loss percentage
Make the Codec resistant to up to 10% packet loss (default 0) at the expense of some bandwidth.  10% is aggressive (1-5% should be typical for voip systems, but can be higher when users are on WiFi connections. This could also be adjusted on the fly, rather than hard-coded, with feedback from the receiving client.
2015-07-31 11:08:51 -04:00
Jason Locklin
bcb864af4a Enable in-band FEC
In-band FEC can be used with OPUS_APPLICATION_VOIP to improve Codec robustness to packet loss and corruption. It is disabled by default:

http://opus-codec.org/docs/html_api-1.0.1/group__opus__encoderctls.html#ga5b67dc832aa46c1c2f35752c46380545
2015-07-31 11:01:32 -04:00
Jason Locklin
06c72f83d7 OPUS_APPLICATION_VOIP should be used
See: http://opus-codec.org/docs/html_api-1.0.1/group__opus__encoder.html#gaa89264fd93c9da70362a0c9b96b9ca88

"VOIP" rather than "AUDIO":
> gives best quality at a given bitrate for voice signals. It enhances the input signal by high-pass filtering and emphasizing formants and harmonics. Optionally it includes in-band forward error correction to protect against packet loss. Use this mode for typical VoIP applications.
2015-07-31 10:50:37 -04:00
irungentoo
553f3ea513
Fixed some strange build issues. 2015-07-20 22:21:53 -04:00
irungentoo
01b4ad7a8a Fixed memory leak. 2015-02-06 15:16:07 -05:00
irungentoo
1302981d55
Removed useless misleading define. 2015-02-04 20:54:08 -05:00
irungentoo
82ba83e526
cs_set_video_encoder_resolution improvements. 2014-12-16 13:10:28 -05:00
irungentoo
7d4489b872
Merge branch 'mem-leak-fix' of https://github.com/nurupo/InsertProjectNameHere 2014-12-12 20:56:19 -05:00
irungentoo
4e1e3150d3
Fixed memory leaks. 2014-12-12 20:55:43 -05:00
Maxim Biro
05cc7df031 Fixed a memory leak 2014-12-12 20:41:27 -05:00
irungentoo
129f620fa5
Increase video quality and distance between keyframes. 2014-12-12 19:55:47 -05:00
irungentoo
39cc14ccea
Make the maximum size of the jbuf at least 4 times the capacity.
Should prevent issues that might occur because a different thread is
reading it.
2014-12-12 18:39:39 -05:00
irungentoo
71527c436c
Having two buffers for audio isn't really good. 2014-12-12 18:35:52 -05:00
irungentoo
12f396fcc2
Fixed video packet assembling.
Video should look better now.
2014-12-12 17:47:57 -05:00
irungentoo
af0d6c0695
Fixed possible issue with wrong size being passed to opus_decode(). 2014-12-07 18:23:55 -05:00
irungentoo
1c3f88758d
Jbuff fixes. 2014-11-29 16:13:50 -05:00
irungentoo
8deb032b2d
Merge branch 'mutex-1' of https://github.com/mannol/toxcore 2014-11-29 16:09:24 -05:00
mannol
e62ded3a6d More av cleanup 2014-11-29 13:42:19 +01:00
irungentoo
db68c6eff6
Fixed toxav issues. 2014-11-28 13:10:27 -05:00
irungentoo
279c33c01a
Merge branch 'master' of https://github.com/mannol/toxcore 2014-11-24 20:24:59 -05:00
mannol
386c9748d4 av refactor 2014-11-18 00:46:46 +01:00
irungentoo
a2db81bb1d
Some video encoding improvements. 2014-10-17 19:54:42 -04:00
mannol
733c509582 Fix some toxav warnings 2014-08-04 00:15:00 +02:00
irungentoo
7bbde2d6c7
Reduced max size of queue. 2014-07-27 19:52:43 -04:00
irungentoo
8aa62cfef7
Initialize codec session with right values.
Audio decoder and encoder channel values are sepparate values, the
decoder should be set to the number of channels the other peer has
his encoder set.
2014-07-27 12:51:20 -04:00
irungentoo
84c28337d2
Fixed crash. 2014-07-24 21:00:42 -04:00
irungentoo
da03feaace
Fixed some issues with queue.
disconnecting then reconnecting right away should no longer kill
audio transmission.
2014-07-24 20:56:07 -04:00
irungentoo
443abcfafe
Rewrote audio packet queue.
Audio killing itself after 20 minutes in a call should be fixed.
2014-07-24 19:45:38 -04:00
stal
cc1466ec09
remove this too 2014-07-19 19:29:56 -07:00
stal
4e85be6a68
declare calculate_sum_sq static inline 2014-07-19 19:18:15 -07:00
irungentoo
9d154029cb
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-07-05 17:31:06 -04:00
irungentoo
65b4c026f4
The width and height set during the video encoder initialization is
now described as the maximum width and height of images.

This is to work around what appears to be a bug in libvpx where the
resolution of the stream can be decreased but increasing it above
its originally set value introduces memory corruption.
2014-07-05 14:36:19 -04:00
irungentoo
a51f6bbd69
Merge branch 'mannol1-master' 2014-07-05 12:25:30 -04:00
mannol
ebdc236d51 Fixed conflicts 2014-07-05 15:13:55 +02:00
mannol
8b9d3992a4 Make rtp & codec actions thread-safe 2014-07-05 15:11:25 +02:00
irungentoo
7f1e5ff720
This seems to fix the crash that happens when changing the resolution
of the desktop stream to something higher than the initial one in utox.
2014-07-04 20:20:47 -04:00
irungentoo
9f164b4563
Resolution of video can now be changed during call by passing it
frames with a different resolution.

Added function to change bitrate of video for later use.
2014-07-04 17:41:02 -04:00
irungentoo
aa1194ab3e
Merge branch 'mannol1-master' 2014-07-03 11:13:11 -04:00
mannol
d3560a3a77 Removed redundant code and fixed toxav codec actions being called when call inactive 2014-07-03 16:58:00 +02:00
irungentoo
3063f09f2b
Lowered video bitrate to 500kb/s and lowered audio buffer size. 2014-06-26 12:36:44 -04:00
irungentoo
b1a15b197f
Some video tweaks. 2014-06-24 18:07:31 -04:00
irungentoo
87be366f79
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-06-22 08:39:26 -04:00
mannol
77150081ba Merged upstream 2014-06-22 02:41:32 +02:00
mannol
5c0b6c8117 Added tolerance to VAD and lowered Jitter buffer default value 2014-06-21 19:04:00 +02:00
mannol
d413fef66f Started with VAD 2014-06-21 01:58:55 +02:00