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
Roland Rossgotterer
2c1067b27e
[AFV] Update CEqualizerSampleProvider to VHF 4.0
2019-10-11 19:00:24 +01:00
Klaus Basan
0e4c1f958b
Ref T730, some adjustments for CNotification for testing with WSAPI
2019-10-11 19:00:24 +01:00
Klaus Basan
bde7baf84d
Ref T730, style
2019-10-11 19:00:21 +01:00
Klaus Basan
c3684a2f8c
Ref T731, added namespace for utility functions
2019-10-11 19:00:19 +01:00
Klaus Basan
a076705d77
Ref T731, changed Samples to use settings and new file names
2019-10-11 19:00:18 +01:00
Klaus Basan
34848ddd46
Ref T730, notification player, use latest files
2019-10-11 19:00:17 +01:00
Klaus Basan
9d4a821389
Ref T731, CResourceSound fixed
...
* avoid memory leak, wav file is only locally needed
* remember file name
2019-10-11 19:00:17 +01:00
Klaus Basan
e33e06b21e
Ref T730, style
2019-10-11 19:00:15 +01:00
Klaus Basan
bed49ff072
Ref T730, renamed sound files
2019-10-11 19:00:15 +01:00
Klaus Basan
6a9109bf8f
Ref T730, style
2019-10-11 19:00:14 +01:00
Roland Rossgotterer
9f497c1b60
[AFV] Handle stereo in- and output devices
2019-10-11 19:00:05 +01:00
Klaus Basan
2fed1e7e99
Ref T730, style
2019-10-11 18:59:59 +01:00
Klaus Basan
7c765654c0
Ref T730, style
...
* avoid float, use double
* const correctness
* use fuzzyCompare for float/double
2019-10-11 18:59:55 +01:00
Klaus Basan
99edc9cb13
Ref T730, code style, adding namespaces
2019-10-11 18:59:45 +01:00
Roland Rossgotterer
8d1eea25b1
Implement VolumeSampleProvider to gain in and output
...
fixup! Implement VolumeSampleProvider to gain in and output
2019-10-11 18:59:12 +01:00
Klaus Basan
d944d0f6ee
Do not play QSoundEffect while it is still playing
...
* added m_playEffect as flag
* hooked up signals to reset the flags
2019-10-11 18:59:10 +01:00
Klaus Basan
55f70a794e
Style
2019-10-11 18:59:10 +01:00
Klaus Basan
b3cceaa76b
Ref T739, style
2019-10-11 18:59:09 +01:00
Klaus Basan
34d1e8268c
Ref T730, OPUS de/encoder namespace
2019-10-11 18:59:03 +01:00
Klaus Basan
9809acd98c
Ref T730, fixed some UTF-8 encoding issues
2019-10-11 18:59:03 +01:00
Klaus Basan
384aa3ce19
Ref T730, namespace for BlackCore::Afv
...
* added namespace
* removed some *.pri files and added files to blackcore.pro
* added copyright etc.
2019-10-11 18:59:02 +01:00
Klaus Basan
b7ad04df45
[externals] Ref T730, updated externals
2019-10-11 18:59:01 +01:00
Roland Rossgotterer
b5a2f2ad13
AFV initial commit
2019-10-11 18:58:47 +01:00
Klaus Basan
e4b0655129
Ref T644, allow to fetch notifications sounds from an arbitrary directory
...
* added settings
* utility functions
2019-05-13 11:20:48 +02:00
Klaus Basan
254e21ab1f
Fix for QSoundEffect(qaudio): Error decoding source
2019-04-11 22:12:02 +01:00
Klaus Basan
77a898c9ec
Utility functions for notification sounds
2019-04-11 22:11:58 +01:00
Roland Rossgotterer
37f88841cf
Convert floating-point WAV files to PCM
2019-04-11 22:11:51 +01:00
Roland Rossgotterer
d5b3a336dd
Move Notification sounds into CNotificationPlayer
2019-04-11 22:11:50 +01:00
Roland Rossgotterer
77a8c46790
Use CWorker to play sound in background
2019-04-11 22:11:50 +01:00