Oversample capturing for low bandwidths (#1332)

* draft_low_bit_rate_solution_Capture_App

* second_draft_dynamic_decim

* Add support for Oversample Rate to capture.

---------

Co-authored-by: Brumi-2021 <ea3hqj@gmail.com>
This commit is contained in:
Kyle Reed 2023-07-31 08:46:07 -07:00 committed by GitHub
parent a24b3ad3de
commit d24ff7b3bc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 132 additions and 43 deletions

View file

@ -111,6 +111,7 @@ class Message {
APRSRxConfigure = 54,
SpectrumPainterBufferRequestConfigure = 55,
SpectrumPainterBufferResponseConfigure = 56,
OversampleRateConfig = 57,
MAX
};
@ -809,6 +810,23 @@ class SamplerateConfigMessage : public Message {
const uint32_t sample_rate = 0;
};
/* Controls decimation handling in proc_capture. */
enum class OversampleRate : uint8_t {
Rate8x = 8,
Rate16x = 16,
};
class OversampleRateConfigMessage : public Message {
public:
constexpr OversampleRateConfigMessage(
OversampleRate oversample_rate)
: Message{ID::OversampleRateConfig},
oversample_rate(oversample_rate) {
}
const OversampleRate oversample_rate{OversampleRate::Rate8x};
};
class AudioLevelReportMessage : public Message {
public:
constexpr AudioLevelReportMessage()