Commit Graph

382 Commits

Author SHA1 Message Date
Charles J. Cliffe
0e2984ab18 Merge pull request #8 from cjcliffe/dynamic_demod
Dynamic demod, x86-64 switch and std::thread
2014-11-22 23:15:19 -05:00
Charles J. Cliffe
fa521ac30d Switch from portaudio callback to stream write
It’s already in a thread, not sure if callback was helping?
2014-11-22 22:56:33 -05:00
Charles J. Cliffe
39ba38b82a Cleanup / Reformat 2014-11-22 22:33:32 -05:00
Charles J. Cliffe
58708a720e SDR->Demod->Audio chain all using std::thread
2% CPU usage drop on 3.2G i7 desktop
2014-11-22 22:17:33 -05:00
Charles J. Cliffe
26168a2713 SDR and Audio thread now using std::thread
Next up, demod thread..
2014-11-22 20:57:06 -05:00
Charles J. Cliffe
35830afed0 new thread queue testing 2014-11-21 21:50:14 -05:00
Charles J. Cliffe
99aa87df63 Now working on gcc4.8, x86-64 on windows
Had to make my own portaudio and rtl-sdr binaries. The available
packages weren't compatible somehow.  Also wxWidgets wxPack doesn't
include OpenGL support but it's easy enough to compile.
2014-11-21 00:49:41 -05:00
Charles J. Cliffe
f6f4c3c057 Revert "switch from portaudio -> libao"
This reverts commit 8972e87765.
2014-11-20 20:28:40 -05:00
Charles J. Cliffe
28afe9d3be Merge branch 'dynamic_demod' of https://github.com/cjcliffe/CubicSDR into dynamic_demod
Conflicts:
	CMakeLists.txt
2014-11-20 20:12:38 -05:00
Charles J. Cliffe
9706ed8f7e Update to 64-bit, add test threadqueue 2014-11-20 20:10:28 -05:00
Charles J. Cliffe
8972e87765 switch from portaudio -> libao 2014-11-19 23:41:57 -05:00
Charles J. Cliffe
a9d46b7624 Preparing to change threading model 2014-11-19 17:41:49 -05:00
Charles J. Cliffe
92b390fefe Enable c++11 2014-11-19 00:34:41 -05:00
Charles J. Cliffe
9150439283 Thread priority bump, main thread sleep 2014-11-18 19:02:07 -05:00
Charles J. Cliffe
054ac3f840 Attempting to fix OSX portaudio jitter.. 2014-11-18 18:35:40 -05:00
Charles J. Cliffe
6624ec11a3 IQ->Demod->Audio threads now chained
No longer passing anything through the main thread which was causing
audio and IQ interrupts on UI events -- hopefully improves OSX jitter.

