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

2151 Commits

Author SHA1 Message Date
tux3
6425448196
Implement the playMono16Sound API sanely
This API used to start *A NEW THREAD* for every sound played!!

Now we simply have a dedicated source and buffer to play those sounds, we use a timer to cleanup the buffer 50ms after the sound is done playing (if a new sound hasn't started in the meantime)
2016-01-23 16:45:25 +01:00
tux3
f57bf331d6
Fix avform mic slider enabling 2016-01-23 16:45:25 +01:00
tux3
ce2f8fd1d5
Cleanup and improve audio input
We now subscribe to an event and wait for frames when capturing audio
input, the big avdantage is that we only have to fetch the frames from
the hardware once, and we don't need to cache anything.
The frames are simply dispatched to the client's callbacks immediately.

Also removes some outdated ifdefs that did not apply anymore.
2016-01-23 16:45:25 +01:00
tux3
0a1833a74b
Un-pimpl
This makes the code much shorter and easier to follow, especially since AudioPrivate was right in the middle of audio.cpp, awkwardly splitting things in two

Compile times should not be substantially affected since we just need to include the OpenAL C headers
2016-01-23 16:45:25 +01:00
tux3
fb68d3750c
Cleanup mic feedback related code
It simply doesn't work, so let's do it right later
2016-01-23 16:45:25 +01:00
Nils Fenner
ffbd8fba91
do not warn, when requesting the volume from an invalid audio device
Instead, we return a defined value (0.0) and keep quiet otherwise.
2016-01-23 16:45:25 +01:00
Nils Fenner
da6bed19b2
enable volume sliders only, if a valid audio device is selected 2016-01-23 16:45:25 +01:00
Nils Fenner
f4f77af071
add "play test sound" button, while changing volume 2016-01-23 16:45:25 +01:00
Nils Fenner
6f7df25f4a
initialize gain/volume after initialization of audio in/out device
The gain/volume values are now applied to the settings once, when releasing the slider instead of continuously.
2016-01-23 16:45:25 +01:00
Nils Fenner
719def932b
remove unneeded "setCurrentIndex(-1)", when reading audio in/out device lists
The combo boxes current index is set to the correct value at end of initialization loop.
2016-01-23 16:45:25 +01:00
Nils Fenner
9b5c799742
fix getter for audio master output volume
Return the ALListener's gain as "master" volume.
2016-01-23 16:45:25 +01:00
Nils Fenner
086e35d106
use utf-8 strings for audio device specifiers 2016-01-23 16:45:25 +01:00
Nils Fenner
e1f7e553ab
initialize volume sliders in av-settings ui at the right place 2016-01-23 16:45:25 +01:00
Nils Fenner
7d547b10eb
major changes to audio volume control
* use the ALListener object for master volume control
* initialize audio sources
* audio volumes are now expressed as percentage values between 0 and 1 to the public API
* removed artificial amplification of input samples
* removed invalid audio source generation in group calls
* minor: fixed gain slider max. value to 100 percent
2016-01-23 16:45:25 +01:00
Nils Fenner
1fb4d0d9f3
clean up audio settings ui 2016-01-23 16:45:25 +01:00
Nils Fenner
a6024b85ea
initialize a subscribed audio source with "master" volume instead of "max." 2016-01-23 16:45:25 +01:00
Nils Fenner
b3926c8904
change method description of Audio::setOutputVolume to what it should do 2016-01-23 16:45:25 +01:00
tux3
67620f9661
Fix #2796 2016-01-22 02:46:06 +01:00
tux3
e93c350621
Fix margins of file transfer widget
Fixes #1180
2016-01-21 17:11:37 +01:00
tux3
2654b6cbcd
Safer casts in Core::getGroupPeerNames 2016-01-21 16:51:25 +01:00
tux3
5e11d6c9c8
Merge branch 'pr2834' 2016-01-21 16:03:15 +01:00
apprb
d02348c1f8
Fix #2774: Client freezes after attempt to start group audio 2016-01-21 20:52:57 +06:00
tux3
5693d3ee86
Revert "2x faster Text::regenerate"
This reverts commit 24bccb7bdd.
2016-01-21 15:44:38 +01:00
tux3
12763ab54e
Some english fixes in followup to #2825 2016-01-21 14:56:14 +01:00
tux3
8253e1e395
Fix #1409: Don't save core if nothing really changed 2016-01-21 08:04:46 +01:00
tux3
94f3e6d6e4
Async smiley loading for fast start
This can be a ~1s win on startup time with a HDD, now we load and cache the smileys in the background, blocking only if we try to use them while they are still loading
2016-01-21 07:47:15 +01:00
tux3
24bccb7bdd
2x faster Text::regenerate
Hopefully without breaking anything substantial
2016-01-21 07:13:10 +01:00
tux3
217716184b
Speedup loading history
By not marking everything as not sent then doing a second pass that marks sent things as sent, redoing the layout for every item...
2016-01-21 06:19:30 +01:00
tux3
48210e0372
Merge branch 'fix-hline-864' 2016-01-21 05:36:52 +01:00
tux3
70809e877e
Fix #1434: Groupchat call button color glitch
Thanks to @forteGIT for finding the bug
2016-01-21 05:28:47 +01:00
tux3
f0e29a1d46
Fix #1180: Oversized file transfer bubbles 2016-01-21 05:19:30 +01:00
tux3
963e8996fb
Fix #1016: QSettings UTF-8 issues 2016-01-21 04:59:20 +01:00
tux3
e45172ea1b
Fix #944: Allow transparent avatars 2016-01-21 04:47:26 +01:00
tux3
9e35a73daf
Fix #864 visual issue 2016-01-21 04:26:17 +01:00
tux3
6cc36a969a
Fix capitalization of Settings::loadpersonal()
My bad, thanks to @antis81 for noticing
2016-01-21 03:00:46 +01:00
tux3
7211b3d5f8
Merge branch 'pr2830' 2016-01-21 02:44:32 +01:00
tux3
ff6725fe2a
Fix #2194: Create QApplication before logging 2016-01-21 02:41:13 +01:00
sudden6
d4b2038bbb stop cpus from burning on slow networks 2016-01-21 02:35:06 +01:00
Andrew Morgan
3015be87ff Removed inconsistancies with logFileDir and handle error on removal of old log file. 2016-01-20 17:22:43 -08:00
Andrew Morgan
93991368c6 Added log rotation functionality.
This is to prevent log files from ever exceeding a limit of 1MB each. Only the current and one other log file are kept, giving hopefully enough history for any neccessary debugging.
2016-01-20 16:32:24 -08:00
sudden6
641486d507 Simpliefy code, return early on error 2016-01-21 01:11:47 +01:00
sudden6
789eeec777 fix toxme error handling
fixes a bug in Toxme::deleteAddress returning a QNetworkReply::NetworkError
adds some warning messages
2016-01-21 00:29:54 +01:00
tux3
19582c1c69
Merge branch 'pr2821' 2016-01-20 17:01:23 +01:00
tux3
e93c1baa6c
Merge branch 'pr2818' 2016-01-20 16:58:16 +01:00
tux3
529299c7ba
Merge branch 'pr2822' 2016-01-20 14:33:17 +01:00
Rowen Stipe
df584531c8 Enable OS X Auto-run at login 2016-01-20 05:17:03 -05:00
Rowen Stipe
a05310e155 Added case for /Application Support/Tox already existing
I tried to get it done without bash… But this was the simplest method
that works for this special case scenerio.
2016-01-20 01:22:25 -05:00
tux3
aef447d7c7
Have v4l2 read MJPEG video by default
Fixes #2826

Thanks to @seanlaguna for finding a fix
2016-01-20 00:00:03 +01:00
tux3
f79bb24024
Fix ODR violation in SettingsSerializer
Fixes #2173

Also fixes some compilation errors in some situations
2016-01-19 16:28:49 +01:00
Rowen Stipe
27fda2e579 Added basic migration compatibility code.
This code works if the ~/Library/Application Support/Tox directory does
not already exist.
2016-01-19 06:36:15 -05:00