diff mbox series

[FFmpeg-devel] af_tempo.c: fix checking of samples and zero frame counts

Message ID CAO4Xbpjqt7U5dPiCybXnVsPWonDyphHcYR0Xb13UrS=kd2+BKw@mail.gmail.com
State New
Headers show
Series [FFmpeg-devel] af_tempo.c: fix checking of samples and zero frame counts | expand

Checks

Context Check Description
andriy/configure_x86 warning Failed to apply patch
yinshiyou/configure_loongarch64 warning Failed to apply patch

Commit Message

Rajiv Harlalka March 7, 2024, 10:58 p.m. UTC
Check for zeros equal to the total samples early, because in case the check
is true we would already be leaving the first few frames out.

Signed-off-by: Rajiv Harlalka <rajivharlalka009@gmail.com>
#10692
---
libavfilter/af_atempo.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)

ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
diff mbox series

Patch

diff --git a/libavfilter/af_atempo.c b/libavfilter/af_atempo.c
index 4621b67b03..8f31c5beaf 100644
--- a/libavfilter/af_atempo.c
+++ b/libavfilter/af_atempo.c
@@ -531,21 +531,20 @@  static int yae_load_frag(ATempoContext *atempo,
dst = frag->data;
start = atempo->position[0] - atempo->size;
- zeros = 0;
+ // 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) {
- // 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;
}
- if (zeros == nsamples) {
- return 0;
- }
-
// get the remaining data from the ring buffer:
na = (atempo->head < atempo->tail ?
atempo->tail - atempo->head :
-- 
2.44.0
_______________________________________________
ffmpeg-devel mailing list