mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-09-29 16:26:47 -04:00
IQ imbalance fix: the I branch has to remain the reference
This commit is contained in:
parent
7fcbbccb33
commit
4b2dfd488e
@ -234,8 +234,8 @@ void DSPDeviceSourceEngine::iqCorrections(SampleVector::iterator begin, SampleVe
|
|||||||
m_avgPhi(m_avgIQ.asDouble()/m_avgII.asDouble());
|
m_avgPhi(m_avgIQ.asDouble()/m_avgII.asDouble());
|
||||||
}
|
}
|
||||||
|
|
||||||
float yi = xi - m_avgPhi.asDouble()*xq;
|
float& yi = xi; // the in phase remains the reference
|
||||||
float yq = xq;
|
float yq = xq - m_avgPhi.asDouble()*xi;
|
||||||
|
|
||||||
// amplitude I/Q imbalance
|
// amplitude I/Q imbalance
|
||||||
m_avgII2(yi*yi); // <I, I>
|
m_avgII2(yi*yi); // <I, I>
|
||||||
@ -246,7 +246,7 @@ void DSPDeviceSourceEngine::iqCorrections(SampleVector::iterator begin, SampleVe
|
|||||||
}
|
}
|
||||||
|
|
||||||
// final correction
|
// final correction
|
||||||
float zi = yi;
|
float& zi = yi; // the in phase remains the reference
|
||||||
float zq = m_avgAmp.asDouble() * yq;
|
float zq = m_avgAmp.asDouble() * yq;
|
||||||
|
|
||||||
// convert and store
|
// convert and store
|
||||||
|
Loading…
Reference in New Issue
Block a user