Add code to the self test to print jitter & drift.
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 6 Mar 2009 20:48:31 +0000 (20:48 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 6 Mar 2009 20:48:31 +0000 (20:48 +0000)
Originally committed as revision 17857 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/timefilter.c

index 0949ec7..0c3099d 100644 (file)
@@ -81,8 +81,14 @@ int main(void)
 #define SAMPLES 1000
     double ideal[SAMPLES];
     double samples[SAMPLES];
+#if 1
     for(n0= 0; n0<40; n0=2*n0+1){
         for(n1= 0; n1<10; n1=2*n1+1){
+#else
+    {{
+        n0=7;
+        n1=1;
+#endif
             double best_error= 1000000000;
             double bestpar0=1;
             double bestpar1=0.001;
@@ -116,7 +122,19 @@ int main(void)
                     }
                 }
             }while(better);
+#if 0
+            double lastfil=9;
+            TimeFilter *tf= ff_timefilter_new(1, bestpar0, bestpar1);
+            for(i=0; i<SAMPLES; i++){
+                double filtered;
+                filtered=  ff_timefilter_update(tf, samples[i], 1);
+                printf("%f %f %f %f\n", i - samples[i] + 10, filtered - samples[i], samples[FFMAX(i, 1)] - samples[FFMAX(i-1, 0)], filtered - lastfil);
+                lastfil= filtered;
+            }
+            ff_timefilter_destroy(tf);
+#else
             printf(" [%f %f %f]", bestpar0, bestpar1, best_error);
+#endif
         }
         printf("\n");
     }