提交 f69f050a 编写于 作者: P Paul B Mahol

avfilter/af_sofalizer: fix calculation of split point

Signed-off-by: NPaul B Mahol <onemda@gmail.com>
上级 b51e7554
......@@ -652,8 +652,10 @@ static int sofalizer_convolute(AVFilterContext *ctx, void *arg, int jobnr, int n
if (read + n_samples < buffer_length) {
memcpy(temp_src, bptr + read, n_samples * sizeof(*temp_src));
} else {
memcpy(temp_src, bptr + read, (buffer_length - read) * sizeof(*temp_src));
memcpy(temp_src + (buffer_length - read), bptr, (read - n_samples) * sizeof(*temp_src));
int len = FFMIN(n_samples - (read % n_samples), buffer_length - read);
memcpy(temp_src, bptr + read, len * sizeof(*temp_src));
memcpy(temp_src + len, bptr, (n_samples - len) * sizeof(*temp_src));
}
/* multiply signal and IR, and add up the results */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册