Commit Graph

335 Commits

Author SHA1 Message Date
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
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
ab4673e873
Merge branch 'mannol1-master' 2014-07-26 21:26:32 -04:00
mannol
ee3822f24b Fixed buffer overflow 2014-07-27 01:24:28 +02:00
mannol
fc230c8671 Fixed tests and conflicts 2014-07-27 00:26:58 +02:00
mannol
54e7d29589 Make codec settings dynamic 2014-07-26 19:29:49 +02:00
irungentoo
d052bbc3eb
Start sequence number at zero instead of one. 2014-07-25 10:39:34 -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
450c503eba
Increased default jitter buffer size by 1. 2014-07-24 20:26:36 -04:00
irungentoo
2d0c503f74
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-07-24 19:50:27 -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
mannol
7d7cc2dad5 dark forces were very active, so to say... 2014-07-23 21:41:18 +02:00
notsecure
f6bca8e928 fix warnings 2014-07-23 13:26:55 -04:00
notsecure
fffe72bcaa fix mannol 2014-07-23 13:24:51 -04:00
irungentoo
511d197e8c
Fixed warning. 2014-07-22 11:24:47 -04:00
irungentoo
6ede3e8ad4
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-07-22 11:20:55 -04:00
mannol
0cf9f27b70 This should fix test failing 2014-07-21 22:11:59 +02:00
mannol
79115259a8 Fixed conflicts 2014-07-21 04:10:05 +02:00
mannol
1aeeef58b2 Improved protocol and cleaned code a bit 2014-07-21 01:10:57 +02:00
irungentoo
d5902f1b39
Merge branch 'lllllllleeeeeeeeellllll' of https://github.com/stal888/ProjectTox-Core 2014-07-19 22:34:37 -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
f0a172f198
Set some functions as static, fixed warning. 2014-07-19 22:08:05 -04:00
irungentoo
72858076f5
Set a deadline in the vpx video decoder to try to solve issues on
slow hardware.
2014-07-12 23:24:47 -04:00
irungentoo
271f03a717
Call now gets terminated when other person times out. 2014-07-10 18:20:07 -04:00
irungentoo
bd4c142e38
Fixed some timer related issues. 2014-07-08 14:39:23 -04:00
irungentoo
7ce9816e40
Fixed threading bug that could cause segfaults. 2014-07-08 12:04:13 -04:00
irungentoo
9874173d71
Fixed deadlock. 2014-07-08 11:51:27 -04:00
irungentoo
95d737cb5f
Fixed segfault and other possible bugs in msi.c
toxav should no longer have weird behaviour when a dead call times out.
2014-07-07 23:19:56 -04:00
irungentoo
909db02941
Merge branch 'split-video' of https://github.com/notsecure/toxcore 2014-07-07 19:55:06 -04:00
notsecure
3d4de767fe use callbacks for a/v 2014-07-07 16:10:10 -04:00
irungentoo
dfa483ba0d
Fixed msi_session being used after being freed. 2014-07-05 21:49:47 -04: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
mannol
77c7a3e103 Check if call is active after getting mutex handle 2014-07-05 19:27:31 +02:00
irungentoo
a51f6bbd69
Merge branch 'mannol1-master' 2014-07-05 12:25:30 -04:00
mannol
9af7c335e7 This might be causing problems 2014-07-05 17:36:12 +02: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
83b9fbc1dc
Fixed out of bounds read.
payload_type seems to be completely useless and should be removed.
2014-07-04 19:09:50 -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
705fceb2e0
Merge branch 'mannol1-master' 2014-07-04 13:28:47 -04:00
mannol
a8fa360547 Merge upstream 2014-07-04 18:17:24 +02:00
mannol
94b9dfdfbf Added getter for current call status 2014-07-04 18:16:53 +02:00
irungentoo
2a70d29440
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-07-03 12:13:03 -04:00
mannol
db88e7de61 Fix removed missing include 2014-07-03 17:56:55 +02:00
irungentoo
aa1194ab3e
Merge branch 'mannol1-master' 2014-07-03 11:13:11 -04:00
mannol
f8a2a865dc Resolved conflicts when merging upstream 2014-07-03 17:08:38 +02: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
c4f0650ae3
Fixed const related warnings. 2014-07-02 16:04:41 -04:00
irungentoo
bc5eafac20
Fixed video in call sometimes freezing.
This should not happen anymore.
2014-06-30 15:41:52 -04:00
irungentoo
bd6f8a2186
Merge branch 'mannol1-master' 2014-06-28 22:29:39 -04:00
mannol
aeaf997ca5 Removed redundant encryption and asserts 2014-06-28 04:13:38 +02:00
irungentoo
0d98869f3c
Fixed calling msi_reject more than once possibly causing issues. 2014-06-26 17:52:42 -04:00
irungentoo
ac4def6cd8
Fixed possible bug if more than one ringing msi packet was sent to us. 2014-06-26 17:42:37 -04:00
irungentoo
2735b4a8de
Fixed segfault that happened because calls could be hanged up more
than once.
2014-06-26 17:05:13 -04: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
a7c55409fc
Fixed video bitrate being set way higher than it should.
Video bitrate is set in kb/s not b/s.
2014-06-24 09:32:46 -04:00
Jfreegman
610af9f196
only allow call cancel during a pending invite 2014-06-23 20:55:15 -04:00
irungentoo
1fd0f92959
Merge branch 'notsecure-split-video' 2014-06-23 16:34:06 -04:00
notsecure
644135183f dont rely on undefined behaviour 2014-06-23 15:58:20 -04:00
notsecure
97c548bc80 unrelated: got rid of some warnings 2014-06-23 15:17:28 -04:00
notsecure
3303b29da1 used define instead of constant.. removed unecessary value from packet 2014-06-23 15:16:31 -04:00
notsecure
4e7593a09c basic packet splitting for video frames 2014-06-23 14:48:30 -04:00
irungentoo
139cfa7aeb
Merge branch 'master' of https://github.com/mannol1/toxcore 2014-06-22 19:54:40 -04:00
mannol
6f46dd5afd Removed hamful code 2014-06-23 00:22:01 +02: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
irungentoo
bc62510a76
Merge branch 'tux3-cppcheck-style' 2014-06-20 22:36:16 -04:00
mannol
d413fef66f Started with VAD 2014-06-21 01:58:55 +02:00
Tux3 / Mlkj / !Lev.uXFMLA
3044bd8101 Fix CppCheck style errors
#if 0 the content of toxav/msi.c : int stringify_message(MSIMessage
*msg, char *dest)
This function has no effect and does not seem to be used for actively
waiting.

Fix various other style errors, reduce scope when possible, avoid
redundant writes, clarify operator priorities, etc.
2014-06-20 21:43:21 +02:00
irungentoo
aba37b0f71
Merge branch 'mannol1-master' 2014-06-20 10:01:27 -04:00