#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:
Denny Sheirer
2022-12-17 06:39:35 -05:00
committed by GitHub
parent 047dec6da1
commit bc462b9652
79 changed files with 607 additions and 733 deletions

View File

@@ -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))
{

View File

@@ -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))
{

View File

@@ -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++;
}

View File

@@ -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++;
}

View File

@@ -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++;
}

View File

@@ -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++;
}