89 Commits

Author SHA1 Message Date
vsonnier
77a82e1617 Another fix for the neverending hung application bugs:
- Clear up DemodulatorInstance garbage collection, only do it in a single thread (AppFrame::OnIdle)
- Add a specific mutex lock for the list of deleted demodulators,
- Add a specific lock to control DemodulatorInstance thread lifetimes, protecting IsTerminated() of concurrent join and delete
2017-05-25 08:03:08 +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
c7467a88bc BLOCKING_QUEUE: prepare by raising up max queue lenghts
BLOCKING_QUEUE: Replaced ThreadQueue usage by ThreadBlockingQueue usage
BLOCKING_QUEUE: instrument all push() with timeouts, showed some call have to be non-blocking...
BLOCKING_QUEUE: tuned push()/try_push()
2017-02-14 18:42:05 +01:00
Charles J. Cliffe
3ec14fbe38 Licence fix, add SPDX-License-Identifier, remove unused code files 2017-01-02 21:07:43 -05:00
Charles J. Cliffe
4783ae5be1 Dummy data bump shouldn't be needed now; racing with small bandwidths? 2016-07-10 20:29:31 -04:00
vsonnier
21c8a81c32 TH_CLEAN_3.5: push() cleanup side of things, assure SDRThread::readStream() to actually check for full + make ThreadQueue notify even in case on not-successfull push(), make it spam notify_all() everytime 2016-07-08 23:30:15 +02:00
vsonnier
b495b388c9 TH_CLEAN_3: Use of non-blocking try_pop() when possible,
AudioThread concurrent access hardening and simplified,
and misc.
2016-07-05 21:45:42 +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
vsonnier
5bb43f5aaa Replace mutex lock/unlock pairs with guards, cleanups 2016-06-03 18:45:03 +02:00
Charles J. Cliffe
423c83f500 mutex locking cleanup for demod add / remove chain 2016-06-02 21:48:01 -04:00
Charles J. Cliffe
6d63d570aa comment out some noisy stdout logging until there's a proper facility for log outputs 2016-06-02 19:45:34 -04:00
Charles J. Cliffe
d2943b56c4 Merge branch 'session_bugfix' 2016-06-01 19:48:32 -04:00
Charles J. Cliffe
688181e566 Cleanup MSVC warnings and deprecated C++ exception stuff 2016-06-01 19:42:34 -04:00
vsonnier
357dcc967b MISC 1: make IOThread input and output queues returned as ThreadQueueBase*, not void*, cleaner.
then use static_cast for downcasts, because we know what we are doing
2016-06-01 19:42:11 +02:00
Charles J. Cliffe
c1863d9319 Basic cleanup / mutex additions / bulk demod add 2016-05-31 19:58:37 -04:00
Charles J. Cliffe
f22ef685f5 Static analysis related fixes 2016-03-30 19:34:36 -04:00
Charles J. Cliffe
93d2c73fb9 Add delta lock -- lock modem relative to center frequency 2016-02-15 17:43:10 -05:00
Stanisław Pitucha
77b2d54870 Initialize frequency 2016-01-29 20:08:33 +11:00
Stanisław Pitucha
035353123d Fix signed/unsigned variables 2016-01-29 07:49:31 +11:00
Charles J. Cliffe
68c409486e Fix toggling between low/high bw with same channel count 2015-12-29 23:25:22 -05:00
Charles J. Cliffe
7d6a387a77 Updates and improvements for low-bandwidth input usage 2015-12-29 20:52:49 -05:00
Charles J. Cliffe
1eb84d6fa7 SDRPostThread cleanup 2015-12-05 18:52:36 -05:00
Charles J. Cliffe
cdc80b890b Add ReBuffer buffer count warning, fix SDRPostThread off-by-one channel reset 2015-12-04 22:10:51 -05:00
Charles J. Cliffe
7027e7bf0b Missed crash fix for channelizer channel 0 2015-10-27 17:06:39 -04:00
Charles J. Cliffe
3fc6f9ad80 Several crash/bug fixes, uninitialized vars 2015-10-27 16:53:06 -04:00
Charles J. Cliffe
ac93aa369b Manual Gain Control :-)
- Disable AGC from settings menu
- Requires latest SoapySDRPlay gain commits for SDRPlay
2015-10-27 01:56:49 -04:00
Charles J. Cliffe
b89d606af3 SoapySDR 0.4.0 updates
- Requires up-to-date SoapySDR 0.4.x and re-built modules
2015-10-23 02:53:51 -04:00
Charles J. Cliffe
67c184262a Minor tweaks and cleanup
- add functions to access SDRPostThread
2015-10-18 12:26:07 -04:00
Charles J. Cliffe
6ee51711db Fix channel gap on upper edge of spectrum 2015-10-17 18:25:14 -04:00
Charles J. Cliffe
f1475fb9be Move DC correction to channel 0, reduce demod vis CPU usage
- Demod vis now uses channelizer output instead of decimation
- DC correction now only applied to channel 0
2015-10-17 16:17:12 -04:00
Charles J. Cliffe
beccdf8c63 firpfbch2->firpfbch experiment
- My assumption about this not working correctly may be wrong, this
actually seems to work ok compared to firpfbch2
2015-10-16 18:40:40 -04:00
Charles J. Cliffe
a4dc4498fc Add support for my experimental firpfbch2_crcf_set_channel_state
- Needs my fork of liquid-dsp at:
https://github.com/cjcliffe/liquid-dsp/tree/firpfbch_toggle_channels
2015-10-15 21:01:07 -04:00
Charles J. Cliffe
249e04e69c Move DC blocking filter to SDRThread
- DC blocker + Channelizer too heavy together
2015-10-15 01:35:08 -04:00
Charles J. Cliffe
d8c048fecc SDRPostThread cleanup/refactor
- Cache active demodulators and channel info instead of running the
whole list each time
2015-10-14 18:09:29 -04:00
Charles J. Cliffe
edd154296c FIR Polyphase filterbank channelizer prototype implementation
- Can now handle several 200khz FM streams with SDRPlay at 8Mhz+ on my
old 2010 Macbook Pro :)
- Demod bandwidth max now limited to 400khz, temporary until alternate
path for high-bandwidth is available
2015-10-14 00:54:48 -04:00
Charles J. Cliffe
9d06fa77c7 Use hardware DC when available
- un-comment code in SoapySDRThread for remote testing…
2015-09-30 23:45:06 -04:00
Charles J. Cliffe
1918707304 Initial experimental support for SoapySDR device input 2015-09-13 22:18:29 -04:00
Charles J. Cliffe
2e6b173fb1 attempt to fix waterfall stutter working parts 2015-09-07 20:46:03 -04:00
Charles J. Cliffe
5de181cf67 keyboard waterfall zoom input tweaks 2015-08-16 19:47:49 -04:00
Charles J. Cliffe
b1f20de0e9 RefCounter should make this unnecessary? 2015-08-13 18:10:22 -04:00
Charles J. Cliffe
b345dc7516 Spectrum averaging control now functional 2015-08-12 22:14:14 -04:00
Charles J. Cliffe
1d5a2f1ac7 Fix for an initial priming overload and visuals memory leak 2015-08-12 21:45:02 -04:00
Charles J. Cliffe
33d51b2bff Improve input response time, balance visuals, fix a bug 2015-08-12 19:39:11 -04:00
Charles J. Cliffe
6ae02bee9c Frame timer too jittery for anything but OSX, back to throttling which looks nicer.. 2015-08-12 18:07:06 -04:00
Charles J. Cliffe
0c1f3149ac Whoops.. I can has memory leak? 2015-08-11 22:11:54 -04:00
Charles J. Cliffe
655e4da1dc Update post-input IQ visual out queue to ReBuffer<>
+ float is no longer enough for FFT zoom resolution :D
2015-08-11 21:49:42 -04:00
Charles J. Cliffe
0802f7b756 Experimenting with max speed waterfall (no dropped FFTs :)
- FFT Detail from zoomed-in views is greatly improved with the
additional data
2015-08-11 00:50:43 -04:00
Charles J. Cliffe
c1774ee96a Cleanup / refactor "pipe" names for clarity 2015-07-30 20:36:06 -04:00
Charles J. Cliffe
10e35002f1 AudioThread & demod worker IOThread queues, cleanup 2015-07-30 19:30:46 -04:00
Charles J. Cliffe
05cd99bbf1 IOThread all the things! 2015-07-29 20:57:02 -04:00