1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
Commit Graph

2100 Commits

Author SHA1 Message Date
Nils Fenner
d8607324ce
cleanup AudioPrivate
* rename mAudioMeter -> audioMeter
* move class declaration below other classes
2015-12-20 09:45:43 +01:00
Nils Fenner
ace3662757
further improved audio metering
Give qTox time to do more important things -> do not measure with 100%.
2015-12-20 09:45:43 +01:00
Nils Fenner
535bb212f5
make use of QThread::requestInterruption 2015-12-20 09:45:43 +01:00
Nils Fenner
02f5f0a391
remove obsolete include of audio.h 2015-12-20 09:45:43 +01:00
Nils Fenner
c39138a65d
lock mutex also on start/stop audio loop playback 2015-12-20 09:45:43 +01:00
Nils Fenner
08c43d0b83
cleanup OpenAL compatibility code in audio class 2015-12-20 09:45:43 +01:00
Nils Fenner
a1b87194b8
fix #2504
We need to filter samples * channels; also cleaned up data types
2015-12-20 09:45:43 +01:00
Nils Fenner
44d1c6fe74
[WIP] implement threaded level meter for input level
Issues:
1. Using 100% processor.
2. Temporary silences an active call -> reactivate after widget hide.

Still greatly improves metering audio data, removing "read buffer" errors.
2015-12-20 09:45:43 +01:00
Nils Fenner
cbf0f2e7e0
draw the audio gain level with love 2015-12-20 09:45:43 +01:00
Nils Fenner
5805c8c2bf
improved code for non-blocking audio player
Instead relying on hardcoded "d->alMainSource", we bind to the given OpenAL source instead.
2015-12-20 09:45:43 +01:00
Nils Fenner
67fbee8868
use qstring for path when playing audio file 2015-12-20 09:45:43 +01:00
Nils Fenner
b44ef6c596
introduce a non-blocking AudioPlayer
Also moved private stuff to private class.
2015-12-20 09:45:43 +01:00
Nils Fenner
1fb9bce78c
move audio class to thread before starting 2015-12-20 09:45:22 +01:00
Nils Fenner
bb7d2a72b7
privatized audio interface 2015-12-20 09:45:22 +01:00
Nils Fenner
c23cb0043f
implement actual audio in/out subscription management 2015-12-20 09:42:14 +01:00
Nils Fenner
137eca86d6
use single mutex for audio resource locking 2015-12-20 09:42:04 +01:00
Nils Fenner
9627f45014
don't extra-subscribe audio gain metering widget 2015-12-20 09:42:04 +01:00
Nils Fenner
68e7aef916
privatized open/close audio devices 2015-12-20 09:42:04 +01:00
Nils Fenner
f6c09104e4
fix noise (clipping) while (re-)initializing in/out audio device 2015-12-20 09:40:57 +01:00
Nils Fenner
d233c6f699
cleanup audio out device on error after open 2015-12-20 09:40:57 +01:00
Nils Fenner
d631ddbc86
cleanup close audio out device 2015-12-20 09:40:57 +01:00
Nils Fenner
872be36225
un-/subscribe audio in/out in AV-Settings form 2015-12-20 09:40:57 +01:00
Nils Fenner
e7f666be77
un-/subscribe audio in/out in tox-call 2015-12-20 09:40:57 +01:00
Nils Fenner
32bc99fb38
cleanup reinitialization of changed audio in/out 2015-12-20 09:40:57 +01:00
Nils Fenner
ad6e0a85f5
add method to reinit audio in/out 2015-12-20 09:40:57 +01:00
Nils Fenner
7b98f2a4a0
cleanup close audio device 2015-12-20 09:40:57 +01:00
Nils Fenner
efda47a226
close audio output in destructor 2015-12-20 09:40:57 +01:00
Nils Fenner
c540faf271
add method to un-/subscribe to audio output as well 2015-12-20 09:40:57 +01:00
Nils Fenner
e8a4f6511d
use internal methods to open in/out audio devices 2015-12-20 09:40:57 +01:00
Nils Fenner
c5f4ceee6b
fix Audio::subscribeInput
Audio input/output device will only be opened, if not initialized already.
2015-12-20 09:40:57 +01:00
Nils Fenner
bde042ba3a
remove unused include and forward declarations 2015-12-20 09:40:57 +01:00
Nils Fenner
2ce92be94b
do not close output in unsubscribeInput and cleanup input internally instead 2015-12-20 09:40:57 +01:00
Nils Fenner
26fc424986
use internal cleanup methods to close in-/output devices 2015-12-20 09:40:57 +01:00
Nils Fenner
e2966b1457
open output device on "subscribeInput" only when not already opened 2015-12-20 09:40:57 +01:00
Nils Fenner
46b3ba2631
remove obsolete if 2015-12-20 09:40:57 +01:00
tux3
2b8200aa30
Fix audio timers started from wrong thread
This timer never actually worked
2015-12-19 17:07:19 +01:00
tux3
a0645d5cba
Fix #2700 2015-12-19 16:51:15 +01:00
tux3
40ddf81fd1
Instead of saving empty files, delete empty avatars 2015-12-19 16:43:09 +01:00
tux3
cbe8104576
Fix bad handling of empty avatars
Fixes #2694
2015-12-19 16:28:57 +01:00
tux3
698144c803
Fix some RawDatabase interface comments 2015-12-19 05:50:41 +01:00
tux3
8adb40d09f
Minor database fixes 2015-12-19 05:47:35 +01:00
tux3
489016f358
Fix #2439 2015-12-19 05:00:23 +01:00
tux3
9b9fa13636
Change column order when filling peer cache
A minor detail, but worth it.
2015-12-19 04:42:55 +01:00
tux3
9762839b78
Fix batches bigger than limit on import 2015-12-19 04:40:31 +01:00
tux3
8f06dfe254
Revert "Always offer avatars to friend who come online"
This reverts commit e30fb4d919.
2015-12-19 04:20:05 +01:00
tux3
b5cdfb3dce
Implement new SQLCipher based database and history
qTox will automatically import the old history on startup.

