On Mon, 19 Dec 2016, Marton Balint wrote:


On Sat, 17 Dec 2016, pkoshe...@gmail.com wrote:

From: Pavel Koshevoy <pkoshe...@gmail.com>

Steps to reproduce:
./ffmpeg_g -f s16be -i /dev/null -af atempo=0.5 -y /tmp/atempo.wav
---
libavfilter/af_atempo.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavfilter/af_atempo.c b/libavfilter/af_atempo.c
index 59b08ec..a487882 100644
--- a/libavfilter/af_atempo.c
+++ b/libavfilter/af_atempo.c
@@ -914,8 +914,8 @@ static int yae_flush(ATempoContext *atempo,

    atempo->state = YAE_FLUSH_OUTPUT;

-    if (atempo->position[0] == frag->position[0] + frag->nsamples &&
-        atempo->position[1] == frag->position[1] + frag->nsamples) {
+    if (atempo->position[0] >= frag->position[0] + frag->nsamples &&
+        atempo->position[1] >= frag->position[1] + frag->nsamples) {
        // the current fragment is already flushed:
        return 0;
    }

Thanks, this indeed fixes the assertion I came accross.

Hmm, this patch seems to cause cut off data at the end, as reported in https://trac.ffmpeg.org/ticket/6540

Pavel, would you mind taking a look?

Thanks,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to