Commit Graph

9 Commits

Author SHA1 Message Date
Klaus Basan
5718f95819 Tone player "myself" guard 2020-06-12 18:42:38 +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
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
Mat Sutcliffe
e9a4c49d68 Ref T547 Update license masthead in all source code files. 2019-02-22 20:36:43 +00:00
Mat Sutcliffe
e32ea65a27 Fixed clazy warnings: fully-qualified signal parameter types. 2019-02-22 20:23:34 +00:00
Roland Winklmeier
a60ee4a7dd Use override for destructors 2018-08-25 22:12:06 +02:00
Klaus Basan
8aed8f598e Ref T105, remove empty cleanup functions 2017-09-24 19:50:17 +01:00
Klaus Basan
18ab0e8459 Ref T105, minor adjustements in CThreadedTonePairPlayer 2017-09-24 19:50:09 +01:00
Roland Winklmeier
5486596335 Refactor SECLAL player into new threaded player class
The reason for moving the implementation out from CSoundGenerator into
its own class is, because CSoundGenerator was a very complex and
obscure class. It mixed many tasks in one place. CSelcalPlayer
is designed to play SELCALs only.

The following design changes have been made, compared to CSoundGenerator:
* Use pull mode instead of push mode. QBuffer is used as the QIODevice and
  is a wrapper around QByteArray. Therefore it is not necessary to
  implement our own QIODevice.
* Internally it uses a CThreadedSelcalPlayer to relieve the load of the
  main thread. CThreadedSelcalPlayer inherits CContinuousWorker, no
  low level QThread implementation was necessary.
* Push mode was not implemented.
* It is important that the QAudioOutput is allocated in the worker thread.
  QAudioOutput allocates internal objects, which cannot be moved to
  the worker thread.
* Data caching. The generated seclal audio data is cached.

refs #736
2016-08-26 21:05:24 +01:00