From b2322370a99e94ee7367c49a7f16c7c4dae42aa7 Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Wed, 11 May 2016 11:22:57 -0700 Subject: [PATCH] Display remaining capture time on SD card. --- firmware/application/ui_record_view.cpp | 6 ++++++ firmware/application/ui_record_view.hpp | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/firmware/application/ui_record_view.cpp b/firmware/application/ui_record_view.cpp index 8db26f2b0..96a368d6a 100644 --- a/firmware/application/ui_record_view.cpp +++ b/firmware/application/ui_record_view.cpp @@ -151,6 +151,7 @@ RecordView::RecordView( &button_record, &text_record_filename, &text_record_dropped, + &text_time_recorded, } }); button_record.on_select = [this](ImageButton&) { @@ -245,6 +246,11 @@ void RecordView::on_tick_second() { const auto dropped_percent = std::min(99U, capture_thread->state().dropped_percent()); const auto s = to_string_dec_uint(dropped_percent, 2, ' ') + "\%"; text_record_dropped.set(s); + + const auto space_info = std::filesystem::space(""); + const uint32_t bytes_per_second = file_type == FileType::WAV ? (sampling_rate * 2) : (sampling_rate * 4); + const uint32_t free_seconds = space_info.free / bytes_per_second; + text_time_recorded.set(to_string_dec_uint(free_seconds, 6, ' ') + "s"); } } diff --git a/firmware/application/ui_record_view.hpp b/firmware/application/ui_record_view.hpp index 88d77fd29..3c0901c6d 100644 --- a/firmware/application/ui_record_view.hpp +++ b/firmware/application/ui_record_view.hpp @@ -95,6 +95,11 @@ private: "", }; + Text text_time_recorded { + { 23 * 8, 0 * 16, 7 * 8, 16 }, + "", + }; + std::unique_ptr capture_thread; };