Commit b64de24f authored by sedacca@comcast.net's avatar sedacca@comcast.net Committed by Clément Bœsch

lavfi/ebur128: advance pointer to samples

Correct the advancement of a pointer to skip over LFE samples as
intended in the loudness computation.

This suggested patch is 3 of 3 for Ticket #2144 "libavfilter ebur128
loudness inaccuracy, irregular time interval, LFE interference".
This suggested patch supersedes the contribution of January 15, 2013
in the thread “[PATCH] lavfi: EBU R.128 irreg time, ch weights, skip
LFE” which combined multiple fixes in one batch.
parent de21e673
......@@ -478,6 +478,8 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *insamples)
for (ch = 0; ch < nb_channels; ch++) {
double bin;
ebur128->x[ch * 3] = *samples++; // set X[i]
if (!ebur128->ch_weighting[ch])
continue;
......@@ -491,8 +493,6 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *insamples)
- dst[1]*name##_A1 - dst[2]*name##_A2; \
} while (0)
ebur128->x[ch * 3] = *samples++; // set X[i]
// TODO: merge both filters in one?
FILTER(y, x, PRE); // apply pre-filter
ebur128->x[ch * 3 + 2] = ebur128->x[ch * 3 + 1];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment