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
mannol
7d5de68364
Fixed CALL_STATE naming
2015-07-10 16:54:53 +02:00
mannol
10e0209f2a
Merge branch 'new_api' of github.com:mannol/toxcore into new_api
2015-07-09 03:41:28 +02:00
mannol
dd0880af38
Fixed documentation.
2015-07-09 03:40:47 +02:00
GrayHatter
ce9003d432
send_message() is too global to be non-static
2015-07-08 15:09:19 -07:00
mannol
4bc2413c44
Fixed missing include toxav_old.h
2015-07-01 22:50:06 +02:00
mannol
6c126e34e6
Implement handling capability change on rtp level
2015-06-30 01:41:38 +02:00
mannol
13148d7d7c
Added support for old groupchats
2015-06-27 19:20:52 +02:00
mannol
2ecb71bb1e
Renamed TOXAV_CALL_STATE to TOXAV_FRIEND_CALL_STATE
2015-06-27 17:28:07 +02:00
mannol
1ba55d0ca7
Added explanation about how audio callback works
2015-06-27 16:12:33 +02:00
mannol
08bc4eb0e0
Added payload turning off by setting bit rate to 0
2015-06-27 01:55:28 +02:00
mannol
9aba4ec273
Random fixes
2015-06-25 01:04:31 +02:00
mannol
a3132feddb
Fixed sample size in callback and other stuff
2015-06-13 15:00:34 +02:00
mannol
979d7730aa
Forgot about this
2015-06-05 22:18:21 +02:00
mannol
d694839d60
Rebased on master and removed alpha channel (again)
2015-06-05 22:14:37 +02:00
mannol
3100042a2b
Updated with master
2015-05-22 23:22:31 +02:00
mannol
64037017cc
Fix bug
2015-05-12 22:16:00 +02:00
irungentoo
b2350f2e26
Check if call supports video encoding before encoding frame.
2015-05-09 16:09:48 -04:00
mannol
73fbc22961
Fixed inconsistencies
2015-05-07 23:14:03 +02:00
irungentoo
048d793021
Toxav fix.
...
Use stored image width instead of displayed image width.
2015-05-05 16:12:09 -04:00
mannol
eb6e8aa290
Fixed* api comments and some bugs
2015-05-01 22:29:25 +02:00
mannol
5c4f275686
Merge branch 'new_api' of github.com:mannol/toxcore into new_api
2015-04-30 00:40:53 +02:00
mannol
b2b11f0fba
Added many test and fixed various warnings
2015-04-30 00:40:30 +02:00
krobelus
45c45841cf
Fixed typo
2015-04-29 09:21:28 +02:00
mannol
9bba7a0434
Done
2015-04-29 01:01:25 +02:00
mannol
e4a020333d
working av new api
2015-04-28 00:55:57 +02:00
mannol
27e0254a98
Almooooooost
2015-04-27 00:15:57 +02:00
mannol
144fc94d69
Almost done
2015-04-26 00:31:03 +02:00
mannol
1bfd93e64a
Finished refactoring
2015-04-22 02:09:37 +02:00
mannol
3fd0ee5f08
Final touchups
2015-04-21 02:31:12 +02:00
mannol
cbb8fdd4ea
Add extern "C"
2015-04-20 11:21:55 +02:00
mannol
3a12a3b329
Update comment
2015-04-18 19:15:46 +02:00
mannol
eb9f4ad592
Fix toxav callback
2015-04-18 19:08:18 +02:00
mannol
d1fd3e36a6
Updated with upstream
2015-04-17 19:19:58 +02:00
mannol
969367b72a
Update latest
2015-04-17 15:55:02 +02:00
mannol
da6c17222f
The pretty basic adaptive bitrate is *working*
2015-04-16 02:00:34 +02:00
mannol
2465f486ac
Started custom RTCP
2015-04-13 01:45:53 +02:00
mannol
b2d88a4544
Random fixes
2015-04-11 02:07:54 +02:00
mannol
4fa31d14cf
Make it possible to decode mono audio with stereo decoder
2015-04-09 02:43:13 +02:00
mannol
9c003c9dd2
Video works now
2015-04-08 01:00:19 +02:00
mannol
bf9f7e2ae8
Video works but there is one deadlock left and video replay is slow
2015-04-07 01:24:36 +02:00
mannol
62c4fd7409
Video preview works (lmao)
2015-04-02 02:04:45 +02:00
mannol
fdaad0b7c0
A little CS cleanup
2015-03-29 01:10:34 +01:00
mannol
e65efc8936
Improvement in test and removed some bloat from CS
2015-03-28 03:36:31 +01:00
mannol
9bd20e8741
Merge branch 'new_api' of github.com:mannol/toxcore into new_api
2015-03-25 23:31:04 +01:00
Dubslow
56e5373a11
Consistency with core api
2015-03-25 14:55:42 -05:00
mannol
c1aa5bac4f
Current progress of video testing
2015-03-24 23:59:01 +01:00
mannol
96ca88a0d6
Make it possible to change channels/sample rate of the decoder
2015-03-23 23:38:04 +01:00
mannol
995bddbc26
Audio works in test
2015-03-23 22:22:17 +01:00
mannol
62af82705a
Some progress
2015-03-22 23:50:43 +01:00
mannol
a4fae8ffd4
Started testing transfer
2015-03-22 00:22:40 +01:00
mannol
4f76a8c89e
Updating with master
2015-03-20 19:07:23 +01:00
irungentoo
8c18dd42a7
Fix build warning.
2015-03-19 18:17:27 -04:00
irungentoo
2b2c9f37a6
Fixed group audio issues when getting an old audio packet.
2015-03-19 18:02:46 -04:00
mannol
45e8807c1e
Make toxav thread safe
2015-03-01 18:45:04 +01:00
irungentoo
e5791ed9ef
Added different error codes for custom packet functions in Messenger.
2015-02-26 13:13:26 -05:00
irungentoo
33370edee6
Changes to custom packet functions in Messenger.
...
Added function for rtp A/V packets, modified functions to behave
correctly for the new api.
2015-02-26 08:05:57 -05:00
irungentoo
ca997bda70
toxav new api fixes.
2015-02-25 20:51:37 -05:00
mannol
9e65cd5337
Implement pausing
2015-02-24 23:27:20 +01:00
mannol
29601feb76
New msi protocol
2015-02-21 01:07:22 +01:00
mannol
efe31ec92f
Removed extra msi header and started testing
2015-02-20 00:23:38 +01:00
mannol
6e259d5fcb
Msi should be done; toxav.c need a cleanup and adjustments
2015-02-18 23:23:46 +01:00
mannol
483a6ffa32
Added 2 new headers into msi for buffer control
2015-02-17 23:34:40 +01:00
irungentoo
c6a59e64b7
Updated types in Messenger callbacks to fit with the ones in the new api.
...
Friend number changed from int32_t to uint32_t.
Some lengths changed to size_t.
2015-02-17 15:49:22 -05:00
mannol
7329f3b3d4
Fixed header protectors and cleaning up the msi
2015-02-16 23:30:20 +01:00
mannol
8c245affb1
Started adjusting msi backend to new api
2015-02-15 22:41:10 +01:00
mannol
aad857527c
Control part of new api already kind of works
2015-02-14 23:37:52 +01:00
irungentoo
ee3adf2641
Fixed memory leak.
2015-02-08 16:23:05 -05:00
irungentoo
01b4ad7a8a
Fixed memory leak.
2015-02-06 15:16:07 -05:00
irungentoo
7e7b7f6c33
Fixed memory leak.
2015-02-06 15:13:36 -05:00
irungentoo
1302981d55
Removed useless misleading define.
2015-02-04 20:54:08 -05:00
mannol
39680f31d0
Progress
2015-02-01 23:43:54 +01:00
mannol
1450c22d01
Current progress
2015-01-24 23:29:54 +01:00
mannol
e57fb8c12e
Progress
2015-01-17 18:22:20 +01:00
Tux3 / Mlkj / !Lev.uXFMLA
4f4967a45e
toxav_prepare_transmission: More descriptive error
...
When trying to prepare an already active call, return av_ErrorAlreadyInCallWithPeer not av_ErrorNoCall
2015-01-04 18:35:50 +01:00
irungentoo
ffa7a726b2
Use same jbuf size for group as for one on one chats.
...
Use define instead of constant.
2014-12-28 15:45:27 -05:00
irungentoo
9da75d009f
Cut one on one default audio bitrate by half.
2014-12-17 20:52:39 -05:00
irungentoo
ecba631493
Fixed some A/V threading issues.
...
Audio dropping on video calls issue should no longer happen.
2014-12-16 16:10:48 -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
7d27893f1a
Merge branch 'more_consistent_custom_packet_handlers' of https://github.com/wrouesnel/toxcore
2014-12-09 16:39:52 -05:00
Will Rouesnel
8a56cb3b58
Change prototype for custom_packet_handler functions
...
Change the custom_packet_handler callback function interface to be
consistent with other callback interfaces.
The new interface takes the Messenger object calling as the first
parameter, and moves the user data object to be the last parameter.
This makes it comparable to the callbacks for file transfer and the
like, and should simplify building interfaces.
The new prototype is: int (*)(Messenger *m, int32_t friendnumber, const
uint8_t *data, uint32_t len, void *object)
2014-12-09 07:51:49 +11:00
irungentoo
af0d6c0695
Fixed possible issue with wrong size being passed to opus_decode().
2014-12-07 18:23:55 -05:00
irungentoo
f6b3e6e8fe
Fixed possible threading issues.
2014-12-03 14:41:01 -05:00
irungentoo
be9c6f88d3
Fixed possible threading issue.
2014-12-03 13:52:18 -05:00
irungentoo
1c3f88758d
Jbuff fixes.
2014-11-29 16:13:50 -05:00
irungentoo
e254c4fe3e
Fixed bug where video didn't work anymore.
...
Some other cleanups.
2014-11-29 16:09: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
d6f733c7e6
Actually fixed build issue.
2014-11-26 16:17:29 -05:00
irungentoo
ed80c43e49
Fixed build issue.
2014-11-26 16:03:22 -05:00
Imperative
6cff9ecf73
Forgot to replace this
2014-11-26 00:26:03 +01:00
Imperative
580c4a60df
Fixed some fatal spelling mistakes
2014-11-26 00:19:57 +01:00
irungentoo
6e361a52fb
Fixed integer rollover bug in toxav.
2014-11-25 17:22:44 -05:00
irungentoo
28ffa035cb
Fixed possible issue.
2014-11-25 15:31:21 -05:00
irungentoo
279c33c01a
Merge branch 'master' of https://github.com/mannol/toxcore
2014-11-24 20:24:59 -05:00
irungentoo
49f4583bc1
Enable use of lower sample rates for group chats.
2014-11-22 16:40:25 -05:00
irungentoo
1ef2092bcc
Fixed small issue where group audio would jumble up sometimes at start of stream.
2014-11-20 18:05:52 -05:00
mannol
386c9748d4
av refactor
2014-11-18 00:46:46 +01:00
irungentoo
4e6f993e7d
Cut bitrate by half for 1 channel audio.
2014-11-17 17:16:51 -05:00
irungentoo
7fee48b148
Increased audio packet queue size by 2.
2014-11-15 14:08:10 -05:00
irungentoo
3b10a248dc
Cleaned up some code, made group av clean up properly after itself
...
when the group is killed.
2014-11-11 15:01:36 -05:00
irungentoo
8c0225b27f
2 channel audio can now be sent to groupchats.
...
Some cleanups and added comments.
2014-11-11 14:39:25 -05:00
irungentoo
a8f670bd68
Added comments.
2014-11-11 09:48:52 -05:00
irungentoo
f0f68efee8
Audio group chats still have some small issues.
2014-11-10 20:23:48 -05:00
irungentoo
94ac524374
Group audio might work now but I have not tested anything yet.
2014-11-10 17:59:14 -05:00
irungentoo
5715a94061
Basic audio packet parsing code.
2014-11-09 20:21:57 -05:00
irungentoo
bbbeecbaa0
Group audio starting to take shape.
...
Some issues still left to solve.
2014-11-08 21:31:46 -05:00
irungentoo
d7f1f223ee
First commit of actual A/V code for group chats.
2014-11-07 21:30:26 -05:00
irungentoo_trip
9c480acecf
Fixed possible threading issues.
2014-10-25 09:01:15 -07:00
irungentoo_trip
9b5aa3ff27
Merge branch 'toxav-uaf' of https://github.com/tux3/toxcore
...
#
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2014-10-25 08:55:42 -07:00
Tux3 / Mlkj / !Lev.uXFMLA
ea4320733f
Fix use-after-free of toxav's TimerHandler
...
If msi.c:timer_terminate_session frees "handler", then when msi.c:timer_poll's thread resumes, there WILL be a use after free of "handler", with a likely segfault.
This use after free causes a crash in qTox, see tux3/qTox#534
2014-10-25 12:29:10 +02:00
xor2003
837f72b39e
Fix for memory leak. And add forgotten break
2014-10-24 15:53:38 +04:00
irungentoo
a2db81bb1d
Some video encoding improvements.
2014-10-17 19:54:42 -04:00
xor2003
1b60fbed56
Trying to fix TimerHandler *handler memory leak
2014-10-17 11:26:22 +04:00
sin
a46810a197
Rework toxav/rtp.c to use ntohl/htonl and ntohs/htons
...
Now we can also remove the helper routines from toxcore/util.[ch].
2014-09-30 13:18:28 -04:00
irungentoo
c43526be9c
Fixed memory leak.
2014-09-21 14:55:23 -04:00
Tux3 / Mlkj / !Lev.uXFMLA
35da73beff
Fix exceptional leak in msi.c
2014-09-10 19:31:34 +02:00
cgar
2bb2bc4163
spelling corrections
2014-09-09 20:31:37 -04:00
irungentoo
2ef89f6ae0
memset call to zero when killing call.
2014-08-05 20:58:49 -04:00
irungentoo
aaaeac8f3d
Merge branch 'master' of https://github.com/mannol1/toxcore
...
Conflicts:
toxav/toxav.c
2014-08-04 13:49:53 -04:00
irungentoo
d4218dcd61
Set pointer to NULL when freeing to fix issue.
2014-08-04 12:40:18 -04:00
irungentoo
9445b40fb5
Fixed threading bug.
2014-08-04 12:09:03 -04:00
irungentoo
02ed20dc39
Merge branch 'notsecure-split-video'
2014-08-04 12:08:43 -04:00
notsecure
d3e66d73a7
one decoding thread per call
2014-08-04 09:50:32 -04:00
mannol
d08d032368
Update with upstream
2014-08-04 00:15:19 +02:00
mannol
733c509582
Fix some toxav warnings
2014-08-04 00:15:00 +02:00
Jfreegman
82c40b9c8a
remove unneeded printf's/prevent stdout spam
2014-08-03 15:56:09 -04:00
irungentoo
07833b6731
Increase dequeue queue size to 16 to prevent stuttering.
2014-08-02 20:45:39 -04:00
irungentoo
0719a4296e
Merge branch 'mannol1-master'
2014-08-02 11:29:27 -04:00
mannol
6c1ac97da9
Added userdata pointer to audio/video callbacks
2014-08-02 01:09:33 +02:00
irungentoo
77df39863e
Disable decode deadline, fixed build error.
2014-08-01 13:22:32 -04:00
irungentoo
055640611f
Merge branch 'notsecure-split-video'
2014-08-01 13:21:03 -04:00
notsecure
8ee3f645b1
audio/video decoding on separate thread with a queue
2014-08-01 10:18:14 -04:00
notsecure
7e806aef06
fix initialization order
2014-07-31 15:35:59 -04:00
notsecure
95710edf40
decode video on separate thread
2014-07-31 14:56:32 -04:00
irungentoo
8be8d84686
Size parameter is now checked in toxav_send_audio().
...
Cleaned up code a bit.
2014-07-29 11:03:15 -04:00
irungentoo
e1158be5a6
Fixed segfault.
2014-07-28 09:58:53 -04:00