Klaus Basan
172fa1ddc8
Fix linker error with newer gcc versions
2020-01-07 19:57:21 +00:00
Klaus Basan
efee7968dc
[AFV] Using the aliased frequencies can be enabled/disabled
...
* flag
* "dot command"
* register audio "dot commands" for audio
2020-01-07 19:57:20 +00:00
Klaus Basan
881ec39043
[AFV] Fix aliased frequency handling
...
* ONLY use HF frequency if stations match and is closest station
* better log messages
2020-01-07 19:46:19 +00:00
Klaus Basan
53de0d56b9
Style
2020-01-07 19:46:17 +00:00
Klaus Basan
134c805990
[AFV] Ref T739, device info improvements
...
* registration
* use identifier in device info list
* propertyByIndex/compareByIndex
* unRegisterDevices
2020-01-07 19:46:15 +00:00
Klaus Basan
0fa9bcb520
Doxygen, style
2020-01-07 19:05:42 +00:00
Klaus Basan
52ce9f9205
[AFV] return aliased stations and use correct frequency
2020-01-07 19:05:42 +00:00
Klaus Basan
9447db00bc
[AFV] Ref T739, audio can now be disabled from UI
2020-01-07 19:05:41 +00:00
Klaus Basan
767b999330
[AFV] Ref T739, start/stop audio improvements
...
* signals
* "restart" without devices
2020-01-07 19:05:40 +00:00
Klaus Basan
a63fe0dc21
[AFV] Ref T739, unified callsign functions in CAfvClient
...
* improved CallsignSet from QStringList
* renamed the functions which just return a string
* added functions for CCallsignSet
2019-10-23 00:38:26 +02:00
Klaus Basan
be99911372
Style, minor adjustments
2019-10-23 00:38:26 +02:00
Klaus Basan
49272d3b1c
[AFV] Ref T739, use QMutex::Recursive to avoid deadlock in same thread
2019-10-23 00:38:25 +02:00
Klaus Basan
b88bdee405
[AFV] Ref T739, verify devices
2019-10-18 10:36:34 +02:00
Klaus Basan
a8c7575d9d
Style
2019-10-18 10:36:25 +02:00
Klaus Basan
f81fc31da6
[AFV] Ref T730, fetch settings in correct thread (i.e. context thread)
2019-10-18 10:36:25 +02:00
Klaus Basan
439f76c9bb
[AFV] Ref T730, extra lock for volume (less blocking)
2019-10-18 10:36:25 +02:00
Klaus Basan
f236b54084
Style
2019-10-18 10:36:24 +02:00
Roland Rossgotterer
1051cc5751
[AFV] Add fuzzy callsign matching before aliasing a HF station
...
# Conflicts:
# src/blackcore/afv/clients/afvclient.h
2019-10-18 10:36:24 +02:00
Roland Rossgotterer
2362e25593
[AFV] Add client version to API auth
2019-10-18 10:36:24 +02:00
Klaus Basan
f980fd02d5
[AFV] Ref T739, check if COM integration is used and make sure to use TX/RX defaults if NOT
...
There was a bug that COM integration was used although it was disabled
2019-10-18 10:36:24 +02:00
Klaus Basan
632a85d079
[AFV] changed AFV update rate to 20secs
2019-10-18 10:36:23 +02:00
Klaus Basan
a334b97ac6
[AFV] Ref T730, use callbacks for "connectTo", avoid EventLoop
...
* this is a pure asynchronous concept
* callbacks are called when network request "is done"
2019-10-16 17:40:33 +02:00
Klaus Basan
218c099456
[AFV] Ref T730, Ref T739, mutexes for some parts which still were NOT threadsafe
...
* connection object
* auto logoff if FSD terminates and voice client is still online
* "the server is full" is a good test case for the auto logoff,
FSD login fails, AFV login works, and needs to be terminated
IMPORTANT: using the mutex before login results in a situation where the EventLoop runs into a deadlock
See https://discordapp.com/channels/539048679160676382/623947987822837779/633338177922269224
2019-10-16 17:40:33 +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
af2fb4933d
[AFV] Ref T730, init in/out dB values - avoid issue with unitialized values
2019-10-13 19:49:19 +02:00
Klaus Basan
73f191619a
[AFV] Ref T730, renamed to COutput
2019-10-13 16:47:41 +02:00
Klaus Basan
0a24d80291
[AFV], Ref T730 only startAudio and stopAudio
...
* start audio restarts if devices change
* restart no longer needed
* stop normally is only needed at the end of the lifetime of CAfvClient
* signal: startAudio
2019-10-13 16:47:41 +02:00
Klaus Basan
541ce76fb6
[AFV] Ref T730, check for same device
2019-10-13 16:47:41 +02:00
Klaus Basan
10a64c0330
[AFV] Ref T730, do NOT stop audio when disconnecting from FSD
...
* only disconnect from AFV server
* keep position tmer alive (preset values)
2019-10-13 16:47:41 +02:00
Klaus Basan
3880de5e0c
[AFV] Ref T730, added graceful shutdown in AFV client itself
...
Also disconnect from network during "shutdown"
2019-10-13 16:47:40 +02:00
Klaus Basan
d2de52f818
[AFV] Ref T730, use CoInitializeEx on windows for threaded CAfvClient
2019-10-13 16:47:40 +02:00
Klaus Basan
fe81843a5a
[AFV] Ref T730, use BlackMisc::singleShot to call deferredInit() in correct thread
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
Roland Rossgotterer
be4d40ba7d
[AFV] Check client started in the correct thread
2019-10-12 13:30:00 +02:00
Mat Sutcliffe
b929eb442a
[AFV] CContextAudio::m_voiceClient is a raw pointer, and CAfvClient doesn't have a parent
2019-10-11 19:40:43 +01:00
Klaus Basan
f15674330f
[AFV] Ref T739, we are checking "connected" already, no need to check it again
2019-10-11 19:00:53 +01:00
Klaus Basan
e3ed71a919
Ref T739, minor fixes (mutex, "myself")
2019-10-11 19:00:53 +01:00
Roland Rossgotterer
01d144b528
[AFV] Hide AFV client behind context
2019-10-11 19:00:52 +01:00
Roland Rossgotterer
90e5400049
[AFV] Do not attempt to send if not connected
2019-10-11 19:00:52 +01:00
Klaus Basan
11a3fa873d
Ref T730, Ref T739, first implementation of "Mute" for CAfvClient
2019-10-11 19:00:51 +01:00
Klaus Basan
b632232566
Ref T730, fixed from "normalized value calculation"
2019-10-11 19:00:51 +01:00
Klaus Basan
966b261c0d
[AFV] Ref T730, reverted fix NOT to start in function CAfvClient::restartWithNewDevices
2019-10-11 19:00:50 +01:00
Klaus Basan
ef9e7b0bf1
Ref T730, Ref T739 update from own aircraft in one step
...
* update all values from own aircraft in "one step"
* rational: avoid "single property" updates and numerous round trips (signals, transceiver updates)
* also allow updates of not yet connect, as "a kind of preset"
* do NOT send to network if not authenticated
2019-10-11 19:00:49 +01:00
Klaus Basan
f81a9e8447
Ref T730, Ref T739, make sure transmitting receivers are correct
...
* deferred init, make sure values from context are used (if possible)
* only use 1 transmitting transceiver
2019-10-11 19:00:48 +01:00
Roland Rossgotterer
3792c4fa76
[AFV] Do not restart audio if it was not started yet
2019-10-11 19:00:47 +01:00
Klaus Basan
e485824bfc
Ref T730, allow to update voice server URL
2019-10-11 19:00:45 +01:00
Klaus Basan
c604ced11c
[AFV] Ref T730, improved "locking"
...
* use more fine granular locks
* do NOT lock signals (when emit is used)
2019-10-11 19:00:43 +01:00
Roland Rossgotterer
d3a1eb1d60
[AFV] First version of threaded CAfvClient
2019-10-11 19:00:38 +01:00
Klaus Basan
6e9fa0b2ad
Ref T730, style
2019-10-11 19:00:33 +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