Commit Graph

707 Commits

Author SHA1 Message Date
Charles J. Cliffe
24fe742f8e Improve SSB UI visuals and interactivity 2015-02-16 02:15:04 -05:00
Charles J. Cliffe
6b120cff95 SSB supression via decim/interp, removed LSB/USB bandwidth limit, fix SSB audio/visual delay 2015-02-12 22:46:45 -05:00
Charles J. Cliffe
eada5aa01d AM/DSB fix 2015-02-12 02:14:22 -05:00
Charles J. Cliffe
4f47fa7375 Experimenting with improving SSB 2015-02-12 01:38:53 -05:00
Charles J. Cliffe
c221ee2216 missing peak gain apply 2015-02-11 22:55:34 -05:00
Charles J. Cliffe
c69d05010c Merge remote-tracking branch 'origin/mixer-fixes' into waterfall-optimize 2015-02-11 21:35:44 -05:00
Charles J. Cliffe
261d2dbe5f audio thread locking fixes 2015-02-11 21:35:27 -05:00
Charles J. Cliffe
adf8ba5251 OSX 1/2 refresh frame-limiting hack 2015-02-10 23:49:34 -05:00
Charles J. Cliffe
e4c942c714 Log available swap functions, possible fix for DRI2SwapInterval 2015-02-10 18:28:35 -05:00
Charles J. Cliffe
a1d1c9e1d9 Possible vsync fix for linux DRI2SwapInterval based X11 2015-02-10 18:01:57 -05:00
Charles J. Cliffe
a034c810df Linux patch for swapEXT swapMESA and swapSGI 2015-02-10 00:57:36 -05:00
Charles J. Cliffe
a803a2d136 MSVC patches 2015-02-09 22:01:33 -05:00
Charles J. Cliffe
c0e6ecb3eb vsync patch for OSX 2015-02-09 21:18:10 -05:00
Charles J. Cliffe
a3fac1e932 Frame rate limiter for Windows, Untested OSX / Linux 2015-02-09 20:49:21 -05:00
Charles J. Cliffe
add04883eb Audio thread mixer adjustments
- Automatic gain balance
- Clipping prevention
2015-02-08 18:59:08 -05:00
Charles J. Cliffe
679ad64a1f Move waterfall animation to GPU
- Refactored texture generation to linear wrap in GPU memory with
glTexSubImage2D (1 line per frame upload max)
- Texture upload per frame reduced nearly 700-800x (~2-4kb instead of
~1.6mb)
2015-02-08 13:49:12 -05:00
Charles J. Cliffe
b9efb43a6b Merge branch 'issue45-demod-opts' 2015-02-07 20:21:25 -05:00
Charles J. Cliffe
2f568d6e2d Fix for bad session int->float conversion on load 2015-02-07 20:20:26 -05:00
Charles J. Cliffe
fa746b7453 fix creation of new demodulator when none active 2015-02-05 21:40:38 -05:00
Charles J. Cliffe
4218fb73a0 Demod visual activation when entering/leaving view 2015-02-05 20:54:04 -05:00
Charles J. Cliffe
b78b4e1b96 Merge branch 'master' into issue45-demod-opts 2015-02-05 20:08:50 -05:00
Charles J. Cliffe
590d494fea Fix for broken OSX audio 2015-02-05 20:01:21 -05:00
Charles J. Cliffe
6deee5a936 loop->memcpy 2015-02-05 19:45:01 -05:00
Charles J. Cliffe
9cf8799a58 Patch for Windows / OSX 2015-02-05 19:30:06 -05:00
Charles J. Cliffe
a8070ca953 Destroy / recreate audio thread on demodulator activate / deactivate -- fixes DirectSound issues 2015-02-04 18:10:42 -05:00
Charles J. Cliffe
ec3e851354 Waterfall bandwidth control and new demod hover state tweaks 2015-02-03 19:11:30 -05:00
Ryndzionek Mariusz
a2c6e0bf91 Added LUT for IQ mapping with proper scaling 2015-02-03 18:42:44 +01:00
Charles J. Cliffe
1a9f7d31b7 missing atomic<int> load 2015-02-03 12:25:02 -05:00
Charles J. Cliffe
524cfbe0df Demodulator options persist and apply to newly created 2015-02-02 20:10:55 -05:00
Charles J. Cliffe
b4e4f3017f Remove public access to demod internal state vars and clean-up improper use 2015-02-02 18:24:04 -05:00
Charles J. Cliffe
129ab337e2 range / suppression adjustments 2015-02-01 00:08:55 -05:00
Charles J. Cliffe
b77caaf263 remove debug msg 2015-01-31 22:43:44 -05:00
Charles J. Cliffe
27b890c882 Experimental zoomed FFT resolution improvements 2015-01-31 22:27:11 -05:00
Charles J. Cliffe
19829b6ceb bad memory init 2015-01-30 19:48:06 -05:00
Charles J. Cliffe
fb5a7e5b8f attempt to improve FFT zoom resolution 2015-01-30 19:31:32 -05:00
Charles J. Cliffe
e504f4f282 Fix demodulator selection menu radio and display 2015-01-25 21:03:17 -05:00
Charles J. Cliffe
bc991c2cd9 dealloc filter init var 2015-01-25 01:27:37 -05:00
Chris Motch
1ed7d95193 Fixes to allow Compilation using VC++ 12
Some minor fixes and tweaks to allow compilation under Visual C++ 12.
This doesn't include changes that I need to make to the build
generation.
2015-01-24 22:01:47 -05:00
Charles J. Cliffe
c55b94eee1 Bandwidth change patch 2015-01-23 02:09:37 -05:00
Charles J. Cliffe
dd9bc9aa2c Fix broken demod view zoom 2015-01-23 01:05:23 -05:00
Charles J. Cliffe
b2e8cf0482 Demod worker lock-on-remove fix 2015-01-22 23:41:33 -05:00
Charles J. Cliffe
d45d3842bf Eliminate redundant visual data updates, temporary chain until shared PBO implementation 2015-01-22 22:14:00 -05:00
Charles J. Cliffe
6d0fc54400 Staggered tile updates and moving texture window to eliminate constant memmove() for animation 2015-01-22 21:32:32 -05:00
Charles J. Cliffe
e9b99be18c Patch for OpenGL 1280 errors 2015-01-20 22:26:34 -05:00
Charles J. Cliffe
4dad30e9bd GL context init fixes and warning cleanup 2015-01-20 19:13:49 -05:00
Charles J. Cliffe
88978cc633 Disable mouse lock hack for linux 2015-01-18 12:55:51 -05:00
Charles J. Cliffe
963e26bc07 Linux somewhat functional 2015-01-18 01:36:28 -05:00
Charles J. Cliffe
c04779e91b Color theme tweaks and fixes 2015-01-15 20:37:51 -05:00
Charles J. Cliffe
15347bd791 Theme updates 2015-01-15 00:59:33 -05:00
Charles J. Cliffe
b641f1200e Theme color updates 2015-01-14 22:55:04 -05:00
Charles J. Cliffe
4213b47c99 Move waterfall color themes to general theme classes, convert hard-coded colors 2015-01-14 22:14:57 -05:00
Charles J. Cliffe
9217ea6e19 Indicate device selection 2015-01-12 00:52:00 -05:00
Charles J. Cliffe
2d0485c8ea RTL Device Selection 2015-01-12 00:40:43 -05:00
Charles J. Cliffe
2b6da304ef Fix demodulator termination / thread lock 2015-01-11 20:26:51 -05:00
Charles J. Cliffe
e7b22bd186 Add indicator for selected bandwidth / theme 2015-01-11 19:44:02 -05:00
Charles J. Cliffe
ea2627ace6 Can now change input device bandwidth 2015-01-11 17:08:16 -05:00
Charles J. Cliffe
93da5b5fa1 Some basic color themes and selector 2015-01-11 03:09:59 -05:00
Charles J. Cliffe
a18d59aa44 missing demodulator pop on terminate 2015-01-10 22:45:43 -05:00
Charles J. Cliffe
caab5f2e05 OSX mouse wheel adjust 2015-01-10 22:04:19 -05:00
Charles J. Cliffe
234f0783a0 OSX crash-on-exit fix 2015-01-10 21:49:58 -05:00
Charles J. Cliffe
f1355b1775 Gain control fix for OSX 2015-01-10 21:01:35 -05:00
Charles J. Cliffe
60b5dbb07f Per-demodulator gain settings 2015-01-10 20:33:30 -05:00
Charles J. Cliffe
f454c34245 Save / Load session working 2015-01-10 12:27:03 -05:00
Charles J. Cliffe
2c5eb4f946 load / save almost functional 2015-01-10 11:00:03 -05:00
Charles J. Cliffe
faa87fcd10 DataTree refactoring, load/save functions almost ready 2015-01-09 20:56:43 -05:00
Charles J. Cliffe
7c68f142ed Merge with updated datatree 2015-01-09 17:19:05 -05:00
Charles J. Cliffe
8ec6b75e54 Session save handler 2015-01-09 17:17:56 -05:00
Charles J. Cliffe
c3b4271e31 Load/Save dialogs and menus, OSX Cmd-Q fix 2015-01-08 23:57:58 -05:00
Charles J. Cliffe
4633bfa36f Datatree fixes, 64-bit updates 2015-01-08 23:10:54 -05:00
Charles J. Cliffe
95fcb30733 Audio thread lock fix 2015-01-08 21:12:49 -05:00
Charles J. Cliffe
36ff762d3a DataTree cleanup/refactor.. 2015-01-08 19:56:44 -05:00
Charles J. Cliffe
cf2b11f496 DataTree refactoring / 64-bit expansion 2015-01-08 18:33:37 -05:00
Charles J. Cliffe
aa13aa2e16 Mousewheel fix for non-OSX, AM reset tweak 2015-01-07 21:25:35 -05:00
Charles J. Cliffe
93e88a9208 Import TinyXML and DataTree, OSX related UI tweaks 2015-01-07 20:23:15 -05:00
Charles J. Cliffe
a1f9b5df16 Add version and credit 2015-01-06 19:30:40 -05:00
Charles J. Cliffe
7d5d638666 FFTW->FFTWF better CPU usage 2015-01-06 19:15:27 -05:00
Charles J. Cliffe
0806e47116 offset direction 2015-01-06 02:02:19 -05:00
Charles J. Cliffe
1671e625e4 Menu option for frequency offset (up/down converters) 2015-01-06 00:57:57 -05:00
Charles J. Cliffe
726113e9ea Mode selector widget to replace menu
+ OSX keyboard focus fix
2015-01-06 00:29:33 -05:00
Charles J. Cliffe
082c8fbd12 Mode selector visuals working 2015-01-05 19:12:16 -05:00
Charles J. Cliffe
137116da9c Mode selector class framework 2015-01-04 19:50:05 -05:00
Charles J. Cliffe
482ff41382 Can now drag tuner values 2015-01-04 19:32:51 -05:00
Charles J. Cliffe
9f945026b8 Fix frequency related data types for >2Ghz 2015-01-04 17:11:20 -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
e2e261f1c0 OSX fix 2015-01-03 19:03:16 -05:00
Charles J. Cliffe
904050da13 Display demodulation type on waterfall 2015-01-03 18:45:34 -05:00
Charles J. Cliffe
334618d000 cleanup, refactor, right mouse waterfall zoom drag 2015-01-03 17:07:39 -05:00
Charles J. Cliffe
63a4913558 Tweaks, cleanup, helptips 2015-01-02 22:44:09 -05:00
Charles J. Cliffe
8f8dd01341 Unify common canvas manipulation functions 2015-01-02 21:32:24 -05:00
Charles J. Cliffe
ef5462d13c Zoom follows and pins mouse frequency 2015-01-02 19:35:34 -05:00
Charles J. Cliffe
6a03aae303 shift center freq on zoomed edge hit 2015-01-02 02:44:50 -05:00
Charles J. Cliffe
ce75eed995 Experimental waterfall zoom 2015-01-01 21:10:54 -05:00
Charles J. Cliffe
4f43f65065 AM, USB and LSB somewhat working 2015-01-01 18:08:54 -05:00
Charles J. Cliffe
8b89b27b40 Experimental AM/LSB/USB demodulation 2015-01-01 03:48:32 -05:00
Charles J. Cliffe
955ec54b44 Audio device selection fixes for OSX 2014-12-31 22:38:59 -05:00
Charles J. Cliffe
3da7e18b88 New meter widget 2014-12-31 21:43:05 -05:00
Charles J. Cliffe
6679b20fbb Can now choose demodulator output devices 2014-12-31 21:31:37 -05:00
Charles J. Cliffe
b7793ef905 Squelch slider/signal indicator 2014-12-31 19:45:01 -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
d642cc63fd scope resolution adjust 2014-12-28 21:14:08 -05:00
Charles J. Cliffe
0eb8ef60b2 Layout, interaction improvements 2014-12-28 20:55:05 -05:00
Charles J. Cliffe
b9ead19981 Unused timer caused random startup crash on windows? 2014-12-28 14:19:43 -05:00
Charles J. Cliffe
1e970f4373 Zoomed-in demodulator waterfall somewhat working
- update demod WF from demodulator is jittery
- adjustments with immediate update is awkward
2014-12-28 05:13:46 -05:00
Charles J. Cliffe
a3f8bc08e7 Setting up layout for active demodulator UI 2014-12-27 23:47:56 -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
5e9414702d Cleanup, stereo audio thread memory leak fix 2014-12-27 12:45:21 -05:00
Charles J. Cliffe
376ddfad98 Better Stereo FM implementation using liquid-dsp tools 2014-12-27 12:23:09 -05:00
Charles J. Cliffe
06103a2d1b Show stereo divider 2014-12-26 23:28:18 -05:00
Charles J. Cliffe
b69f90b17b Show stereo in vis output 2014-12-26 22:20:50 -05:00
Charles J. Cliffe
591b03dc7d Indicate stereo status in term 2014-12-26 22:07:49 -05:00
Charles J. Cliffe
44602303a7 Add stereo re-sampler 2014-12-26 21:55:13 -05:00
Charles J. Cliffe
0fc47bc916 FM Stereo experiment, partly working 2014-12-26 20:58:42 -05:00
Charles J. Cliffe
45b223aed9 eliminate fp/int IQ data conversions 2014-12-26 16:15:35 -05:00
Charles J. Cliffe
b487cf9901 convert inline buffers to dynamic growth per instance 2014-12-24 03:03:34 -05:00
Charles J. Cliffe
576a77e095 Update remaining buffers, cleanup 2014-12-24 01:28:33 -05:00
Charles J. Cliffe
8c852ed491 SDR thread reusable buffers implemented 2014-12-24 00:11:41 -05:00
Charles J. Cliffe
b7375ce09f Threading crash fixes, reusable IQ buffer queue 2014-12-23 23:37:18 -05:00
Charles J. Cliffe
ef78ffc6f3 minor warning fixes 2014-12-23 02:32:25 -05:00
Charles J. Cliffe
3f00148de8 Merge branch 'thread-data-optimization' of https://github.com/cjcliffe/CubicSDR into thread-data-optimization 2014-12-23 02:01:46 -05:00
Charles J. Cliffe
d53eb5fc9f shift key for faster frequency change 2014-12-23 02:01:41 -05:00
Charles J. Cliffe
a7913e3290 refactor remaining transaction objects 2014-12-23 01:59:03 -05:00
Charles J. Cliffe
8ce3065bce cleanup / refactor / profiled 2014-12-23 01:12:14 -05:00
Charles J. Cliffe
703501f32d OSX fixes 2014-12-22 23:27:52 -05:00
Charles J. Cliffe
1dc218d346 Disable FIR filter -- decimation is enough? 2014-12-22 21:31:53 -05:00
Charles J. Cliffe
24d06e13d7 Fix for various threading crashes during stress test 2014-12-22 21:12:13 -05:00
Charles J. Cliffe
312b25f55a Changed data transaction objects to use pointers 2014-12-22 19:43:56 -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
c8adad8d6d Default to new demod if last active out of range 2014-12-18 21:39:32 -05:00
Charles J. Cliffe
c583b4a79a Windows fix-up 2014-12-18 20:32:05 -05:00
Charles J. Cliffe
ab82ab182e Moved OSX specific flags 2014-12-18 20:13:29 -05:00
Charles J. Cliffe
b196fbfdea Basic mixer for OSX -- multi demod streams working
RtAudio can’t open multiple streams, so now opening a new device will
start a static audio thread and all other threads will attach/detach
their input queues there.
2014-12-18 20:11:25 -05:00
Charles J. Cliffe
493d9da8a7 OSX testing params 2014-12-16 21:58:35 -05:00
Charles J. Cliffe
9e32ef478d Cleanup, reformat 2014-12-16 21:30:03 -05:00
Charles J. Cliffe
912ef930a2 Font preloader, new demod no-move drag fix 2014-12-16 21:03:45 -05:00
Charles J. Cliffe
02cf2099a9 Rebalance demodulator threads, tweak priorities 2014-12-16 20:33:44 -05:00
Charles J. Cliffe
62c5ab38e5 Demodulator split 2014-12-16 18:27:32 -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
Charles J. Cliffe
76c68cc4fa OSX fix-up 2014-12-16 00:22:33 -05:00
Charles J. Cliffe
65ae1de36d Trying thread trick for preventing audio underrun.. 2014-12-15 20:47:46 -05:00
Charles J. Cliffe
cd5f43d5c4 Switch to liquid-dsp block functions in demod 2014-12-14 20:23:52 -05:00
Charles J. Cliffe
24cd93d1ae Split DemodulatorMgr and DemodulatorInstance 2014-12-11 23:35:06 -05:00
Charles J. Cliffe
dcb1f33a85 Can now press alt to drag demod range 2014-12-11 21:37:01 -05:00
Charles J. Cliffe
5db4dcdbac prototype drag range demod create/select tool 2014-12-11 20:50:58 -05:00
Charles J. Cliffe
f04ec72394 Demodulator garbage collection 2014-12-11 19:07:21 -05:00
Charles J. Cliffe
4d35075655 Can now spawn/delete demodulators 2014-12-10 21:22:13 -05:00
Charles J. Cliffe
f2c59fedd1 Can now spawn infinite(?) demodulators by holding shift 2014-12-10 18:52:24 -05:00
Charles J. Cliffe
380145fdaa Waterfall hover-state/interactivity improvements 2014-12-10 00:34:27 -05:00
Charles J. Cliffe
34a6d3f5e0 Added frequency labels, 100khz intervals 2014-12-09 21:28:08 -05:00
Charles J. Cliffe
33e2e18c57 Unify demod drawing functions 2014-12-08 21:08:03 -05:00
Charles J. Cliffe
7f9a871598 Simplify GLFont drawString usage 2014-12-08 20:39:38 -05:00
Charles J. Cliffe
da8d178e34 Filtering mode 2014-12-08 19:46:29 -05:00
Charles J. Cliffe
542326baab Font rendering functional: test string 2014-12-08 19:38:38 -05:00
Charles J. Cliffe
6c7372ed90 Font loader experiment 2014-12-08 02:16:06 -05:00
Charles J. Cliffe
09848bfdec Adds test #define for default demodulator count 2014-12-06 21:55:05 -05:00
Charles J. Cliffe
80ac3175a3 Better multi-demodulator overlap hover handling 2014-12-06 21:47:18 -05:00
Charles J. Cliffe
a3bda830a8 Fix waterfall canvas to interact with active demod 2014-12-06 21:10:29 -05:00
Charles J. Cliffe
119f7c71af win64 fixes 2014-12-05 21:16:43 -05:00
Charles J. Cliffe
9fc864ea57 OSX crude re-sync tweak 2014-12-05 20:18:19 -05:00
Charles J. Cliffe
ad800056d5 OSX audio may be stable, works on 2010 macbook pro 2014-12-05 20:13:45 -05:00
Charles J. Cliffe
7c6d2e1131 Merge pull request #14 from cjcliffe/integrate_rtaudio
Integrate RtAudio
2014-12-05 18:36:43 -05:00
Charles J. Cliffe
051c4f081f RtAudio tweaks, disable unused GL states 2014-12-05 18:32:38 -05:00
Charles J. Cliffe
894c718730 Mostly working on OSX /w rtaudio now
Looks like just some priority tweaks remain
2014-12-04 22:25:18 -05:00
Charles J. Cliffe
03edda18e5 RtAudio integrated and working great /w win64
Next up, OSX test..
2014-12-04 19:44:49 -05:00
Charles J. Cliffe
7ae1ffc2c9 RtAudio source integrated, preparing to implement 2014-12-04 19:03:02 -05:00
Charles J. Cliffe
7dcab0a078 OSX exit crash fix 2014-12-01 19:45:34 -05:00
Charles J. Cliffe
e668fa2b5d Increase demodulator stack size on OSX
Using pthreads as a drop-in, should work since underlying is already
pthreads?
2014-12-01 18:59:07 -05:00
Charles J. Cliffe
746eca8d3e Demod worker now handles filter reconstruction
Reduces audio jittering and only generates the last queued filter to
save redundant regeneration during dragging.
2014-12-01 02:10:36 -05:00
Charles J. Cliffe
38b1393c44 Worker results.. 2014-12-01 01:14:32 -05:00
Charles J. Cliffe
5fc5e4269c Demodulator worker thread test 2014-11-30 23:33:55 -05:00
Charles J. Cliffe
023002f009 Can now drag and resize demodulator on waterfall
Pretty typical style of center = drag frequency, edge handles =
bandwidth
2014-11-30 21:14:17 -05:00
Charles J. Cliffe
0d8991eb67 Demodulator finder, hover states for waterfall 2014-11-30 18:54:13 -05:00
Charles J. Cliffe
0bc31eed6c Transparent demod overlay on waterfall 2014-11-30 17:59:24 -05:00
Charles J. Cliffe
874746b1d4 Removed one too many lines 2014-11-30 17:17:28 -05:00
Charles J. Cliffe
52c1db89a7 Remove unused code 2014-11-30 17:16:35 -05:00
Charles J. Cliffe
06513e2064 Cleanup / re-factor. Pair audio thread with demod 2014-11-30 17:11:29 -05:00
Charles J. Cliffe
499e411048 Remove DC spike from IQ stream and visuals
IQ post-process / distribution in separate thread, use of
iirfilt_crcf_create_dc_blocker to reduce DC offset in IQ stream.
2014-11-29 13:58:20 -05:00
Charles J. Cliffe
93b20454d3 Increase keyboard L/R arrow key tuning speed 2014-11-28 19:00:05 -05:00
Charles J. Cliffe
1554348f55 Demodulator can now tune offset!
Demodulator will up-convert / down-convert by mixing VCO with incoming
IQ to shift frequency -- No longer limited to center freq. can listen
anywhere on the waterfall.
2014-11-27 22:13:21 -05:00
Charles J. Cliffe
df853bfd65 Removed unused/empty source files 2014-11-27 12:55:55 -05:00
Charles J. Cliffe
97e219724e Disable mouse locking on OSX -- causes event loop 2014-11-27 12:53:35 -05:00
Charles J. Cliffe
65a5dbb24d Proper demodulator resamp and filter reinit 2014-11-26 22:29:23 -05:00
Charles J. Cliffe
ddbc08a4ff Drag up/down to set arbitrary FM demod bandwidth
Shouldn't need separate WBFM/FM/NFM setting this way -- Just "FM" and
then set arbitrary bandwidth by dragging.