This new database code is much more robust.
It is very resilient and will not corrupt or disappear after a crash or
power failure, unlike the old code.
The on-disk database format is also much more compact now.

The database sync option in the advanced settings has been removed,
we know run many database operations asynchronously so performance
should not be a problem anymore, but we always ensure resiliency
in case of abrupt termination, so there is no tradeoff anymore.
2015-12-19 04:17:28 +01:00
tux3
e286f9673c
Fix use after free of NetCamView
Someone was connecting a singal to a lambda capturing this, and never disconnecting it in the destructor. Capturing this is DANGEROUS, kids, don't do this at home.
2015-12-15 21:19:18 +01:00
tux3
af59b5b45a
Fix IPC not taking ownership after crash
In case a previous instance crashed, we were trying to activate the current owner before even checking if it was still alive, this resulted in qTox needing to be restarted twice after a crash.
2015-12-15 21:06:55 +01:00
tux3
9cf0cbde6b
Fix avatar deletion not visible 2015-12-15 20:59:09 +01:00
tux3
db2dbf459b
Merge branch 'pr2689' 2015-12-15 19:54:10 +01:00
tux3
0c2f70eb7e
Merge branch 'pr2688' 2015-12-15 19:48:29 +01:00
tux3
10673640ea
Fix #2408 2015-12-15 19:31:26 +01:00
tux3
ab8220c2cf
Remove stale TODO 2015-12-15 19:20:34 +01:00
tux3
4e1029808b
Remove useless TODO 2015-12-15 19:09:28 +01:00
tux3
cbade4bae6
Fix tiny memory leak on startup 2015-12-15 19:08:59 +01:00
rku
8231a2b1ae Support for theming qTox tray and window icons
This patch adds ability to override qTox window and tray icons with ones from user's desktop theme. Some people prefer keeping tray icons consistent to achieve best looks.

Following theme icons used:
* qtox: general window icon which is also used in taskbar
* qtox-online, qtox-offline, qtox-busy, qtox-away, qtox-invisible, qtox-event: tray icons

