Decode status widget (#1431)

* Initial cleanup of pocsag beta, using DSP filters

* Better filter params

* Better filter

* Add signal diagnostics widgets

* POCSAG procs sends stats messages

* Only draw 32 bits

* Add AudioNormalizer filter
This commit is contained in:
Kyle Reed
2023-09-03 21:49:44 -07:00
committed by GitHub
parent 2435ee780f
commit 4819a2f4e2
9 changed files with 305 additions and 230 deletions

View File

@@ -77,12 +77,6 @@ constexpr iir_biquad_config_t audio_24k_deemph_300_6_config{
{0.03780475f, 0.03780475f, 0.00000000f},
{1.00000000f, -0.92439049f, 0.00000000f}};
// scipy.signal.butter(1, 2400 / 12000.0, 'lowpass', analog=False)
// NOTE: Technically, order-1 filter, b[2] = a[2] = 0.
constexpr iir_biquad_config_t audio_24k_lpf_2400hz_config{
{0.03780475f, 0.03780475f, 0.00000000f},
{1.00000000f, -0.92439049f, 0.00000000f}};
// scipy.signal.butter(1, 300 / 8000.0, 'lowpass', analog=False)
// NOTE: Technically, order-1 filter, b[2] = a[2] = 0.
constexpr iir_biquad_config_t audio_16k_deemph_300_6_config{

View File

@@ -344,12 +344,18 @@ class POCSAGPacketMessage : public Message {
class POCSAGStatsMessage : public Message {
public:
constexpr POCSAGStatsMessage(
uint16_t baud_rate)
uint32_t current_bits,
uint8_t current_frames,
bool has_sync)
: Message{ID::POCSAGStats},
baud_rate_{baud_rate} {
current_bits{current_bits},
current_frames{current_frames},
has_sync{has_sync} {
}
uint16_t baud_rate_;
uint32_t current_bits = 0;
uint8_t current_frames = 0;
bool has_sync = false;
};
class ACARSPacketMessage : public Message {