Commit Graph

32 Commits

Author SHA1 Message Date
vsonnier
a8f8f4a7e2 Initial commit: working... 2017-08-27 11:11:30 +02:00
vsonnier
c64baab99d Threads vs. Queues lifetimes, cleanups.
- Ideally Queues must outlive the threads using them, but wasn't done so. Yes, std::shared_ptr them!
- Now queues are always valid in the context of the threads using them.
- No longer need tedious queues deallocation by the original owner.
- Misc cleanups.
2017-08-13 19:19:25 +02:00
vsonnier
4b323e9863 Make ReBuffer refcount management automatic, using std::shared_ptr:
- No longer need to call setRefCount() / decRefCount()
- Restore old ThreadBlockingQueue using std::deque, for std::shared_ptr correct behaviour.
2017-05-24 12:28:37 +02:00
vsonnier
946a9801dc FIX: Inactive demod bendwiths are restored to 0 from sessions, because they were erroneously saved as such.
The problem lies in DemodulatorPreThread:
- settings were actually get/set unprotected from concurrent access (bendwiths, frequencies, sample rates...etc) so make them atomic.
- If bandwith has changed, return the new value instead of the current one, just like frequencies.
2017-02-20 21:39:12 +01:00
Charles J. Cliffe
3ec14fbe38 Licence fix, add SPDX-License-Identifier, remove unused code files 2017-01-02 21:07:43 -05:00
vsonnier
567d84711f THREAD_CLEAN_PART2: Assure correct terminate()/isTerminated(delay)/delete sequence +
Removed the NotifyQueue between DemodulatorInstance participants, actually not needed
since DemodulatorInstance::IsTerminated() is explicitly called on some events for cleanups

DELETE_CLEANUP: properly nullify deleted pointers when needed
2016-07-03 14:22:41 +02:00
vsonnier
52de909cfb THREAD_CLEAN: Clearly distinguish between a request to stop by terminate() from the actual termination isTerminated() 2016-06-28 22:16:34 +02:00
Charles J. Cliffe
4fa0cb7c67 Persist modem settings on new instances 2015-11-26 01:54:54 -05:00
Charles J. Cliffe
7b301fadc1 Clean up some early prototype garbage.. 2015-11-22 23:25:45 -05:00
Charles J. Cliffe
c0eca0b2f3 Allow modems to limit/control input rate
- Modems can now over-ride user rate input and lock/step as needed
- Separate digital code defs a bit more so it’s not required when
disabled
- Testing FSK based on @andresv ’s example at
https://github.com/jgaeddert/liquid-dsp/issues/9
2015-11-22 19:56:25 -05:00
Charles J. Cliffe
dfd7496175 digital modem wrap-up and re-connect
- Compiles but untested
2015-11-18 23:40:30 -05:00
Charles J. Cliffe
f53e228849 Cleanup / finalize demod before initial testing 2015-11-17 21:49:02 -05:00
Charles J. Cliffe
8ac4498db7 code cleanup 2015-11-17 20:47:00 -05:00
Charles J. Cliffe
39c42c2b82 Add modemkit to demod chain 2015-11-17 19:32:47 -05:00
Charles J. Cliffe
73ca52aee1 Convert demodulator type ids to strings for now 2015-11-17 18:57:42 -05:00
Charles J. Cliffe
0a9dd7692a DemodulatorThread convert to IOThread named queues 2015-07-30 00:28:53 -04:00
Charles J. Cliffe
d53aabf73a DemodulatorPreThread convert to IOThread named queues 2015-07-29 22:52:54 -04:00
Charles J. Cliffe
05cd99bbf1 IOThread all the things! 2015-07-29 20:57:02 -04:00
Charles J. Cliffe
57e988572f type updates 2015-07-19 23:19:10 -04:00
Charles J. Cliffe
0e80e1009e First pass at FM Stereo improve via pilot tone PLL 2015-06-05 00:28:32 -04:00
Charles J. Cliffe
4147582d2a Refactor for sample rate changes, audio thread race crash fixes 2015-03-15 21:02:26 -04:00
Charles J. Cliffe
95fcb30733 Audio thread lock fix 2015-01-08 21:12:49 -05:00
Charles J. Cliffe
44bee1f553 Cleanup, demod limits, prevent negative freq, move iq resampler process back to demodulator pre thread 2015-01-04 13:20:31 -05:00
Charles J. Cliffe
334618d000 cleanup, refactor, right mouse waterfall zoom drag 2015-01-03 17:07:39 -05:00
Charles J. Cliffe
4403824e3b Demodulator now has it's own spectrum view 2014-12-29 00:24:10 -05:00
Charles J. Cliffe
a93deee564 Crash fixes, apply FIR filter to stereo output 2014-12-27 15:04:43 -05:00
Charles J. Cliffe
44602303a7 Add stereo re-sampler 2014-12-26 21:55:13 -05:00
Charles J. Cliffe
576a77e095 Update remaining buffers, cleanup 2014-12-24 01:28:33 -05:00
Charles J. Cliffe
24c86bc9e4 optimize demod, allow for channel count changes 2014-12-21 17:37:41 -05:00
Charles J. Cliffe
2b18f03cb5 Experimental squelch--hover demod and press S to toggle 2014-12-21 16:08:32 -05:00
Charles J. Cliffe
9e32ef478d Cleanup, reformat 2014-12-16 21:30:03 -05:00
Charles J. Cliffe
c7a167a1d0 Experimental demodulator preprocessor thread
Demodulator becoming a CPU hotspot, trying to break up the workload
between threads..
2014-12-16 18:27:02 -05:00