mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-12-23 10:05:46 -05:00
Fix 32-bit float support for Spy Server.
This commit is contained in:
parent
fafeb822d9
commit
3522feb355
@ -1096,10 +1096,32 @@ void RemoteTCPInputTCPHandler::convert(int nbSamples)
|
|||||||
m_converterBuffer = new int32_t[nbSamples*2];
|
m_converterBuffer = new int32_t[nbSamples*2];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((m_settings.m_sampleBits == 32) && (SDR_RX_SAMP_SZ == 24))
|
if ((m_settings.m_sampleBits == 32) && (SDR_RX_SAMP_SZ == 24) && !m_spyServer)
|
||||||
{
|
{
|
||||||
m_sampleFifo->write(reinterpret_cast<quint8*>(m_tcpBuf), nbSamples*sizeof(Sample));
|
m_sampleFifo->write(reinterpret_cast<quint8*>(m_tcpBuf), nbSamples*sizeof(Sample));
|
||||||
}
|
}
|
||||||
|
else if ((m_settings.m_sampleBits == 32) && (SDR_RX_SAMP_SZ == 24) && m_spyServer)
|
||||||
|
{
|
||||||
|
float *in = (float *)m_tcpBuf;
|
||||||
|
qint32 *out = (qint32 *)m_converterBuffer;
|
||||||
|
|
||||||
|
for (int is = 0; is < nbSamples*2; is++) {
|
||||||
|
out[is] = (qint32)(in[is] * SDR_RX_SCALEF);
|
||||||
|
}
|
||||||
|
|
||||||
|
m_sampleFifo->write(reinterpret_cast<quint8*>(out), nbSamples*sizeof(Sample));
|
||||||
|
}
|
||||||
|
else if ((m_settings.m_sampleBits == 32) && (SDR_RX_SAMP_SZ == 16) && m_spyServer)
|
||||||
|
{
|
||||||
|
float *in = (float *)m_tcpBuf;
|
||||||
|
qint16 *out = (qint16 *)m_converterBuffer;
|
||||||
|
|
||||||
|
for (int is = 0; is < nbSamples*2; is++) {
|
||||||
|
out[is] = (qint16)(in[is] * SDR_RX_SCALEF);
|
||||||
|
}
|
||||||
|
|
||||||
|
m_sampleFifo->write(reinterpret_cast<quint8*>(out), nbSamples*sizeof(Sample));
|
||||||
|
}
|
||||||
else if ((m_settings.m_sampleBits == 8) && (SDR_RX_SAMP_SZ == 16))
|
else if ((m_settings.m_sampleBits == 8) && (SDR_RX_SAMP_SZ == 16))
|
||||||
{
|
{
|
||||||
quint8 *in = (quint8 *)m_tcpBuf;
|
quint8 *in = (quint8 *)m_tcpBuf;
|
||||||
|
Loading…
Reference in New Issue
Block a user