From patchwork Mon Sep 4 02:44:31 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavel Koshevoy X-Patchwork-Id: 4970 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.15.201 with SMTP id 70csp2711634jao; Sun, 3 Sep 2017 20:07:32 -0700 (PDT) X-Received: by 10.223.181.131 with SMTP id c3mr3298148wre.1.1504494452879; Sun, 03 Sep 2017 20:07:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1504494452; cv=none; d=google.com; s=arc-20160816; b=ADAA7F88beAoxQXhNSu6wQuXG3nOUSWJMdUc4Qsjs/2bubYAKpVAG/+b6UcnilaP93 MhUqkO1BZH2i3BEJYPeKz+UrhWPsaObLyiHXHHhkIMXOD59YHNFDv0scADubp7xcCBW4 D2Pw4DP0jGZCxC2wkGFJ+XIlZrsji/pSeSjMpy0VQrlLVj561EBD3hQgbpJeFT7e/Fft HDXGbasu4+rHg/pGMs0gxUmGvmjZQsM2iqJYtmJPJTWECTpxwFEZjB76lhTviSkmaSbM shsFjrDwEeQk+Q84N97sgsEC9TKWZ+en5hWRr3ef58rKB6Xud/umPVz/RWDE/tUzCh07 WPXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=GZ/dx/PhkfLinSqowpqmaNxcteX9iFENl6JUjWGDDBQ=; b=hYMisLn4G+EYdnIcyWCm+rgfwbV0HSFyeFTeMFU2+FQSXocFw3MF0IBtRERgK6XgN0 ViF9hCSQr1ujUScnHdA8UGM2BYE5hQhvg2ceC/KWhLeUL71WGITd9bBaQRmeZ/NPAUm+ EYv+h3cAaQZ7YRrf4h4nJj6zlAl2aP1+8dSn9NKfMv82ko2EodnQmx/yYY8jA+B+AHox uQ5Zzt8izlUnR7IpjmFC/Oq9eyZt0/sXZ7IFMV3I4zePBgfcqPGDGmxnh0owDX1JD0BF MtkMAwdqcwCqRcu0Zd290J9b59bjozuk6ppl+0CsYXctZFXkgVUdK6pjxItPOWX3HYRr GR8g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=jqE83DvW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o20si4293927wmg.166.2017.09.03.20.07.32; Sun, 03 Sep 2017 20:07:32 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=jqE83DvW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A5E2868A1EE; Mon, 4 Sep 2017 06:07:27 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pf0-f195.google.com (mail-pf0-f195.google.com [209.85.192.195]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1E6D56882AC for ; Mon, 4 Sep 2017 06:07:25 +0300 (EEST) Received: by mail-pf0-f195.google.com with SMTP id v22so3576620pfk.1 for ; Sun, 03 Sep 2017 20:07:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=CHk2lj7qHq7jNOXtcQSlYVax+6Cob+40OAmaPtJrUiY=; b=jqE83DvWYrFVUY38B6JS2XJRNzXe4yzqU0Xv8ZNWvMj0lKpJ0/F1preFT68kPiwPqb 5MuGGhanOEgCAfvH7Kq28JYOXoZ/XsASviDAvPUNgiMdAJzqDOX7tmDKS14jmqv66ox0 VzPAlcP6G7D/FUDFTD2bzoZH/dF5rYdiFy8PltFPjPLJ0W5kI0IFC6QN+X/7U9dNdDoQ 4LHXXU6oSTX4tswO4D4KWUZVYu8Mz0xdUlUrNqQZJxDzyiInuopo+sGwchC8nIdr1Qn1 ns9qF10xMBowzjRFxwwC2DiypSYao6PbAE5zdboEUGropQi5gZyjBUCdS02G0aw95oF3 X0rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=CHk2lj7qHq7jNOXtcQSlYVax+6Cob+40OAmaPtJrUiY=; b=tmJ2dTW1sn0hpxZYour+lbJ8oyZ/3/aLASD36k7X9raD7dtyb40cZkq3wu2np6rE1L rsgaadJJS8WQZKygta0OQs6a1OlYBuRpXnYCK6Hf+BtJQF0obbqM0CAibHBgJvaAI7U2 ayCTvJkZcrwrZaf1bz2mSWu31r03lV2LNXDE+74hKBPpy55CVfDPYKzypujTp40dra8o 4+nenEefEdLRAuOqWy9Rwh0WgKXbvC8dvpWzPs9c/YHLZTzxnhFzQEn9HYxCOmITEjvH qwo8JyxLxujiqKJXItbN2WeqEWJLt+a5W/8cCJaUzKaB++0wuLoJgzI0lOgHvou5oh06 NtoQ== X-Gm-Message-State: AHPjjUgBDHNvGqPUlhn6Fa/5djDUsdHPdzbNixSa4y/Vcv08GFXv4beN mDlaae6LUyodVAA/ X-Google-Smtp-Source: ADKCNb6ai4ett2hoqbfQrWd8hF/YovWGM1f2JVYSyIWMCWyac93yiwkkOh/0PHz0LP2EZ5Fy9VbF/A== X-Received: by 10.98.80.198 with SMTP id g67mr4463403pfj.263.1504493105367; Sun, 03 Sep 2017 19:45:05 -0700 (PDT) Received: from homestead.aragog.com ([136.60.170.51]) by smtp.gmail.com with ESMTPSA id 74sm8430974pfo.74.2017.09.03.19.45.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 03 Sep 2017 19:45:04 -0700 (PDT) From: pkoshevoy@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Sun, 3 Sep 2017 20:44:31 -0600 Message-Id: <20170904024431.19112-2-pkoshevoy@gmail.com> X-Mailer: git-send-email 2.13.5 In-Reply-To: <20170904024431.19112-1-pkoshevoy@gmail.com> References: <20170904024431.19112-1-pkoshevoy@gmail.com> Subject: [FFmpeg-devel] [PATCH 2/2] lavfi/atempo: Avoid false triggering an assertion failure X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Pavel Koshevoy MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Pavel Koshevoy Steps to reproduce: 1. revert 4240e5b047379b29c33dd3f4438bc4e610527b83 2. ./ffmpeg -f lavfi -i sine=d=1 -af aselect=e=0,atempo=0.5 -y atempo.wav --- libavfilter/af_atempo.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavfilter/af_atempo.c b/libavfilter/af_atempo.c index 9eee8a63a8..41c8c0382a 100644 --- a/libavfilter/af_atempo.c +++ b/libavfilter/af_atempo.c @@ -914,6 +914,11 @@ static int yae_flush(ATempoContext *atempo, atempo->state = YAE_FLUSH_OUTPUT; + if (!atempo->nfrag) { + // there is nothing to flush: + return 0; + } + if (atempo->position[0] == frag->position[0] + frag->nsamples && atempo->position[1] == frag->position[1] + frag->nsamples) { // the current fragment is already flushed: