AM, NFM and DSD demod fixes

pull/480/head
f4exb 2019-11-24 10:11:50 +01:00
rodzic 5c5079108b
commit 4005b70175
3 zmienionych plików z 9 dodań i 1 usunięć

Wyświetl plik

@ -61,12 +61,13 @@ void AMDemodBaseband::reset()
void AMDemodBaseband::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end)
{
QMutexLocker mutexLocker(&m_mutex);
m_sampleFifo.write(begin, end);
}
void AMDemodBaseband::handleData()
{
QMutexLocker mutexLocker(&m_mutex);
while ((m_sampleFifo.fill() > 0) && (m_inputMessageQueue.size() == 0))
{
SampleVector::iterator part1begin;
@ -169,4 +170,5 @@ int AMDemodBaseband::getChannelSampleRate() const
void AMDemodBaseband::setBasebandSampleRate(int sampleRate)
{
m_channelizer->setBasebandSampleRate(sampleRate);
m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
}

Wyświetl plik

@ -68,6 +68,8 @@ void DSDDemodBaseband::feed(const SampleVector::const_iterator& begin, const Sam
void DSDDemodBaseband::handleData()
{
QMutexLocker mutexLocker(&m_mutex);
while ((m_sampleFifo.fill() > 0) && (m_inputMessageQueue.size() == 0))
{
SampleVector::iterator part1begin;
@ -171,4 +173,5 @@ int DSDDemodBaseband::getChannelSampleRate() const
void DSDDemodBaseband::setBasebandSampleRate(int sampleRate)
{
m_channelizer->setBasebandSampleRate(sampleRate);
m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
}

Wyświetl plik

@ -65,6 +65,8 @@ void NFMDemodBaseband::feed(const SampleVector::const_iterator& begin, const Sam
void NFMDemodBaseband::handleData()
{
QMutexLocker mutexLocker(&m_mutex);
while ((m_sampleFifo.fill() > 0) && (m_inputMessageQueue.size() == 0))
{
SampleVector::iterator part1begin;
@ -167,4 +169,5 @@ int NFMDemodBaseband::getChannelSampleRate() const
void NFMDemodBaseband::setBasebandSampleRate(int sampleRate)
{
m_channelizer->setBasebandSampleRate(sampleRate);
m_sink.applyChannelSettings(m_channelizer->getChannelSampleRate(), m_channelizer->getChannelFrequencyOffset());
}