Mictronics / readsb-protobuf

Readsb is a Mode-S/ADSB/TIS decoder for RTLSDR, BladeRF, Modes-Beast and GNS5894 devices. Future development version with protocol buffer storage.
Other
90 stars 25 forks source link

fix dropped counter for rtlsdr #21

Closed wiedehopf closed 2 years ago

wiedehopf commented 2 years ago

dropped counter static variable wasn't being reset outbuf->dropped wasn't being reset but unconditionally used always reset, remove not about DISCONTINOUS flag in fifo.h

wiedehopf commented 2 years ago

Simulating a single dropped sample every 1<<29 samples (every 110 seconds or so):

     outbuf->flags = 0;

+    if (sampleCounter % (1<<29) == 0) {
+        dropped += 1;
+    }
+
     if (dropped) {

Before the patch:

./readsb --device-type rtlsdr --quiet --stats --stats-every 60 2>&1 | grep sample
  144537800 samples processed
  1100 samples dropped
  144406402 samples processed
  1250 samples dropped
  144275004 samples processed
  2196 samples dropped
  144406402 samples processed
  2498 samples dropped
  144406402 samples processed
  3297 samples dropped

After the patch:

./readsb --device-type rtlsdr --quiet --stats --stats-every 60 2>&1 | grep sample
  144537800 samples processed
  1 samples dropped
  144406402 samples processed
  1 samples dropped
  144275004 samples processed
  0 samples dropped
  144406402 samples processed
  1 samples dropped