avfilter/af_apsyclip: fix peak overestimation

Ignore more samples that are near the edge of the block. The reason
is that the filtering tends to cause these samples to go above the
window more than the samples near the middle. If these samples are
included in the unwindowed peak estimation, the peak can be
overestimated. Because the block is windowed again before
overlapping, overshoots near the edge of the block are not very
important.

0.1 is the value from the version originally contributed to calf.

Signed-off-by: Jason Jang <jcj83429@gmail.com>
release/5.1
Jason Jang 3 years ago committed by Paul B Mahol
parent b4ad13420f
commit 18fceb9926
  1. 2
      libavfilter/af_apsyclip.c

@ -87,7 +87,7 @@ static void generate_hann_window(float *window, float *inv_window, int size)
window[i] = value;
// 1/window to calculate unwindowed peak.
inv_window[i] = value > 0.01f ? 1.f / value : 0.f;
inv_window[i] = value > 0.1f ? 1.f / value : 0.f;
}
}

Loading…
Cancel
Save