diff --git a/libavdevice/timefilter.c b/libavdevice/timefilter.c
index 5c77783f56b675826a1dd79ab983d3dfbf2dcd0a..5fdeb3e4f2f3c5978ee60b1c908823f2b1f75f2a 100644
--- a/libavdevice/timefilter.c
+++ b/libavdevice/timefilter.c
@@ -118,7 +118,8 @@ int main(void)
                 double par0, par1;
                 better = 0;
                 for (par0 = bestpar0 * 0.8; par0 <= bestpar0 * 1.21; par0 += bestpar0 * 0.05) {
-                    for (par1 = bestpar1 * 0.8; par1 <= bestpar1 * 1.21; par1 += bestpar1 * 0.05) {
+                    double range = n0 ? 0.8 : 1.0;
+                    for (par1 = bestpar1 * range; par1 <= bestpar1 * (2.01 - range); par1 += bestpar1 * 0.05) {
                         double error   = 0;
                         TimeFilter *tf = ff_timefilter_new(1, par0, par1);
                         for (i = 0; i < SAMPLES; i++) {
diff --git a/tests/ref/fate/timefilter b/tests/ref/fate/timefilter
index 5a61f79aa001311abf48f0fab689ce7bbc2d8214..942ac1b04e942a52f02e9db726635892ba0ea8eb 100644
--- a/tests/ref/fate/timefilter
+++ b/tests/ref/fate/timefilter
@@ -1,4 +1,4 @@
- [   0.800000    0.800000  0.000000] [   0.800000 2758.779681  0.000000] [   0.800000 3881.880055  0.000000] [   0.800000 5213.913473  0.000000]
+ [   0.800000    1.000000  0.000000] [1689.810931    1.000000  0.000000] [2480.175715    1.000000  0.000000] [3323.672664    1.000000  0.000000]
  [1688.672234    0.000000  0.018551] [  21.026792    0.000401  0.068856] [   1.162481    0.008576  0.121287] [   0.803356    0.016078  0.153518]
  [1218.378235    0.000000  0.167011] [  12.908626    0.000281  0.296858] [  21.026792    0.000401  0.619608] [   2.064064    0.004760  1.020336]
  [1218.378235    0.000000  0.909282] [  10.047626    0.000191  0.873495] [  14.909464    0.000297  1.935407] [  21.026792    0.000401  3.373312]