Commit Graph

166 Commits

Author SHA1 Message Date
Klaus Basan
5718f95819 Tone player "myself" guard 2020-06-12 18:42:38 +01:00
Klaus Basan
1266ca53ce [experimental, audio] try to avoid taskbar MIC flickering
* sometimes the MIC icon in the windows task bar is flickering (on/off)
* this workaround tries to avoid this
2020-06-12 18:42:25 +01:00
Mat Sutcliffe
1f0c65135d Use qmake $$files function to match wildcards
See https://bugreports.qt.io/browse/QTBUG-81003
2020-01-07 19:57:24 +00:00
Klaus Basan
091fa5f338 [Audio] Get/set audio device volume (this is the device's value, NOT the logical AFV value) 2020-01-07 19:57:23 +00:00
Klaus Basan
72334af1e8 [Notification] Make sure no sound is stopped in QTimer::singleShot which is no longer playing 2020-01-07 19:57:20 +00:00
Klaus Basan
a9a772c929 [AFV] Ref T739, audio context default device handling 2020-01-07 19:05:42 +00:00
Klaus Basan
aed1103ce6 [AFV] Ref T739, default device handling
* renamed some device list functions
* improved default device handling
2020-01-07 19:05:42 +00:00
Klaus Basan
767aab6592 Style, Doxygen 2019-10-23 00:38:27 +02:00
Klaus Basan
003788c89b Style 2019-10-23 00:38:26 +02:00
Klaus Basan
88ff7ff758 [AFV] Ref T739, added ATC tuned in/out 2019-10-18 22:51:17 +02:00
Klaus Basan
7cfcc61bd3 Doxygen/style, test for div/0 2019-10-18 16:35:39 +02:00
Klaus Basan
aaa5fc259a Doxygen 2019-10-18 12:10:55 +02:00
Klaus Basan
59baf237cc [AFV] Ref T730, added notification files for "station tuned in"
Those will be a replacement for the "joined voice room"
2019-10-18 10:36:25 +02:00
Klaus Basan
1fe2109a89 [AFV] Ref T730, allow to set AFV notifcation sounds in AFV settings 2019-10-18 10:36:25 +02:00
Klaus Basan
3a469d4654 [AFV] Ref T730, bring back swift PTT click sounds 2019-10-18 10:36:25 +02:00
Klaus Basan
9959b12b9d [AFV] Ref T739, encapsulate defaultXXDevice calls
* based on bug: https://bugreports.qt.io/plugins/servlet/mobile#issue/QTBUG-55631
* approach: avoid calls to default device (did not work out)
* kept encapsulation as it easier allows to text/apply workarounds
2019-10-18 10:36:25 +02:00
Klaus Basan
79f8e1b959 [AFV] Ref T739, CPPCheck fixes 2019-10-18 10:36:24 +02:00
Klaus Basan
de75cdc214 [AFV] Ref T730 incorporated MS fixes
see https://discordapp.com/channels/539048679160676382/623947987822837779/633025547999510530
2019-10-16 17:40:32 +02:00
Klaus Basan
fc43199c32 [AFV] Ref T730, CPPCheck (e.g. virtual function call in ctor) 2019-10-16 17:40:32 +02:00
Klaus Basan
f4b22b839a [AFV] Ref T730, utility functions to log QAudioFromat 2019-10-13 16:47:42 +02:00
Klaus Basan
e455d153ee [AFV] Ref T730, make sure device is "valid" 2019-10-13 16:47:40 +02:00
Klaus Basan
ee1456ba37 [AFV} Ref T730, fixed CPPCheck issues and Artistic style applied 2019-10-13 16:47:40 +02:00
Klaus Basan
a9166d4e4c [AFV] Ref T730, improved volume handling
* for the asymmetric output volume -60/18dB, make sure that normalized 50 means 0dB
* slider is centered
* return value if value for volume was changed
2019-10-13 16:47:40 +02:00
Mat Sutcliffe
a726c7709e [AFV] Fixed compiler warning 2019-10-13 00:16:07 +02:00
Klaus Basan
7e22318a6e [AFV] Ref T730, made OPUS decoder not copyable/assignable (avoid resource conflicts) 2019-10-11 19:40:42 +01:00
Roland Rossgotterer
11ee2413b5 Doxygen 2019-10-11 19:40:42 +01:00
Klaus Basan
30baa12a86 Ref T730, CPP check issues fixed 2019-10-11 19:40:41 +01:00
Roland Rossgotterer
30d764d72c Style 2019-10-11 19:00:51 +01:00
Roland Rossgotterer
8367559713 Doxygen 2019-10-11 19:00:51 +01:00
Klaus Basan
713d2ee626 Ref T730, Ref T739 avoid timer stopping issue during shutdown
* use timer with parent
* avoid QObject::~QObject: Timers cannot be stopped from another thread
* see https://discordapp.com/channels/539048679160676382/623947987822837779/630521007056224286
2019-10-11 19:00:44 +01:00
Klaus Basan
857e3581b0 Ref T730, style
* set object name
* use m_XYZ member name
2019-10-11 19:00:43 +01:00
Klaus Basan
401c89aa63 Ref T730, style and log messages 2019-10-11 19:00:42 +01:00
Klaus Basan
4dbe1c49c8 Ref T730, namespace BiQuadFilter 2019-10-11 19:00:41 +01:00
Klaus Basan
1c0dc8b34c Ref T730, avoid math DEFINE warnings if values are already defined 2019-10-11 19:00:41 +01:00
Roland Rossgotterer
b8661918d7 [AFV] Finalize blocking tone
Blocking tone is emitted if more than one station is received
in parallel.
2019-10-11 19:00:40 +01:00
Mat Sutcliffe
b90855d393 [AFV] Fixed GCC and Clang errors 2019-10-11 19:00:40 +01:00
Roland Rossgotterer
d3a1eb1d60 [AFV] First version of threaded CAfvClient 2019-10-11 19:00:38 +01:00
Klaus Basan
fee8852762 Ref T730, increase buffer size to avoid buffer issues (temp workaround)
see https://discordapp.com/channels/539048679160676382/623947987822837779/628874110973247499
2019-10-11 19:00:32 +01:00
Klaus Basan
89725c3bb4 Ref T730, also return an output device if there is no exact match 2019-10-11 19:00:32 +01:00
Klaus Basan
5d9ea83b93 Ref T730, improved threaded tone player
* allow to re-init and get device info
* mutable mutex
2019-10-11 19:00:32 +01:00
Roland Rossgotterer
90e87835fc [AFV] Select audio device based on situational need
For AFV itself, a low latency device is required (which on Windows most likely will pick WASAPI).
For notifications and effects, the most compatible device is required (which on Windows will most likely fall back to QWindowsAudio).
2019-10-11 19:00:32 +01:00
Roland Rossgotterer
a2e3700739 Replace QAudioDeviceInfo with CAudioDeviceInfo where possible
QAudioDeviceInfo is a low level technical class, which shouldn't be used in higher level code. Remove it from all APIs
where possible and just create it in order to interface with QAudio
2019-10-11 19:00:31 +01:00
Roland Rossgotterer
33d125c121 [AFV] Remove unnecessary functions 2019-10-11 19:00:31 +01:00
Roland Rossgotterer
ac833910c8 [AFV] Optimize loading and sharing of CResourceSound objects
- Loading is now happening in a worker to not block the main thhread
- The internal data is shared between all instances of the class.
2019-10-11 19:00:30 +01:00
Klaus Basan
b65b2caa76 Ref T730, use m_deviceInfo.nearestFormat (makes player working with WSAPI plugin) 2019-10-11 19:00:30 +01:00
Klaus Basan
6111c428e9 Ref T730, style and removed "old voice code" 2019-10-11 19:00:30 +01:00
Roland Rossgotterer
240df93406 [AFV] Change output format and processing to 32 bit float
32 bit float is what is used in C# reference and has a much higher
dynamic range. 16 bit integer was clipping very often with all the VHF
simulation applied.
2019-10-11 19:00:29 +01:00
Roland Rossgotterer
ec68e756cd [AFV] Port NAudio BiQuadFilter 2019-10-11 19:00:28 +01:00
Roland Rossgotterer
574370579d [AFV] Apply BiQuadFilters on float samples 2019-10-11 19:00:28 +01:00
Roland Rossgotterer
1f2d4a10b1 [AFV] Add HF simulation 2019-10-11 19:00:27 +01:00