SDRThread can now have unlimited Demodulator bindings.. :)
2014-11-18 18:00:06 -05:00
Charles J. Cliffe
75c51f1236 missing return params 2014-11-17 23:25:14 -05:00
Charles J. Cliffe
dd42d112c9 Demodulator can now be initialized with parameters 2014-11-17 22:58:56 -05:00
Charles J. Cliffe
7f5031b6e5 cleanup 2014-11-17 21:35:10 -05:00
Charles J. Cliffe
532968a818 Source folder cleanup 2014-11-17 21:29:27 -05:00
Charles J. Cliffe
6638f07b12 Merge pull request #7 from cjcliffe/master
patches from master
2014-11-17 21:21:11 -05:00
Charles J. Cliffe
1ec324b104 Update README.md 2014-11-17 20:44:11 -05:00
Charles J. Cliffe
8c6eea44b8 fix win32 include on non win32 2014-11-17 19:48:28 -05:00
Charles J. Cliffe
c465a5687d Merge pull request #6 from cjcliffe/threading_improvements
Threading improvements
2014-11-17 19:39:20 -05:00
Charles J. Cliffe
7e174ab1dd All threads now using transaction objects and queue
Additional cleanup, remove outdated IQBufferThread experiment
2014-11-17 19:37:53 -05:00
Charles J. Cliffe
44542dd878 Merge pull request #5 from cjcliffe/master
Win32 timer class fix
2014-11-17 18:17:10 -05:00
Charles J. Cliffe
e91696c012 SDRThread now passes IQ Data transaction object
Also using sdr thread queue and standard thread event to send payload
now.
2014-11-17 18:14:37 -05:00
Charles J. Cliffe
b78fefb221 Win32 timer class fix 2014-11-17 18:12:20 -05:00
Charles J. Cliffe
a7d7ec0d93 Frame rate limiter 2014-11-16 23:20:48 -05:00
Charles J. Cliffe
3614c2ad9f Merge pull request #4 from cjcliffe/audio_thread
New Audio thread and Demodulator thread
2014-11-16 19:16:52 -05:00
Charles J. Cliffe
82b6b67f3c Re-connect scope to demodulator output data 2014-11-16 19:14:15 -05:00
Charles J. Cliffe
1950c3109a Balanced thread performance w/ CPU usage
Seems smooth and responsive now.
2014-11-16 19:02:40 -05:00
Charles J. Cliffe
739854cd7f Demodulator and Audio threads working
Data now flows from SDR IQ Thread -> Demodulator Thread -> Audio Thread.
Seems to have added a significant audio delay though..
2014-11-16 17:33:54 -05:00
Charles J. Cliffe
2a34fc9cf9 New demodulator thread code 2014-11-16 16:51:45 -05:00
Charles J. Cliffe
16a9add9ef New threads partly implemented
Mid transition from 1 to 3 threads: SDR IQ, Demod and Audio separated,
AppFrame routes.
2014-11-16 16:50:37 -05:00
Charles J. Cliffe
9705d293f9 Merge pull request #3 from cjcliffe/the_waterfall
Addition of waterfall and separation of visual components
2014-11-15 23:44:09 -05:00
Charles J. Cliffe
2e5bdc2646 Separate visual components Scope/Spectrum/Waterfall
Each now on it's own canvas with shared GL Context
2014-11-15 23:41:41 -05:00
Charles J. Cliffe
541ab5614c Separate Primary GL Context and visuals canvas
Can now create multiple GL canvases with shared context
2014-11-12 21:55:11 -05:00
Charles J. Cliffe
02cd0f6516 FM Demodulator fixes
was an implicit float to int in the primary filter cutoff value causing
distortion.
2014-11-12 19:09:22 -05:00
Charles J. Cliffe
adc6fcce85 Waterfall tweaking, automatic range adjustment 2014-11-12 00:28:20 -05:00
Charles J. Cliffe
810533750f waterfall optimize, fm demod audio filtering
Moved waterfall increment into rendering to reduce audio processing
impact.

Added another test filter and resample stage to FM demod experiment to
clean up audio and remove high pitch on stereo channels until it can be
demodulated.
2014-11-11 21:42:18 -05:00
Charles J. Cliffe
86dadb8f2c Waterfall now being displayed 2048x512
Uses indexed color scheme, FFT image is byte array
2014-11-11 20:25:16 -05:00
Charles J. Cliffe
fe2e56231d gradient util, started waterfall implementation 2014-11-11 08:11:12 -05:00
Charles J. Cliffe
b270379361 Honor PA_RECOMMENDED_OUTPUT_DEVICE on Win32
PortAudio defaults to output on my Virtual Cable INPUT #A?? -- strange
but this gets around it neatly for now.
2014-11-09 21:21:11 -05:00
Charles J. Cliffe
9913629a7e Use first available RTL device 2014-11-09 20:55:21 -05:00
Charles J. Cliffe
3bd4736595 Merge pull request #2 from cjcliffe/demod_experiment_buffering
Demodulation experiment complete, ready to move on
2014-11-09 18:14:55 -05:00
Charles J. Cliffe
a78a862cba Moved demodulation code into it's own class
Preparing to make it more dynamic, able to tune multiple frequencies at
once and support remaining demodulation modes (AM, USB, LSB)
2014-11-09 18:12:02 -05:00
Charles J. Cliffe
14d7e431bd PortAudio adjustments for OSX
Seems to be some sort of audio init race condition, intermittent crash
on startup
2014-11-09 05:18:33 -05:00
Charles J. Cliffe
b70b659a5f Removed OpenAL and now using PortAudio 2014-11-09 04:38:33 -05:00
Charles J. Cliffe
c3c204bc04 Pitch issue fixed, OpenAL weirdness
Might be time to retire OpenAL -- is behaving strangely on output
stream..
2014-11-08 20:50:28 -05:00