From patchwork Fri Sep 20 00:42:47 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Segall, Andrew via ffmpeg-devel" X-Patchwork-Id: 51663 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:d154:0:b0:48e:c0f8:d0de with SMTP id bt20csp661015vqb; Thu, 19 Sep 2024 17:43:03 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUX1tkIr3uQiZn06VLzD5LjfLL0xLCPkqyFOoZFuCsE7O+sp25TK6CWLL/vOE8aUwX9rgkNqEPaV3VJbADhZE7q@gmail.com X-Google-Smtp-Source: AGHT+IGECaTwNNcZSWFSFeAGne+x5+e5X7Q6VkxHlq1aXA+zxRiomIEujLbuUqJ1v/a+rq0lpJhz X-Received: by 2002:a2e:bea6:0:b0:2ef:307d:1f with SMTP id 38308e7fff4ca-2f7cb31a012mr2075461fa.1.1726792982806; Thu, 19 Sep 2024 17:43:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1726792982; cv=none; d=google.com; s=arc-20240605; b=RuVyJlHfCrVMjGtTLs18E2voRM1ndqSXVkahkPxqOPM3nN6LQL0IhXOYhTR13cjk9Z OLVwEEuIjYNcPtU9QaxvyV85APkxs4EBCOG31KXiSeaS02jCWFKcQxTf5u59D27OfKJb kc4asMOCF5FFhY1eWmd06Xelpv2qL082htCVBtipaTkgJQKxVyvsZdU2nWMUYFcfMsYu zG+FEkxuU3jU76UjUAEp0qlLwqCv1XFSox/kb40Ez2Nk/CtKLXKzClLOIMnv2TCR3KG/ AlIpo2XvfyQHq+8YO6OYeYCMt3uxhyGsEalqmqjP3mO7PPhxOPqCSGNm5dm87VSMAEzz cmQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding:cc:reply-to:from :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:content-id:content-language :accept-language:message-id:date:thread-index:thread-topic:to :delivered-to; bh=kKsfwT/+nb8HHSgpJzrOyvlM6Q/+r+AmfeC6UKGdvDE=; fh=95aBa8D1rLPK8RMCJmEpewcRxmtn52v1CfXNTjgpso4=; b=LixeCedlSt6gHwbWY9av2d8/+yEiSTSuA4fwAG2Tegiq9PJA1K5tFh+VM1XzdJS7XK 3aPT8cIBWOUYqJdPZ57f56vWCy6OZOvvhkPpVPiDrp5VTQY79CI21wzYcYAcZ2i9KOwj 3u9BV2WWHaAv8Xg51CI7fZi4ErN9a6/Do5lUwjI8wTSu5AKjg2/7tDdtUAnrJWGOrAhU V2fHA1nCpBiGVdinoa9SrYHXFkdYj0aKgylTl9cPgsF3pHRRJK7F+8zrnwBDD+PDaC6U 9DOpU6X7t2LgtMlMu9T12d9lzVzkatRo7zdwVFJS4eIwZKmJV9GJYpdgMamIusZQEkJz 5INQ==; dara=google.com 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 38308e7fff4ca-2f79d47b653si39057301fa.507.2024.09.19.17.43.02; Thu, 19 Sep 2024 17:43:02 -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 B199568DCF3; Fri, 20 Sep 2024 03:42:58 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtp-fw-80007.amazon.com (smtp-fw-80007.amazon.com [99.78.197.218]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3251268D7A6 for ; Fri, 20 Sep 2024 03:42:50 +0300 (EEST) X-IronPort-AV: E=Sophos;i="6.10,243,1719878400"; d="scan'208";a="332968788" Received: from pdx4-co-svc-p1-lb2-vlan2.amazon.com (HELO smtpout.prod.us-west-2.prod.farcaster.email.amazon.dev) ([10.25.36.210]) by smtp-border-fw-80007.pdx80.corp.amazon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Sep 2024 00:42:48 +0000 Received: from EX19MTAUWB001.ant.amazon.com [10.0.21.151:31544] by smtpin.naws.us-west-2.prod.farcaster.email.amazon.dev [10.0.11.172:2525] with esmtp (Farcaster) id 0ddc4944-cb17-43f9-a358-2ba63d367988; Fri, 20 Sep 2024 00:42:47 +0000 (UTC) X-Farcaster-Flow-ID: 0ddc4944-cb17-43f9-a358-2ba63d367988 Received: from EX19D022UWC001.ant.amazon.com (10.13.139.251) by EX19MTAUWB001.ant.amazon.com (10.250.64.248) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.2.1258.34; Fri, 20 Sep 2024 00:42:47 +0000 Received: from EX19D022UWC002.ant.amazon.com (10.13.139.216) by EX19D022UWC001.ant.amazon.com (10.13.139.251) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.2.1258.34; Fri, 20 Sep 2024 00:42:47 +0000 Received: from EX19D022UWC002.ant.amazon.com ([fe80::e13f:1459:3a4b:7b06]) by EX19D022UWC002.ant.amazon.com ([fe80::e13f:1459:3a4b:7b06%5]) with mapi id 15.02.1258.034; Fri, 20 Sep 2024 00:42:47 +0000 To: FFmpeg development discussions and patches Thread-Topic: [PATCH 1/3] - libavcodec/aom_film_grain: Handle byte alignment when multiple film grain parameters sets are present in the bitstream Thread-Index: AQHbCvYDiEJ+6yTZnUutgd+1eFx+uQ== Date: Fri, 20 Sep 2024 00:42:47 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.13.138.196] Content-ID: <5F74AB2FCFEFF9478FD0E9BC015973ED@amazon.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/3] - libavcodec/aom_film_grain: Handle byte alignment when multiple film grain parameters sets are present in the bitstream 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: , X-Patchwork-Original-From: "Segall, Andrew via ffmpeg-devel" From: "Segall, Andrew via ffmpeg-devel" Reply-To: FFmpeg development discussions and patches Cc: "Segall, Andrew" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: PHeueBlZOfQx More info: Series of patches to align the implementation of aom_film_grain.c with the AOM specification. First time committing. Suggestions very welcome. Signed-off-by: Andrew Segall > --- libavcodec/aom_film_grain.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) apply_units_log2 = get_bits(gb, 4); fgp->width = get_bits(gb, 12) << apply_units_log2; diff --git a/libavcodec/aom_film_grain.c b/libavcodec/aom_film_grain.c index e302567ba5..fdfa3dbf77 100644 --- a/libavcodec/aom_film_grain.c +++ b/libavcodec/aom_film_grain.c @@ -151,12 +151,24 @@ int ff_aom_parse_film_grain_sets(AVFilmGrainAFGS1Params *s, fgp->type = get_bits1(gb) ? AV_FILM_GRAIN_PARAMS_AV1 : AV_FILM_GRAIN_PARAMS_NONE; if (!fgp->type) + { + payload_bits = get_bits_count(gb) - start_position; + if (payload_bits > payload_size * 8) + goto error; + skip_bits(gb, payload_size * 8 - payload_bits); continue; + } fgp->seed = get_bits(gb, 16); update_grain = get_bits1(gb); if (!update_grain) + { + payload_bits = get_bits_count(gb) - start_position; + if (payload_bits > payload_size * 8) + goto error; + skip_bits(gb, payload_size * 8 - payload_bits); continue; + }