From 14430bcb489eeb6756c37cd9d07c31b364916706 Mon Sep 17 00:00:00 2001 From: srcejon Date: Thu, 4 Jan 2024 17:05:10 +0000 Subject: [PATCH] #1944 - Fix frequency calculation for SSB spectrum --- sdrgui/gui/glspectrumview.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sdrgui/gui/glspectrumview.cpp b/sdrgui/gui/glspectrumview.cpp index a6d83347f..72e3b3736 100644 --- a/sdrgui/gui/glspectrumview.cpp +++ b/sdrgui/gui/glspectrumview.cpp @@ -2444,13 +2444,13 @@ float GLSpectrumView::calPower(float power) const int GLSpectrumView::frequencyToBin(int64_t frequency) const { - float rbw = m_sampleRate / (float)m_fftSize; + float rbw = (m_ssbSpectrum ? (m_sampleRate/2) : m_sampleRate) / (float)m_fftSize; return (frequency - m_frequencyScale.getRangeMin()) / rbw; } int64_t GLSpectrumView::binToFrequency(int bin) const { - float rbw = m_sampleRate / (float)m_fftSize; + float rbw = (m_ssbSpectrum ? (m_sampleRate/2) : m_sampleRate) / (float)m_fftSize; return m_frequencyScale.getRangeMin() + bin * rbw; } @@ -3453,6 +3453,9 @@ void GLSpectrumView::applyChanges() void GLSpectrumView::updateHistogramMarkers() { + if (m_sampleRate == 0) { + return; + } int64_t centerFrequency; int frequencySpan; getFrequencyZoom(centerFrequency, frequencySpan);