X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libswresample%2Fresample.c;h=e65a57a87722b8dd9da9cf4fbe59e3e612e48bba;hb=a8cb567e559a99c27bd936a81422147cb23e77a6;hp=8635bf1bed41ca85b2c85e1e55abe10f3b37bc47;hpb=0bd76401d1666bf8f0a67946d761ed9ba4751e49;p=ffmpeg diff --git a/libswresample/resample.c b/libswresample/resample.c index 8635bf1bed4..e65a57a8772 100644 --- a/libswresample/resample.c +++ b/libswresample/resample.c @@ -496,7 +496,12 @@ static int swri_resample(ResampleContext *c, dst_size = FFMIN(dst_size, delta_n); if (dst_size > 0) { - *consumed = c->dsp.resample(c, dst, src, dst_size, update_ctx); + /* resample_linear and resample_common should have same behavior + * when frac and dst_incr_mod are zero */ + if (c->linear && (c->frac || c->dst_incr_mod)) + *consumed = c->dsp.resample_linear(c, dst, src, dst_size, update_ctx); + else + *consumed = c->dsp.resample_common(c, dst, src, dst_size, update_ctx); } else { *consumed = 0; }