Commit Graph

963 Commits

Author SHA1 Message Date
Jared Boone 4d6fccd8ea Extract RecordView from AnalogAudioApp, CaptureApp. 2016-04-30 13:56:54 -07:00
Jared Boone 24192b4043 Capture: Write simple metadata for baseband and audio files.
Will probably turn the audio metadata file into .wav data, eventually.
2016-04-30 11:25:04 -07:00
Jared Boone a6d41547a0 Make CaptureAppView capture functions same as AnalogAudioView. 2016-04-30 11:09:39 -07:00
Jared Boone 18e40562b5 Oops, 128K is not enough. 2016-04-29 11:27:31 -07:00
Jared Boone 12b8a1b2a9 Change next-file naming functions to work on filename stems.
This paves the way for writing metadata files with similar prefixes, and avoids confusing numbering of capture files with different extensions (e.g. BAD_0000.S16 and BBD_0000.S8).
2016-04-29 11:27:12 -07:00
Jared Boone dc8c34487f Speed dropped_percent() common case, ensure dropped>0 returns >0%. 2016-04-27 12:16:37 -07:00
Jared Boone be9f3362da Display percent of data dropped during capture to SD card. 2016-04-27 12:07:31 -07:00
Jared Boone 6ee886b90e Expose capture state to the UI. 2016-04-27 12:06:47 -07:00
Jared Boone a72a3489cf Expose percent of data dropped during capture. 2016-04-27 12:04:02 -07:00
Jared Boone 11d15ec5b5 Add second tick handler for CaptureThread. 2016-04-27 12:03:43 -07:00
Jared Boone 8188b44439 Add Signal for per-second tick callbacks. 2016-04-27 12:02:17 -07:00
Jared Boone 7430e31578 Extract CaptureConfig from StreamOutput to CaptureThread.
So capture stats can be exposed by CaptureThread.
2016-04-27 10:56:50 -07:00
Jared Boone 75159fcc00 Use static StreamOutput::fifo for accessor methods. 2016-04-27 10:52:11 -07:00
Jared Boone dc1ba7e6f3 Move CaptureThread::write_size into run(). 2016-04-27 10:44:44 -07:00
Jared Boone 1789868b8a Track bytes from baseband and dropped when entering capture FIFO. 2016-04-27 10:40:50 -07:00
Jared Boone d63136c52e Remove unused StreamInput::written(). 2016-04-27 10:32:29 -07:00
Jared Boone d2cf129fd5 Retain CaptureConfig pointer in StreamInput. 2016-04-27 10:32:06 -07:00
Jared Boone 3e08318012 Pass CaptureConfig to StreamInput as pointer. 2016-04-27 10:31:37 -07:00
Jared Boone ca5dadab93 Set CaptureThread::thread to null after thread is released.
Was having a timing problem where ISR was still trying to signal thread after thread was nulled.
2016-04-27 10:13:50 -07:00
Jared Boone 4a348e2c6c Revise CaptureThread loop to not get stuck if SD write speed too slow. 2016-04-27 10:12:21 -07:00
Jared Boone f250f30ada Update compiler to GCC-ARM 2016q1 (20160330) 2016-04-26 22:37:58 -07:00
Jared Boone 91ee2dbb67 Move FIFO and write size to CaptureConfig structure.
Now configured from baseband, where write size and appropriate FIFO size is known.
2016-04-26 22:26:30 -07:00
Jared Boone 01fc6b9bc9 Remove redundant values in I2C struct. 2016-04-26 16:17:53 -07:00
Jared Boone 93ecf9ef82 Remove unused ldscript. 2016-04-26 16:16:04 -07:00
Jared Boone 0662196905 Fix audio codec I2C reliability for some HackRF units. 2016-04-26 13:06:46 -07:00
Jared Boone ed3ac5249f Move MessageQueue::signal into .cpp file. 2016-04-23 22:00:27 -07:00
Jared Boone c585f3d4ea Rename EVT_FIFO_HIGHWATER -> EVT_MASK_CAPTURE_THREAD. 2016-04-23 17:30:55 -07:00
Jared Boone 3103e9b80e Remove unused EventDispatcher::thread_record. 2016-04-23 17:26:54 -07:00
Jared Boone d5e21ce972 Use CaptureConfig to share state between cores.
Remove awful FIFO_HACK.
TODO: Lots of repeated code...
TODO: Capture thread is signalled too frequently.
2016-04-23 15:07:44 -07:00
Jared Boone 67eb62ec12 Provide AudioOutput::set_stream().
Assign when wanting to capture audio stream.
2016-04-23 14:55:59 -07:00
Jared Boone 7436dea51a Add CaptureConfig structure and message. 2016-04-23 14:54:15 -07:00
Jared Boone 8b8b394792 Hide FIFO hack inside StreamOutput.
First step in a long refactor and evolution of the capture code.
2016-04-22 16:21:31 -07:00
Jared Boone adf573be20 Add simple record UI to audio app. 2016-04-22 12:30:02 -07:00
Jared Boone a6538bc48b Rename AudioThread -> CaptureThread.
...since it's doing baseband capturing too, and doesn't really know what kind of data it's moving.
2016-04-22 12:15:51 -07:00
Jared Boone b8196ee2be Rename capture UI record objects and functions. 2016-04-22 12:08:01 -07:00
Jared Boone f2453dd639 Consolidate bitmaps for reuse. 2016-04-22 11:57:46 -07:00
Jared Boone 27a1423309 De-constexpr a few UI constructors.
Because it was silly.
2016-04-22 11:18:35 -07:00
Jared Boone 61b5faf8b5 Clean up AnalogAudioView::on_show_options_modulation(). 2016-04-22 10:22:47 -07:00
Jared Boone 760c73a7be Move field.set_style()s after all participating widgets' styles are reset. 2016-04-22 10:16:42 -07:00
Jared Boone c650536934 Hide remove_widget() in set_options_widget(). 2016-04-22 10:01:17 -07:00
Jared Boone 051a63a222 Fix and clean up calculation of filter passband in capture mode. 2016-04-21 11:55:03 -07:00
Jared Boone 28ca45326d Fix capture mode baseband_fs value. 2016-04-21 11:54:39 -07:00
Jared Boone 09a39f780a Show capture file name. 2016-04-21 11:45:57 -07:00
Jared Boone ee51d7fa67 Make room in capture mode for other controls. 2016-04-21 11:45:37 -07:00
Jared Boone 857fba6309 Change justification of spectrum right tick label. 2016-04-21 11:36:07 -07:00
Jared Boone e4b86d149c Change file recording behavior to create new file instead of appending. 2016-04-20 10:24:39 -07:00
Jared Boone f38fca168e Use sequential file naming for baseband capture files. 2016-04-20 10:23:59 -07:00
Jared Boone 9d635b3fcf Use sequential file naming for audio recording. 2016-04-20 10:22:50 -07:00
Jared Boone 1c544a663b Use automatic file naming for screen capture .png files. 2016-04-20 10:22:05 -07:00
Jared Boone f49d04fe7a Functions to select next filename based on matching pattern.
Used for capture, audio, screenshot file naming.
2016-04-20 09:57:17 -07:00