Also removed redundant demod resampling stages left over from early
experiments.
2014-11-26 21:05:19 -05:00
Charles J. Cliffe
f441546023 Pick freq/drag in waterfall, show demod bandwidth 2014-11-25 22:51:14 -05:00
Charles J. Cliffe
f6966b1824 Simple class for tracking wx mouse in unit 0..1 2014-11-25 21:07:13 -05:00
Charles J. Cliffe
4900ce7f17 Can now tune by dragging middle spectrum view 2014-11-25 00:35:06 -05:00
Charles J. Cliffe
5977fb144b Missing freq assignment 2014-11-23 20:02:48 -05:00
Charles J. Cliffe
cae1855fc5 Move code out of frame, proper thread termination 2014-11-23 19:39:27 -05:00
Charles J. Cliffe
ac20bc1e84 Cleanup 2014-11-22 23:38:37 -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
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
8c6eea44b8 fix win32 include on non win32 2014-11-17 19:48:28 -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
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
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
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
Charles J. Cliffe
5554c92199 minor variable changes
demodulated frequency still shifted by about half?
2014-11-08 18:48:03 -05:00
Charles J. Cliffe
6c1ec6eba2 new demod test
working but frequency seems to be shifted?
2014-11-08 17:08:00 -05:00
Charles J. Cliffe
bd7d748e58 Experimenting with FM demod options 2014-11-07 13:51:43 -05:00
Charles J. Cliffe
44e7744855 filtering / fm demod experiments 2014-11-07 01:47:57 -05:00
Charles J. Cliffe
b6a658b819 more liquid dsp experiments 2014-11-07 00:27:06 -05:00
Charles J. Cliffe
428525e807 experimental liquid-dsp testing 2014-11-06 21:30:47 -05:00
Charles J. Cliffe
2092505e20 Adding buffer and testing demod functionality 2014-11-06 01:33:59 -05:00
Charles J. Cliffe
e0344d8efc Now playing FM through OpenAL!
great success!
2014-11-05 21:05:56 -05:00
Charles J. Cliffe
f071b2b025 Added OpenAL /w audio init test 2014-11-05 19:10:18 -05:00
Charles J. Cliffe
d91cffbe58 Now plotting spectrum and demodulated FM 2014-11-05 18:12:42 -05:00
Charles J. Cliffe
39afec2172 testing fm demodulation 2014-11-04 23:05:04 -05:00
Charles J. Cliffe
f22a929828 Started demodulator class based on rtl_fm.c 2014-11-04 21:55:20 -05:00
Charles J. Cliffe
7eae5517fa remove example code 2014-11-04 19:54:00 -05:00
Charles J. Cliffe
a8f1a87505 Can now control SDRThread freq. via thread task
Basic left/right keys bound for shifting frequency test.
2014-11-04 19:52:11 -05:00
Charles J. Cliffe
9896808b22 Clean-up / re-factor
thread queue and task handler compiling and program functional
2014-11-04 18:39:08 -05:00
Charles J. Cliffe
8dee90cd63 Starting work on threading model, incomplete
Includes experimental averaging of spectrum
2014-11-04 17:25:04 -05:00
Charles J. Cliffe
1cd8565fb3 Experiment to remove DC / other spikes
Seemed logical to use the repeating parts of the forward/back FFT
results to overlap and cancel out spikes -- seems to work?
2014-10-31 20:41:49 -04:00
Charles J. Cliffe
c4099cb690 Re-align spectrum view
DC spike now showing?
2014-10-31 19:10:53 -04:00
Charles J. Cliffe
eb4e10140a Now showing 2.5MHz bandwidth over FM ranges
Moves frequency back/forth over the FM range
2014-10-31 01:37:01 -04:00
Charles J. Cliffe
7fe286cf0c Now plotting IQ spectrum
seems to only be showing half the bandwidth..
2014-10-30 22:51:33 -04:00
Charles J. Cliffe
2ef8010438 Rendering rtl-sdr I/Q data to the GL canvas 2014-10-28 22:59:17 -04:00
Charles J. Cliffe
23f8c6a197 Now passing IQ data from SDR Thread to AppFrame 2014-10-28 21:39:59 -04:00
Charles J. Cliffe
0e25cbcc1a OSX now compiling and working 2014-10-27 23:52:25 -04:00
Charles J. Cliffe
5f0bc4f4f8 fix issue with SDRThread logging 2014-10-27 21:26:12 -04:00
Charles J. Cliffe
d27d91c1ef Code re-factor / cleanup
GL Window now ready to draw signal lines
2014-10-27 21:22:29 -04:00
Charles J. Cliffe
c2a37e7622 Initial experiment /w wxWidgets opengl view and sdr sampling.
Includes working rtl-sdr sampling thread test.
2014-10-27 20:05:40 -04:00