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

125 Commits

Author SHA1 Message Date
Alice Weigt
a06ad7048e feat(audio):OutgoingCallSound
Adds outgoing call sound when call is started
2017-06-14 15:19:30 -07:00
sudden6
a3b234e6dd
chore(formatting): run clang-format 2017-06-01 09:50:59 +02:00
sudden6
28c2298ad9
feat(audio): split the audio interface from the backend library
This paves the way to support multiple audio backends
2017-05-08 10:37:05 +02:00
sudden6
b68ad4ced2
feat(audio): don't use dynamic memory allocation and remove resource leak 2017-04-14 09:09:56 +02:00
sudden6
300ac12e3f
fix: silence warning by not using dynamic arrays on stack 2017-03-19 19:27:50 +01:00
Zetok Zalbavar
80f5de31b3
style: reformat current C++ codebase using clang-format 2017-02-26 11:52:45 +00:00
sudden6
39b473cc86
Merge pull request #3309
Nils Fenner (1):
      refactor(audio): remove obsolete signal "groupAudioPlayed"
2017-02-08 13:32:47 +01:00
Zetok Zalbavar
d4ac13dbf4
revert: "refactor: Added to include path and exclude it from all includes"
Revert needed, since otherwise there is no way to do automatic sorting
of includes.
Also reverted change to the docs, as leaving it would make incorrect
docs.

In case of conflicts, includes were sorted according to the coding
standards from #3839.

This reverts commit b4a9f04f92.
This reverts commit 5921122960.
2016-12-29 16:10:53 +00:00
Zetok Zalbavar
7b60a5dd36
chore: explicitly mention that copyright belongs to qTox contributors 2016-11-29 11:12:06 +00:00
Diadlo
b4a9f04f92
refactor: Added to include path and exclude it from all includes 2016-11-28 23:28:42 +03:00
Zetok Zalbavar
64bbc6cfbb
style: change postfix increment to prefix increment 2016-11-03 07:57:14 +00:00
Alice Weigt
244d1dc386 fix(audio): Clear audio buffer when ending audio loop 2016-10-26 02:20:50 -07:00
Diadlo
d674722118
Merge pull request #3755
Alice Weigt (1):
      fix(settings): Play test sound when user enables test sound
2016-10-09 14:55:45 +03:00
Alice Weigt
9b46cf6404 fix(settings): Play test sound when user enables test sound
Fixes #3735
2016-10-09 04:37:15 -07:00
Keegan Drake H.P
099d7d0ac6 style(audio): remove redundant checks in src/audio/audio.cpp
This change removes an unnecessary ternary expression from both
Audio::initInput and Audio::initOutput.
2016-10-06 04:26:06 -05:00
Keegan Drake H.P
af37fa7b20 fix(audio): keep the data pointed to by tmpDevName in scope
Fix the use after free in Audio::initInput and Audio::initOutput
by storing the buffer returned by QString::toUtf8 (which contains data
pointed to by tmpDevName) in an intermediate variable, preventing the
buffer from falling out of scope for the duration of the function.

Fixes #3786
2016-10-06 02:33:58 -05:00
Diadlo
72780e6c7a
docs(todo): Changed todo format 2016-08-19 00:20:24 +03:00
Diadlo
31d8e7eef0
docs: Replaced simple on doxygen tag 2016-08-19 00:20:23 +03:00
Diadlo
672744de96
docs(audio, video): Added leading stars 2016-08-19 00:20:23 +03:00
Nils Fenner
f00b9008e6
feat(settings): add notification signals for changed settings values
Makes changes to settings application wide transparent. The properties section is optional in theory, but comes in very handy, if we decide to access settings e.g. from within a script context.
2016-08-14 18:08:24 +02:00
Nils Fenner
018360887e
refactor(audio): remove obsolete signal "groupAudioPlayed" 2016-08-08 14:22:02 +02:00
Diadlo
29443040fb
docs(audio, video): Change comment style 2016-07-27 01:23:27 +03:00
Diadlo
2258748d28
style(audio, video): Style fixes 2016-07-13 01:54:37 +03:00
Nils Fenner
9694d6b6d4
fix(audio): actually disable the audio in/out device in settings, when selected
As esecially the "Disabled" text is translated, the audio device will change from "disabled" to "default", just by changing the language.

In contrast to video devices, an audio device is either always available, or sound will be disabled. So "Disabled" is the correct term to use here.
2016-07-01 10:41:41 +02:00
Nils Fenner
81df534c9a
refactor(audio): cleanup initialization of audio device lists
API:
* open default in/out device, when device name is empty
* move privatized code
* fix unsigned/signed conversion warnings

UI (settings):
* refactor: select audio devices by combobox index
2016-07-01 10:41:41 +02:00
Nils Fenner
bec635ad11
refactor(audio): cleanup initialization of audio device lists
* move private code
* fix unsigned/signed conversion warnings
2016-07-01 10:41:41 +02:00
Nils Fenner
792103f8b0
refactor(filter_audio): completely remove filter_audio dependency
The filter_audio API is not working for qTox/Tox and thus disabled by default via compiler switch. In current qTox UI, it is not configurable, even when this switch is enabled. According to issue #3194 the library is no longer maintained as well. I don't see any reason to keep it in qTox.
2016-06-04 22:12:27 +02:00
Nils Fenner
f72baa613f
feat(audio): add real gain control of the input device
The gain can be set now in dB values, providing acceptable results for a wide range of setups.

note: also introduces const-correctness and some minor cleanup.
2016-06-02 22:16:58 +02:00
Nils Fenner
356543ca3b
feat(audio): add (repair) support for group audio calls 2016-04-24 14:34:49 +02:00
tux3
c82e41ff6f
Properly ifdef filteraudio usage 2016-01-25 16:35:45 +01:00
tux3
9251f1f4ca
Fix #2854: Missing noexcept in Audio 2016-01-25 16:27:18 +01:00
Nils Fenner
26e7bde991
initialize OpenAL error stack 2016-01-23 16:45:25 +01:00
tux3
87c4907054
Remove redundant source init code 2016-01-23 16:45:25 +01:00
tux3
a2fbc277fc
Replace audio check macros by functions 2016-01-23 16:45:25 +01:00
tux3
6cad8d8fe9
Remove redundant check starting audio thread
Thanks to @antis81 for spotting it
2016-01-23 16:45:25 +01:00
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
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
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
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
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
apprb
d02348c1f8
Fix #2774: Client freezes after attempt to start group audio 2016-01-21 20:52:57 +06:00
Nils Fenner
82dfe0f704
fix audio singleton implementation 2016-01-09 13:12:39 +01:00
Nils Fenner
79ddbf7d02
open the first available audio in/out device as default, if specifier is empty 2015-12-28 12:06:22 +01:00
Nils Fenner
552155bd1f
Merge PR #2719 from antis81:fix_audio_subscriptions
* fix dangling audio output device
* do not resubscribe sid in copy constructor
2015-12-23 23:29:20 +01:00
Nils Fenner
19201dda8a
Merge pull request #2713 from antis81:newav_audio_cleanup 2015-12-20 23:10:03 +01:00
Nils Fenner
e73fd27d8b
fix: don't subscribe to in/out device when initialization failed 2015-12-20 09:45:43 +01:00