On Tue, Mar 12, 2024 at 9:01 PM Pavel Koshevoy <pkoshe...@gmail.com> wrote:
> From: Rajiv Harlalka <rajivharlalka...@gmail.com> > > Check for zeros equal to the total samples early, because in > that case we would already be leaving the first few frames out. > > Fixes trac ticket #10692 > --- > libavfilter/af_atempo.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/libavfilter/af_atempo.c b/libavfilter/af_atempo.c > index 4621b67b03..654b080e89 100644 > --- a/libavfilter/af_atempo.c > +++ b/libavfilter/af_atempo.c > @@ -531,21 +531,21 @@ static int yae_load_frag(ATempoContext *atempo, > dst = frag->data; > > start = atempo->position[0] - atempo->size; > - zeros = 0; > > - if (frag->position[0] < start) { > - // what we don't have we substitute with zeros: > - zeros = FFMIN(start - frag->position[0], (int64_t)nsamples); > - av_assert0(zeros != nsamples); > - > - memset(dst, 0, zeros * atempo->stride); > - dst += zeros * atempo->stride; > - } > + // what we don't have we substitute with zeros: > + zeros = > + frag->position[0] < start ? > + FFMIN(start - frag->position[0], (int64_t)nsamples) : 0; > > if (zeros == nsamples) { > return 0; > } > > + if (frag->position[0] < start) { > + memset(dst, 0, zeros * atempo->stride); > + dst += zeros * atempo->stride; > + } > + > // get the remaining data from the ring buffer: > na = (atempo->head < atempo->tail ? > atempo->tail - atempo->head : > -- > 2.35.3 > > This is a reformatting of an earlier patch from Rajiv -- https://ffmpeg.org/pipermail/ffmpeg-devel/2024-March/322946.html I've tested it locally -- looks good to me, feel free to apply and push. Thank you, Pavel. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".