If theme icon is not available then default built-in icon will be used.
2015-12-15 19:42:23 +02:00
rku
5cb5f2e367 Focus current chat widget text input when window is activated or empty window space clicked. 2015-12-15 19:31:45 +02:00
rku
63f7dee6cf Blink taskbar icon and window icon only when window is inactive. 2015-12-15 19:03:05 +02:00
tux3
63644050f3
Fix #2683
There is still an issue with the history keeping the old password, though
2015-12-14 23:27:12 +01:00
Jacob Henner
a405ceca9d Fixes #2631: Automatically select capture device. 2015-12-14 05:09:34 -05:00
tux3
61e3b7f5a0
Mark 'update text' not translatable
Plus some automatic edits Qt Designer decided to make
2015-12-12 23:29:36 +01:00
tux3
4e715f5054
Show correct progress when resuming update download
If you restart qTox in the middle of downloading an update, it would continue to download the update correctly but the progress bar would go from 0 to 50% instead of resuming from 50 to 100%
2015-12-12 20:12:57 +01:00
tux3
c32e0e9f1b
Check updates by default on new profiles
Fixes #2653
2015-12-12 18:37:37 +01:00
tux3
a47e81d227 Fix crash if autoupdate runs on exit 2015-12-12 15:56:00 +01:00
tux3
9408219443
Don't try to update without the updater binary 2015-12-12 00:14:32 +01:00
tux3
1f88312a01
Fetch windows updates over HTTPS 2015-12-11 22:58:55 +01:00
tux3
18484cb950
Fix Unity systray compile error
Thanks to @aszinovyev
2015-12-11 13:32:26 +01:00
tux3
f0f49e79f0
Merge branch 'pr2586' 2015-12-11 02:45:10 +01:00
tux3
31e62cfc5c
Fix loopback capture audio code 2015-12-10 22:04:40 +01:00
tux3
dc5cd990b6
Remove some Windows debug code 2015-12-10 21:07:38 +01:00
tux3
685dee62d0
Merge remote-tracking branch 'tux3/updater' 2015-12-10 20:52:54 +01:00
tux3
9ee061b53a
Merge branch 'pr2641' 2015-12-10 20:45:26 +01:00
tux3
34fc580a5a
Revert "minor: removed obsolete virtual in GenericForm destructor"
This reverts commit 25727425e2.
2015-12-10 20:41:28 +01:00
tux3
d67e6c7449 Improve integrated update code to match the rest
We're doing updates over HTTP until we get a domain name and a cert, but
this is not at all an issue since updates are still signed and checked.
2015-12-10 18:46:07 +01:00
Anton Batenev
656696ebcb Add alext.h to audio.h
ALC_ALL_DEVICES_SPECIFIER may be defined in different headers of
libopenal (alext.h < 1.14 and alc.h >= 1.14). Seems there is no
harm in always include both.

Related commit is: @1d9e89f
2015-12-10 13:34:40 +03:00
Nils Fenner
25727425e2
minor: removed obsolete virtual in GenericForm destructor 2015-12-10 07:01:43 +01:00
tux3
f13eba1a9c Dust off windows updater code 2015-12-10 04:37:07 +01:00
tux3
ef019a9ae3
Update windows update keys 2015-12-10 00:05:07 +01:00
tux3
d2598abc8c
Update windows update-server hostname 2015-12-10 00:03:11 +01:00
tux3
c42d668032
Fix typo in autoupdate 2015-12-09 13:34:02 +01:00
tux3
3317e3b8e3
Update updater version and Windows server 2015-12-09 02:14:19 +01:00
tux3
e30fb4d919
Always offer avatars to friend who come online
This avoids problems with friends who rarely restarts their client. The overhead of sending a file transfer request that gets rejected should be negligible
2015-12-08 23:41:21 +01:00
tux3
981588d630
Fix some avatars saved with the wrong name 2015-12-08 23:10:15 +01:00
tux3
9905042434
Fix wrong word in copypasted log message 2015-12-08 22:13:28 +01:00
Jacob Henner
1d9e89f318 qtox will now attempt to default to the first audio output device 2015-12-07 01:08:50 -05:00
tux3
94a6df47cc
Update avatar encryption when changing password 2015-12-05 22:35:16 +01:00
tux3
45ac45c019
Create avatars directory on the fly 2015-12-05 22:01:36 +01:00
tux3
2396109a7e
Encrypt avatar for encryped profiles
Fixes #2583

Fixes #2546
2015-12-05 20:07:59 +01:00
tux3
b39f3eacb0
Clean unused getIDString() function 2015-12-05 19:09:20 +01:00
tux3
25ed3d4fba
Fix avatars for encrypted profiles
WARNING: Note that avatars for encrypted profiles are currently stored unencrypted!
2015-12-05 19:08:28 +01:00
tux3
05c02cee5d
Merge branch 'pr2547' 2015-12-05 15:32:57 +01:00
agilob
84814e28e3
Set widget as parent for AboutUser window to fix style inheriting 2015-12-05 14:18:43 +00:00
agilob
56ae9e657f
Hide label and list of aliases in aboutuser 2015-12-05 12:19:05 +00:00
agilob
e6504f2d46
Support removing history with user in about window 2015-12-05 12:14:31 +00:00
tux3
a6bbd31b12
Retry sending audio frames on sync/lock error 2015-12-05 03:22:00 +01:00
tux3
333d10e6d5
Log type of audio send error 2015-12-05 02:35:11 +01:00
tux3
fe3fa2f751
Revoke updater signing keys
When we build the updater v2, we'll ship new keys for Windows.
2015-12-04 21:36:33 +01:00
tux3
b1f8d3f912
Fix attempt for #2438 2015-12-04 20:35:50 +01:00
tux3
7f5f807bde
Fix filter audio
Fixes #2504

Fixes #2517

Fixes #1565
2015-12-04 18:20:47 +01:00
tux3
49d11549b9
Fix call duration label after 1 hour
Fixes #2617
2015-12-04 15:51:10 +01:00