mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-12 16:47:31 -05:00
#1351 Restores semi-accurate timestamps of sample buffers to ensure P25 & DMR decoded messages have accurate timestamps and MBE recording voice frames have accurate timestamps. (#1357)
Co-authored-by: Dennis Sheirer <dsheirer@github.com>
This commit is contained in:
@@ -214,7 +214,7 @@ public class AirspyUnpackedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyBufferIteratorScalar iterator = new AirspyBufferIteratorScalar(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -235,7 +235,7 @@ public class AirspyUnpackedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyBufferIteratorVector64Bits iterator = new AirspyBufferIteratorVector64Bits(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -255,7 +255,7 @@ public class AirspyUnpackedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyBufferIteratorVector128Bits iterator = new AirspyBufferIteratorVector128Bits(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -276,7 +276,8 @@ public class AirspyUnpackedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyBufferIteratorVector256Bits iterator =
|
||||
new AirspyBufferIteratorVector256Bits(samples, residualI, residualQ, 0.0f, System.currentTimeMillis());
|
||||
new AirspyBufferIteratorVector256Bits(samples, residualI, residualQ, 0.0f,
|
||||
System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -297,7 +298,8 @@ public class AirspyUnpackedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyBufferIteratorVector512Bits iterator =
|
||||
new AirspyBufferIteratorVector512Bits(samples, residualI, residualQ, 0.0f, System.currentTimeMillis());
|
||||
new AirspyBufferIteratorVector512Bits(samples, residualI, residualQ, 0.0f,
|
||||
System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
|
||||
@@ -225,7 +225,7 @@ public class AirspyUnpackedInterleavedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyInterleavedBufferIteratorScalar iterator = new AirspyInterleavedBufferIteratorScalar(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -246,7 +246,7 @@ public class AirspyUnpackedInterleavedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyInterleavedBufferIteratorVector64Bits iterator = new AirspyInterleavedBufferIteratorVector64Bits(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -267,7 +267,7 @@ public class AirspyUnpackedInterleavedCalibration extends Calibration
|
||||
for(int x = 0; x < ITERATION_DURATION_MS; x++)
|
||||
{
|
||||
AirspyInterleavedBufferIteratorVector128Bits iterator = new AirspyInterleavedBufferIteratorVector128Bits(samples, residualI,
|
||||
residualQ, 0.0f, System.currentTimeMillis());
|
||||
residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -288,7 +288,7 @@ public class AirspyUnpackedInterleavedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyInterleavedBufferIteratorVector256Bits iterator =
|
||||
new AirspyInterleavedBufferIteratorVector256Bits(samples, residualI, residualQ, 0.0f, System.currentTimeMillis());
|
||||
new AirspyInterleavedBufferIteratorVector256Bits(samples, residualI, residualQ, 0.0f, System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
@@ -309,7 +309,8 @@ public class AirspyUnpackedInterleavedCalibration extends Calibration
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
AirspyInterleavedBufferIteratorVector512Bits iterator =
|
||||
new AirspyInterleavedBufferIteratorVector512Bits(samples, residualI, residualQ, 0.0f, System.currentTimeMillis());
|
||||
new AirspyInterleavedBufferIteratorVector512Bits(samples, residualI, residualQ, 0.0f,
|
||||
System.currentTimeMillis(), 0.0f);
|
||||
|
||||
while(iterator.hasNext() && ((System.currentTimeMillis() - start) < ITERATION_DURATION_MS))
|
||||
{
|
||||
|
||||
@@ -121,7 +121,7 @@ public class ComplexGainCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples amplified = scalar.apply(i, q);
|
||||
ComplexSamples amplified = scalar.apply(i, q, start);
|
||||
accumulator += amplified.i()[2];
|
||||
count++;
|
||||
}
|
||||
@@ -140,7 +140,7 @@ public class ComplexGainCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples amplified = scalar.apply(i, q);
|
||||
ComplexSamples amplified = scalar.apply(i, q, start);
|
||||
accumulator += amplified.i()[2];
|
||||
count++;
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@ public class ComplexGainControlCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples amplified = mScalarGainControl.process(i, q);
|
||||
ComplexSamples amplified = mScalarGainControl.process(i, q, 0l);
|
||||
accumulator += amplified.i()[2];
|
||||
count++;
|
||||
}
|
||||
@@ -133,7 +133,7 @@ public class ComplexGainControlCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples amplified = mVectorGainControl.process(i, q);
|
||||
ComplexSamples amplified = mVectorGainControl.process(i, q, 0l);
|
||||
accumulator += amplified.i()[2];
|
||||
count++;
|
||||
}
|
||||
|
||||
@@ -255,7 +255,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mScalar.filter(samples);
|
||||
ComplexSamples complex = mScalar.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
@@ -272,7 +272,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mVectorPreferred.filter(samples);
|
||||
ComplexSamples complex = mVectorPreferred.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
@@ -289,7 +289,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mVector512.filter(samples);
|
||||
ComplexSamples complex = mVector512.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
@@ -306,7 +306,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mVector256.filter(samples);
|
||||
ComplexSamples complex = mVector256.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
@@ -323,7 +323,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mVector128.filter(samples);
|
||||
ComplexSamples complex = mVector128.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
@@ -340,7 +340,7 @@ public class HilbertCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples complex = mVector64.filter(samples);
|
||||
ComplexSamples complex = mVector64.filter(samples, start);
|
||||
accumulator += complex.i()[0];
|
||||
count++;
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ public class ComplexMixerCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples mixed = mScalarComplexMixer.mix(i, q);
|
||||
ComplexSamples mixed = mScalarComplexMixer.mix(i, q, start);
|
||||
accumulator += mixed.i()[2];
|
||||
count++;
|
||||
}
|
||||
@@ -131,7 +131,7 @@ public class ComplexMixerCalibration extends Calibration
|
||||
|
||||
while((System.currentTimeMillis() - start) < ITERATION_DURATION_MS)
|
||||
{
|
||||
ComplexSamples mixed = mVectorComplexMixer.mix(i, q);
|
||||
ComplexSamples mixed = mVectorComplexMixer.mix(i, q, start);
|
||||
accumulator += mixed.i()[2];
|
||||
count++;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user