From patchwork Wed Jun 26 12:43:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 50163 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:ccd2:0:b0:482:c625:d099 with SMTP id q18csp417209vqv; Wed, 26 Jun 2024 06:02:55 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCV+qZbe3Yn03ASXYQ0rb1E9wo4cKRN3hmBgSTSAIywFYbJXB1wPUz8BLqdpxWfiDLAHyZzjRxa/vyizb/0380k3vyYZ0RGh/prS3A== X-Google-Smtp-Source: AGHT+IHVGXhtrUG6Z40qeb6YgThWEJQHISenpIE4paeAGqmIO9bEwtQv3lbq0bp5b+HhYVOOLmsu X-Received: by 2002:ac2:5ed0:0:b0:52c:dc20:64a with SMTP id 2adb3069b0e04-52ce1835910mr7963211e87.37.1719406974637; Wed, 26 Jun 2024 06:02:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1719406974; cv=none; d=google.com; s=arc-20160816; b=iif1m5riWg3tGIzNNSJnOJKfN+XN5671w0QiQFXZQXSJbHYTXGiITrWSUDXAPIPLcO T51xV/GE+9fSJCNOBxeyfodWUuDNdvQNyq2grlJMYtyWpRHHqnpF3M3VDH5Us6yrbk6R Ym3SDlQGrr7YOdLfzuIDOb9AvorJJ7b8ZYWM+b2DOL4qxaPqLUUcJU29nx2jzXdRuS9w 7cF93BT+1MJv5bMeiKT3dblQR3IYw+a30xzmfimesjDGL2tQhUYY/JIex6IzQNy0Ns3W NhfLIOl0k83glCCUMLq/Oq+1tqHaz64LdgoSRrWPWzW76fmMPb06JP3CA+pQY61wQQRY dNKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=B8fy7hScVtPLs/NpC2Tf4qXqinQFirEZS87O/k1RHRY=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=WpJXDZ1zHMi152zPEzZIwThVmumlwDDua1qQmCC9wzrjxsOWloMx0tAYr1qUbyxxwD Kt53hlTjJoOmsRUgJyvkk9VBCmXnpIwGCO2iJhSqzMYWI/4dEV9flyQDSiHjGKtVznjW DovyJXmAnzyNqOLKSrZmBy7mGdnnv6D8YTcnnETM8/cYqy3PS2Ks1corwqre4h7X+yXg xX45Zb7IX3OmrlMiNnhU4nR9lsgB4he3BZzsao7c7CjSB87//y3J2WHoXoYX8nSNbzl1 I6kGTb6VUoE6QxVfmmbhAhIPPlVB+aOpkiBt7Z48Gi5v8oR6DEwH5VIFpxYZfkI/OU9W mfnA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@khirnov.net header.s=mail header.b=gw5i0ytO; 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 a640c23a62f3a-a726e50eb56si193032866b.480.2024.06.26.06.02.48; Wed, 26 Jun 2024 06:02:54 -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=@khirnov.net header.s=mail header.b=gw5i0ytO; 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 3B03168D5B1; Wed, 26 Jun 2024 15:43:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail1.khirnov.net (quelana.khirnov.net [94.230.150.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E996B68D321 for ; Wed, 26 Jun 2024 15:43:44 +0300 (EEST) Authentication-Results: mail1.khirnov.net; dkim=pass (2048-bit key; unprotected) header.d=khirnov.net header.i=@khirnov.net header.a=rsa-sha256 header.s=mail header.b=gw5i0ytO; dkim-atps=neutral Received: from localhost (mail1.khirnov.net [IPv6:::1]) by mail1.khirnov.net (Postfix) with ESMTP id 5DBD14D9C for ; Wed, 26 Jun 2024 14:43:43 +0200 (CEST) Received: from mail1.khirnov.net ([IPv6:::1]) by localhost (mail1.khirnov.net [IPv6:::1]) (amavis, port 10024) with ESMTP id Q_Qor08aZ5-u for ; Wed, 26 Jun 2024 14:43:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=khirnov.net; s=mail; t=1719405821; bh=XN4EdyiRnq/lKi6crxVjf3cFSFg8fiU1mFqW088z2Bk=; h=From:To:Subject:Date:In-Reply-To:References:From; b=gw5i0ytOuYjSwHyc6jdTI3zfG+wAXmleJeJJTWceh7jbOHAy9gKnCZMI3BHHurDH3 4bQM+kk5VYdk/y46X/x+ik4KnV0nobqqZ3v8szYrDr1+BgWCTrtX2N7TSMEjfWnUTI iPjlLL8Lb01LWMUiGnaikAzMcwlEWvcPGK5/upI4NJ8TiUZDNc/eEMSF8yKSEmLr+j Tb84fJCXyy4mexlCUA/TSh9VpyF0bo8LXHmjj0frpLUF+D8X7CBO/IC1w4yUPhQGoH 5wmat3biGlJ6PMA1fq1xs7Wp4de6erjzPwx3wOqB57ba9REJdnVlANhWWM6KKqPZ/b L1QTAhCcSTodw== Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail1.khirnov.net (Postfix) with ESMTPS id CF06E4DC2 for ; Wed, 26 Jun 2024 14:43:40 +0200 (CEST) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id DD0E73A09EE for ; Wed, 26 Jun 2024 14:43:39 +0200 (CEST) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Wed, 26 Jun 2024 14:43:37 +0200 Message-ID: <20240626124337.14478-5-anton@khirnov.net> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240626124337.14478-1-anton@khirnov.net> References: <20240626124337.14478-1-anton@khirnov.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 5/5] lavc/hevcdec: improve check for PPS changing between slices 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: LULyNZfKLsNF Compare actual PPS objects rather than just PPS ID, as the former might change while the latter stays the same. Reported-by: Michael Niedermayer --- libavcodec/hevc/hevcdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/hevc/hevcdec.c b/libavcodec/hevc/hevcdec.c index 01d32086f2..fd143cddab 100644 --- a/libavcodec/hevc/hevcdec.c +++ b/libavcodec/hevc/hevcdec.c @@ -603,7 +603,7 @@ static int hls_slice_header(SliceHeader *sh, const HEVCContext *s, GetBitContext av_log(s->avctx, AV_LOG_ERROR, "PPS id out of range: %d\n", pps_id); return AVERROR_INVALIDDATA; } - if (!sh->first_slice_in_pic_flag && pps_id != sh->pps_id) { + if (!sh->first_slice_in_pic_flag && s->ps.pps_list[pps_id] != s->pps) { av_log(s->avctx, AV_LOG_ERROR, "PPS changed between slices.\n"); return AVERROR_INVALIDDATA; }