From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id E57ED4C35D for ; Sat, 3 May 2025 17:56:24 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BF2FA68BA2A; Sat, 3 May 2025 20:55:49 +0300 (EEST) Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8EC5F687C4C for ; Sat, 3 May 2025 20:55:39 +0300 (EEST) Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-43cf58eea0fso12539705e9.0 for ; Sat, 03 May 2025 10:55:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jkqxz-net.20230601.gappssmtp.com; s=20230601; t=1746294939; x=1746899739; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=wE42hrYZlKGIFq73v6XnV41G+bKyAo8h0Zau0Zp/uUI=; b=zmcrSVaZwaugLmYd7tCWtMRB9x/L8eVirRVhB5+oLEHHszVr2kWDiwGuxG4LNuVmq1 FbP+l+gw1u/GP+MXIXomcQAhxoE4qoKOMLfoVtZvnmtsad0VxpPqTm6gk6BRH5U9wIDL a0kaOiB1QnDNzAz+JRZXfZQ1W49oBqy6dPDxAnO3Vw8a8c3r5umbB5/y0EQ0Pmr3394Y LHKw+ILNdLixQ5OUdNJtJNzQNVa4340IqOR6OHZ5pru1d/an8OPnhGH32gPQoGRs2Y/z J6sMzkJCAj7v84kmYofRKjMn6ubW/BhOgEiYeqx45M2v3GV9EHPvw2RY34upyx3iHQrT 7OrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746294939; x=1746899739; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wE42hrYZlKGIFq73v6XnV41G+bKyAo8h0Zau0Zp/uUI=; b=TjaRc+nUYp1TTkWs+I1Pjqndx2zJSSz1caNZ9qyK7UZexvBRNyeG7aGeOgBe3l4xGs s0jobrqiTY8NdITPnMAtfP3AAnqKua5Yvf8T2DjKAq5kWAZ4q6NLyqhayCgo9/nAOK9U /MiTlUT9A92vAt7xSmKZ2B0eM+bbBx5WIz8Fm1SK4DKxi5+ZTjYkBTzSZbO2QR+sOCtX XEeEt06j4zTYIM+sxQR5qockwDHZmdhN8RS2UpNuCrQuzuSvYn2/54wx98JS7RysPGMQ /B29crd6KaUcm6CBXqtFwQN0lz7vaz2q6KfsY5bU8Vr9t5cC4eNSrckk8kXbqpG2v7RG Z/Ww== X-Gm-Message-State: AOJu0Yztz7g9onBJjcK6rDrFQ8qEs/NdTSOP24RbsaqBkz67oIZe2mjQ CnQgR3HTfCBEg6P2RNd8Z4JrMdY1kdLDYRka8S0CoyI7gzdnyTKcVVr10Dag369m/8JXmzqdH9R E7xp0Xw== X-Gm-Gg: ASbGncvvBie8dfwpjsXIDTYCCYD9hvovoY/T+rtgDblyCPK/kro/bvIPuYaTTQgqjrQ Xgkl4jWthFyLoirlCofce+fUcCFQoaFSjro6KNcNrDooVcge0rUyxUYY+k0hCuJu3asLI1mxtL8 Q0QF43kbXrPQXj3Lvq/yxYL4NT16nyXSn+Kmc2wXWW3fO/d0GW4DG+XEUnrMJUyaxEurI64etXT 6vDSy+GBRShsM+gfVbEv2enN9tJt4orXSoipLXoHdIjRM54F1Ux184zSb2JU8ZfZosTELowCOb9 20tq0P6al3iyGZrQJVBRg6dkcdTgZh6Ow4bOLCR8BKq8hAPOR7bxIy6Q+3LRfffr1fo7n7LcDfr +1xYrVHPBy+BXPHhG1HLEqyM= X-Google-Smtp-Source: AGHT+IFFFqA3u5xeSXpRhjrcXjoAweg4rsYJM2R/aH4shhA73fEMHdXLRVkvRT8BRkm2+zFXs3bAUQ== X-Received: by 2002:a05:600c:a085:b0:439:8c80:6af4 with SMTP id 5b1f17b1804b1-441bbedc31fmr58170925e9.19.1746294938897; Sat, 03 May 2025 10:55:38 -0700 (PDT) Received: from localhost.localdomain (cpc92320-cmbg19-2-0-cust719.5-4.cable.virginm.net. [82.13.66.208]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-441b8a3156asm80683645e9.38.2025.05.03.10.55.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 03 May 2025 10:55:38 -0700 (PDT) From: Mark Thompson To: ffmpeg-devel@ffmpeg.org Date: Sat, 3 May 2025 18:55:20 +0100 Message-ID: <20250503175527.1517092-4-sw@jkqxz.net> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250503175527.1517092-1-sw@jkqxz.net> References: <20250503175527.1517092-1-sw@jkqxz.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/6] cbs_apv: Better constrain tile_width/height_in_mbs 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: The maximum number of tile columns/rows adds an extra constraint on the minimum tile width/height for large frames (over 5120 width or 2560 height). --- libavcodec/apv_decode.c | 2 +- libavcodec/cbs_apv_syntax_template.c | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/libavcodec/apv_decode.c b/libavcodec/apv_decode.c index 7ee39e578a..7761a155ae 100644 --- a/libavcodec/apv_decode.c +++ b/libavcodec/apv_decode.c @@ -401,7 +401,7 @@ static int apv_decode_frame(AVCodecContext *avctx, AVFrame *frame, err = ff_cbs_read_packet(apv->cbc, au, packet); if (err < 0) { av_log(avctx, AV_LOG_ERROR, "Failed to read packet.\n"); - return err; + goto fail; } for (int i = 0; i < au->nb_units; i++) { diff --git a/libavcodec/cbs_apv_syntax_template.c b/libavcodec/cbs_apv_syntax_template.c index fefffe17b7..b6681681d4 100644 --- a/libavcodec/cbs_apv_syntax_template.c +++ b/libavcodec/cbs_apv_syntax_template.c @@ -113,12 +113,18 @@ static int FUNC(tile_info)(CodedBitstreamContext *ctx, RWContext *rw, const APVRawFrameHeader *fh) { CodedBitstreamAPVContext *priv = ctx->priv_data; + int frame_width_in_mbs = (fh->frame_info.frame_width + 15) / 16; + int frame_height_in_mbs = (fh->frame_info.frame_height + 15) / 16; + uint32_t min_tile_width = FFMAX(APV_MIN_TILE_WIDTH_IN_MBS, + (frame_width_in_mbs + APV_MAX_TILE_COLS - 1) / + APV_MAX_TILE_COLS); + uint32_t min_tile_height = FFMAX(APV_MIN_TILE_HEIGHT_IN_MBS, + (frame_height_in_mbs + APV_MAX_TILE_ROWS - 1) / + APV_MAX_TILE_ROWS); int err; - u(20, tile_width_in_mbs, - APV_MIN_TILE_WIDTH_IN_MBS, MAX_UINT_BITS(20)); - u(20, tile_height_in_mbs, - APV_MIN_TILE_HEIGHT_IN_MBS, MAX_UINT_BITS(20)); + u(20, tile_width_in_mbs, min_tile_width, MAX_UINT_BITS(20)); + u(20, tile_height_in_mbs, min_tile_height, MAX_UINT_BITS(20)); ub(1, tile_size_present_in_fh_flag); -- 2.47.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".