From patchwork Sat Nov 6 01:51:18 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Niko Kurvinen X-Patchwork-Id: 31304 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:dc01:0:0:0:0:0 with SMTP id b1csp894997iok; Fri, 5 Nov 2021 18:51:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxEGu1Dx87NMVV0GRbwxhoqo9Z63RJiCokjNaUKgyrpZIiD964d69EgUH+JemkCw7bmqKAy X-Received: by 2002:a05:6402:781:: with SMTP id d1mr81985118edy.313.1636163501032; Fri, 05 Nov 2021 18:51:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1636163501; cv=none; d=google.com; s=arc-20160816; b=iKBccgR/gb3u6R+WysNeIw1NVVktL73dzLx+0Dh8dvGTN69PXCkNr4arSOkuQLt7qS 04xWYrXEIwKAaYct3P5vqLdY8j4+Oz4CSTMQG2twCJse/RHnBlhG57HLrSqAAHt0vmG9 YVBh5Az26EqVnBl4oXKUmDrTIEofGk8yq5grapp6jKc8uDeemU9sDso2GmdtgWWb8PcH 1SgqGrfotFJ6yOyRIAPepUqCs+9oPUQLIAj/qrdIGEco3L/otMX6tGZp+xzaCYm4w42k O2+tMgUTLe8lFaEEk7xqvY7Ed0YgEp2GUj8le4lfdtm8+AxSsGYWI/Ei6QZWFz6oF6sI sZ0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :delivered-to; bh=mvNgXJtc1CWRD3uGEoCKOlniDGHVpjYAU0k7ItOlLIQ=; b=tlsH2d1O4TcRAnOQVwCpd+pElvtOLIPpsrwcf30PZK88H8IjpU6lbH58AvSjVmce9y rDjJLepf90RfkaApYbqPfz3IEU32ckBneC4MJZgiAf2X9MBg3PCbv02CBL1nmvkfP085 XFl+VTJJchzr5tXMr+GhtMO8xN+EcRpz4i2s2ULhRZe1EVLf43CI0uPHgb4V65Zmhtkj WuEnTA8qDk2v34c5CxHCTKWJfi3XnoCUe7uzCCzQ/1HhBrxpu3uX+S0EsnLa8P+Vf0Nz Au9/nZ/ujOz//6tp2du8bgXyY9StEAue7saejQoi3KlcfmMpRUvfjLavMaFqC893fmgS 5TCA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id j18si15833250ejo.437.2021.11.05.18.51.39; Fri, 05 Nov 2021 18:51:41 -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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 84E2168A5F8; Sat, 6 Nov 2021 03:51:35 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-lf1-f47.google.com (mail-lf1-f47.google.com [209.85.167.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BD41D68020A for ; Sat, 6 Nov 2021 03:51:28 +0200 (EET) Received: by mail-lf1-f47.google.com with SMTP id j2so22286191lfg.3 for ; Fri, 05 Nov 2021 18:51:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=NPb0AmMCmKIVMJnyJLx6zQ/K/brUwMGEFx+28Z9HrPk=; b=qT3tPauPDazr4OeGVh8YUEvcJjEUS+yUPwgDIzKDXjVkRLb6mn6K2LPbYZbJMmr0Lf +GLOP28bwYEJt1c7nWsT2CsIvwRd+hGhr1uBE7GXdgImbo8REOps2OHpqq8YXWWD1Pr8 OsfQGEN6uQ6++7MU+lu0ecDMtUqtGzGC5gC3VmrwCgfDaWENU6vu5ZN1RUAlxJ0g5Jlo MzgqG4aMaZjfF9Nk1/UJ9GlwppPJLqRCTAVaOj76cJ54AT8Hc3zjnrru+BiXDM4k7iDx 30SK6X4CE1WWOqYAPiRDYK31D5RZ8v35sD2KGalMd+dK39jTcROVl0hNr4qCatLAZ/q2 Fvxw== X-Gm-Message-State: AOAM53158pDNLJaRm2puRNsi5/uzgD306r5jTq43E9Moyz2VwsWkrWj+ 3P5c5SR+dZP41Es3e9gH4gMY+hgy9JY= X-Received: by 2002:a05:6512:128f:: with SMTP id u15mr33263227lfs.538.1636163487753; Fri, 05 Nov 2021 18:51:27 -0700 (PDT) Received: from nyx.corp.vaisala.com (hel-inetgw01.vaisala.com. [193.143.230.131]) by smtp.gmail.com with ESMTPSA id a13sm1001751lfr.191.2021.11.05.18.51.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 05 Nov 2021 18:51:27 -0700 (PDT) From: Niko Kurvinen To: ffmpeg-devel@ffmpeg.org Date: Sat, 6 Nov 2021 03:51:18 +0200 Message-Id: <20211106015118.446635-1-niko.kurvinen@iki.fi> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] libavcodec/bsf: do not ignore last packet after eof X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Niko Kurvinen Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: R8hXRUe5OOqn After empty packet is sent and eof is set, remaining packet, if any, was not delivered by ff_bsf_get_packet*. Signed-off-by: Niko Kurvinen --- libavcodec/bsf.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/libavcodec/bsf.c b/libavcodec/bsf.c index 8ba021cb47..f9e6bbf499 100644 --- a/libavcodec/bsf.c +++ b/libavcodec/bsf.c @@ -233,11 +233,11 @@ int ff_bsf_get_packet(AVBSFContext *ctx, AVPacket **pkt) FFBSFContext *const bsfi = ffbsfcontext(ctx); AVPacket *tmp_pkt; - if (bsfi->eof) - return AVERROR_EOF; - - if (IS_EMPTY(bsfi->buffer_pkt)) + if (IS_EMPTY(bsfi->buffer_pkt)) { + if (bsfi->eof) + return AVERROR_EOF; return AVERROR(EAGAIN); + } tmp_pkt = av_packet_alloc(); if (!tmp_pkt) @@ -253,11 +253,11 @@ int ff_bsf_get_packet_ref(AVBSFContext *ctx, AVPacket *pkt) { FFBSFContext *const bsfi = ffbsfcontext(ctx); - if (bsfi->eof) - return AVERROR_EOF; - - if (IS_EMPTY(bsfi->buffer_pkt)) + if (IS_EMPTY(bsfi->buffer_pkt)) { + if (bsfi->eof) + return AVERROR_EOF; return AVERROR(EAGAIN); + } av_packet_move_ref(pkt, bsfi->buffer_pkt);