tux3
c902543ae4
Fix call race leading to deadlock and memory leak
...
A call cancel/accepted race was locking up both UI and AV threads, while the stream thread was shoveling more and more video frames on the AV thread's event queue
2015-10-25 00:17:45 +02:00
tux3
f85aec6c95
Re-enable call buttons if video call fails
2015-10-24 22:55:18 +02:00
tux3
a776579732
Don't assert if a call dies while we answer it
...
This error condition only happens when a peer cancels its outgoing call in the middle of us answering it. We can simply ignore the error and things should nicely fall back into place. Since this race should be pretty rare in normal usage, it's nice to leave a log message, as it might mean we're being fuzzed.
We can prograssively replace more of those asserts by fallbacks and log messages now that everything has been shown to work fine, and the race conditions are harmless.
I feel like writing a novel today. Good thing nobody looks at these!
2015-10-24 21:41:19 +02:00
tux3
37e2d2e75f
CoreAV: Fix BlockingQueued connections deadlock
...
Having a deadlock problem? The solution is more locks!
2015-10-24 15:35:08 +02:00
tux3
50006a9a32
Faster video device opening
2015-10-24 05:20:49 +02:00
tux3
e1c61cd207
CoreVideoSource: Replace insane spinlock by QMutex
...
What was I thinking.
2015-10-24 04:38:00 +02:00
tux3
c0d8703368
Properly signal when we stop sending video
...
And properly handle toxav happily delivering things out of order,
like firing a video frame callback right after a callback setting the bitrate to 0,
when the peer sent these commands in the right order
2015-10-24 04:26:39 +02:00
tux3
8ebf07762f
VideoSurface: Release null frames
2015-10-24 03:30:42 +02:00
tux3
995fc4cdda
Reload audio devices on the fly from settings
2015-10-24 02:59:12 +02:00
tux3
aaf04a80db
Remove some debug output
2015-10-24 02:46:34 +02:00
tux3
8f7214f383
Re-enable buttons if calling failed
2015-10-24 02:40:56 +02:00
tux3
9163b73032
Refactor uses of playMono16Sound
2015-10-24 02:37:27 +02:00
tux3
aac5fb87e6
Add ringing sound for received calls
...
No sound for outgoing calls yet
2015-10-24 02:26:32 +02:00
tux3
1dc7e4cca5
Add 45s call ringing timeout
2015-10-24 01:53:10 +02:00
tux3
51ffd94e68
Fix possible nullptr deref in ~CameraSource
2015-10-23 20:30:22 +02:00
tux3
8d2ae07c9f
Revert "Delete CoreAV from the Core thread"
...
This reverts commit 1f758efc2f
.
2015-10-23 20:05:35 +02:00
tux3
ae243b2089
Delete CoreAV's timer from the CoreAV thread
2015-10-23 20:05:30 +02:00
tux3
1f758efc2f
Delete CoreAV from the Core thread
...
Since it was created there
Fixes #2457
2015-10-23 19:42:39 +02:00
tux3
08bde698ca
Apply input volume to all audio channels
...
Fixes #2452
2015-10-23 19:27:27 +02:00
tux3
2d7c65efbb
Fix IPC::~IPC use after free of static log file
2015-10-23 19:21:37 +02:00
tux3
4d9aeeec39
Fix bitrate callback to match toxav update
2015-10-23 17:52:46 +02:00
tux3
6dc91b156a
Use actual mutexes for CameraSource
...
That homemade spinlock thing was insane, VTune says we were spending 1.5s spinning for no reason when openning a device for example
2015-10-23 17:52:46 +02:00
tux3
477554ffba
Clean up callback hell between AV UI and CoreAV
2015-10-23 17:52:46 +02:00
tux3
a505e06f83
Multithread CoreAV
...
This is a little less insane, gives an overall 2x speedup on debug builds video calls
2015-10-23 17:52:45 +02:00
tux3
41e0212f77
Cleanup UI/CoreAV interface
2015-10-23 17:52:45 +02:00
tux3
73a4f40744
Fix call start/call invite race condition
...
Would result in an assert failure
2015-10-23 17:52:45 +02:00
tux3
1db17ae1ec
Fix crash due to erase/remove typo
...
A race condition would result in trying to remove an element that didn't exist, and thus erasing end (undefined behavior) instead of erasing [end, end) (no-op)
2015-10-23 17:52:45 +02:00
tux3
f45256baf1
Implement group calls
2015-10-23 17:52:45 +02:00
tux3
6cbd507ca8
Clean up dead code in CoreAV
2015-10-23 17:39:08 +02:00
tux3
69b8a90277
Implement video calls
2015-10-23 17:39:08 +02:00
tux3
e0aa8dd4a2
Implement audio calls
2015-10-23 17:39:08 +02:00
tux3
2b888ddc05
Better data structure for tox calls
2015-10-23 17:19:16 +02:00
tux3
512dc8de2d
Implement basic call logic
...
We can now make New AV calls, but without any audio/video. Just opening a link.
2015-10-23 17:09:53 +02:00
tux3
dbbc702c60
Strip out old AV code
2015-10-23 17:02:01 +02:00
tux3
bcca4537d5
Merge branch 'pr2132' into unsigned
2015-10-23 16:21:06 +02:00
agilob
5e12c76ecd
change default quit icon in tray menu
2015-10-23 16:21:05 +02:00
agilob
f2866ecc44
remove unused code, better logging for systray, removed KDE5 from enum
2015-10-23 16:21:05 +02:00
agilob
4df5c81f09
use plaintext label for username and status in header
2015-10-23 16:21:05 +02:00
agilob
7d579faf47
add logout action to tray menu
2015-10-23 16:21:05 +02:00
agilob
d6d5fd1c33
add quit role to quit action in trayicon
2015-10-23 16:21:05 +02:00
agilob
a97a91a7be
core review changes - formatting
2015-10-23 16:21:05 +02:00
agilob
7d8e0644ce
remove dependency injection from systemtrayicon
...
as it was used as experiment only
fix compilation warning about unchecked switch case
2015-10-23 16:21:05 +02:00
agilob
8c4d58f391
fix icon scaling on gnome3 by scaling icons down
2015-10-23 16:21:04 +02:00
agilob
521b55f776
use Qt backend of KDE5
...
commit fixes problem with usage of GTK3 fallback menu action used on KDE5, probably to a bug in status notifier
- allows using Qt backend on KDE5 and other plasma related env.
- icon in tray menu and tray icon are loaded from svg, their size is not limited to 50px now
- plasma adds extra actionmenu to tray so quit was renamed to exit
- exit action usues system-default icon for quit and system default keyboard shourtcut to close qtox
2015-10-23 16:21:04 +02:00
tux3
b69f8425c6
Fix qTox on OSX, closes #2447
2015-10-23 15:21:47 +02:00
tux3
1f61534841
Merge branch 'pr2343'
2015-10-23 15:20:58 +02:00
agilob
8185893ab5
Merge remote-tracking branch 'rowenstipe/master'
2015-10-22 07:12:33 +01:00
Rowen Stipe
e107de12c0
Compile on Mac
...
This set up added to current master compiles properly on Mac.
Includes pull #2436 fixes suggested by @antis81
2015-10-22 01:57:46 -04:00
Zetok Zalbavar
d2aa9441bf
Merge pull request #2364 from PKEv:fix_write_to_db
...
fix write to DB
2015-10-22 05:50:25 +01:00
Dmytro Shynkevych
b887072bc4
systemtrayicon: switched to manual memory management for pixmap data
2015-10-21 23:42:14 -04:00