From patchwork Sat Oct 7 00:14:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Niedermayer X-Patchwork-Id: 44187 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4e24:b0:15d:8365:d4b8 with SMTP id gk36csp152542pzb; Fri, 6 Oct 2023 17:15:09 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEB6MMOTSbmOGKM/SDv6x7A/3AH0QyQEoXUouYh3i+bGDt5bb6EUGC77nUSZR/1nSOJhLb7 X-Received: by 2002:a17:906:31c5:b0:9ae:6a51:87c3 with SMTP id f5-20020a17090631c500b009ae6a5187c3mr8923533ejf.9.1696637708916; Fri, 06 Oct 2023 17:15:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696637708; cv=none; d=google.com; s=arc-20160816; b=KauS5VKXxCA+lfFBv6Hb6XdR+Cr+IRwqnCZ9hcs4716LZkuY56jxcEjfTWR/29CyXb WmSPeI5pKEvkX9IC/pumBUbB+ftFpF20vjDF5gcCS2blTaH7uM1ehJrxzM2PFaWAKSz7 ymYKCLpjjWPV9b6LbtYEZOy17P/QMwM/p0d/l4LMi7XhlCDgvrZgif+CJ4p3a5M+zU8S x02UBmpKVJMG3tdaTPq7He1th1LQ4M/Tl1hmhQXW2RL5DkKU2/qy3dSOWSehlLlcaD8x Y/S/98eqPIdoeudogEoWm/7Okfxd/Q9oBkN0VyA9W2A/0BU28XFK2erI45Z+R9OWwZFt 2ICw== 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: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:delivered-to; bh=+QOKSEZXpBmn61oXFkYi1KtoG8adXYXAuAEnTEGpUMM=; fh=e5zN9xSzcxLA6bGo3lF+CqTbY/oLwzApV03EO/RBfgQ=; b=pOsNxs6pz+junONnjJu+PMrddDSNq0XJWgKZrmAsco/Sbo8cNGyXA4TdQnqIguLJM6 MFBRncJ8M7c/Xxcl6XmomEwkOpeeU1wfUpKuqetuUB9nkoIVflZSeCXW9WQzOVJdiatG 71IyVVaQbPo/dVvKnmzLyfA7JqMYwL63YxQwrgyUeq5+uHqQdtMvFZEq+LSPm6djm6yi s29hPvKyVSqWN+XDhPIJCEnllbJaqU4/mhaFr8ao9g2f6HQ3tjqfRDcYrY0CVw2D3cpy /kckB2HhONCtkU2pph4HfwX45pTXNLlC6ORU/8MOfuhaYxlvmRdkw7Zl8nOTNIp5cssR D4bQ== 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 qq16-20020a17090720d000b0099bcec1f1bbsi2000887ejb.182.2023.10.06.17.15.08; Fri, 06 Oct 2023 17:15:08 -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 7CD9568CAEF; Sat, 7 Oct 2023 03:14:55 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from relay2-d.mail.gandi.net (relay2-d.mail.gandi.net [217.70.183.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A791A68C94F for ; Sat, 7 Oct 2023 03:14:47 +0300 (EEST) Received: by mail.gandi.net (Postfix) with ESMTPSA id C77B940002 for ; Sat, 7 Oct 2023 00:14:46 +0000 (UTC) From: Michael Niedermayer To: FFmpeg development discussions and patches Date: Sat, 7 Oct 2023 02:14:43 +0200 Message-Id: <20231007001444.31861-2-michael@niedermayer.cc> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20231007001444.31861-1-michael@niedermayer.cc> References: <20231007001444.31861-1-michael@niedermayer.cc> X-GND-Sasl: michael@niedermayer.cc Subject: [FFmpeg-devel] [PATCH 2/3] avcodec/ffv1: Store and reuse sx/sy 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Utcca+1PetcC Signed-off-by: Michael Niedermayer --- libavcodec/ffv1.c | 2 ++ libavcodec/ffv1.h | 1 + libavcodec/ffv1enc.c | 4 ++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/ffv1.c b/libavcodec/ffv1.c index b6204740edb..f44fead350b 100644 --- a/libavcodec/ffv1.c +++ b/libavcodec/ffv1.c @@ -129,6 +129,8 @@ av_cold int ff_ffv1_init_slice_contexts(FFV1Context *f) fs->slice_height = sye - sys; fs->slice_x = sxs; fs->slice_y = sys; + fs->sx = sx; + fs->sy = sy; fs->sample_buffer = av_malloc_array((fs->width + 6), 3 * MAX_PLANES * sizeof(*fs->sample_buffer)); diff --git a/libavcodec/ffv1.h b/libavcodec/ffv1.h index 04869da5c9a..14e40936065 100644 --- a/libavcodec/ffv1.h +++ b/libavcodec/ffv1.h @@ -129,6 +129,7 @@ typedef struct FFV1Context { int slice_height; int slice_x; int slice_y; + int sx, sy; int slice_reset_contexts; int slice_coding_mode; int slice_rct_by_coef; diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c index 4d0ddc167ae..11be7fe32ea 100644 --- a/libavcodec/ffv1enc.c +++ b/libavcodec/ffv1enc.c @@ -912,8 +912,8 @@ static void encode_slice_header(FFV1Context *f, FFV1Context *fs) int j; memset(state, 128, sizeof(state)); - put_symbol(c, state, (fs->slice_x +1)*f->num_h_slices / f->width , 0); - put_symbol(c, state, (fs->slice_y +1)*f->num_v_slices / f->height , 0); + put_symbol(c, state, fs->sx, 0); + put_symbol(c, state, fs->sy, 0); put_symbol(c, state, 0, 0); put_symbol(c, state, 0, 0); for (j=0; jplane_count; j++) {