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 DC3154E49E for ; Sat, 3 May 2025 09:14:49 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D68AD68BBAD; Sat, 3 May 2025 12:14:10 +0300 (EEST) Received: from mail-pf1-f178.google.com (mail-pf1-f178.google.com [209.85.210.178]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DAA7168BB3A for ; Sat, 3 May 2025 12:14:08 +0300 (EEST) Received: by mail-pf1-f178.google.com with SMTP id d2e1a72fcca58-73bf1cef6ceso3062091b3a.0 for ; Sat, 03 May 2025 02:14:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746263647; x=1746868447; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=n381MKGPv/vfhEiS4QPpS94zLmT1BEOw+1VPDTHv3ms=; b=OKc1suiYbEjRdERfUy0DHpCTs/4fhmrUQrXTOAoQLsNFXKqC0H8YsoDb11EuFLqDHy pjBRvJwg5iBtkXMOwguZf51VicoXG4hHf3VW5ZUx1rVgHZ8D8enaxOewESjuFay4RT+r yeJ+qONybgpOHZNMR+LQBS4tKeIc3680lWGNwoiljG+l2Y59kgbtPAqzv0O85nyOehhj BTtohAb0ahNFQPsAaQR/whH+HZKuyTmn5uLXyr6CryPf8sU6/tOyIzg4tSWwPgIMxxd2 rLrH50obVMel3zETxZbc43U92G6xOq1J/uu5A8ZMBaY0/SVTrgjNMzjpyPwSM5cber1/ fJaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746263647; x=1746868447; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=n381MKGPv/vfhEiS4QPpS94zLmT1BEOw+1VPDTHv3ms=; b=SeSkB9yLeUvQqhFQV+h8y244UZfjtDh7hmveeg33XcKGCjbXNQzS8FzLMohduxbK0E h3wEQ83mEhPS15A2WcwCVgXtMSRD6+F1NXvFMV/2+2e8LkxAnVoGz66413oHG8yllQG8 MqH7b46QGyYjuQ+UIq2WMCZH2TxnwyMDQ/ssUkhN8g9dllXsNMLlLp47iPkpiHqksDjq Lj8mz9M4Z+MyVnYwdfuVxtTq3esDRtsn8m3DbK7hITQeWGds0LbINOgyRd7mj7rybuPQ JgIrg3pSdJQ++eoUl7XbbVwVo1OG0Bori9jEkv/jrqUmN8yX7ne+rVOLvtitsr3A3b6w 9u+Q== X-Gm-Message-State: AOJu0Yzw/SD6HyFyj8Ke4XsvW+VO8iM/n3QzQlPB16PxHZFNuY9SaS+J YSh7oP7piNVUwhaMYzfuLEKEAyN1gb1VJFT2dGtTcnIZeb9dhRIDCr4FmGwR X-Gm-Gg: ASbGncu5MZjpa1ZiaAijIl2O8cvA2ZponwqUmRyuabLuqQKYM5uqiGX7EXV+0rb2vE7 EaWmJJLnz8rVEGTZzv922CHzprugBOTmVdcOtBSxo1SmMssKQFgRLPl/U+lQm7voqkXgAYLE8Zq ftJwNMTsUL5NAvI7sHDpzMH3utvovTHq0ViAn40mfLCG5ToAqleHmSrfNN5h5pUo0kq/wwVygiQ pVFkzTd7qFa9gANiXznKTQIB0dL8ylkcLNEkAUEJi8MlE9K6ZDk++PQiALQA/qreSJGlzrGuviZ c1sQnBZIBkaNtpAEAKPLHNiX1jvrZ7EGIK0= X-Google-Smtp-Source: AGHT+IFMmV+HKRDQNfN01hSeHGOqs52Kxtgzr7HLDcOSX3JACbsprub3A+vAU0CT+YFV6UFPmCqefA== X-Received: by 2002:a05:6a00:1d8f:b0:736:6ac4:d204 with SMTP id d2e1a72fcca58-7406f0d9ea2mr496562b3a.11.1746263647015; Sat, 03 May 2025 02:14:07 -0700 (PDT) Received: from localhost ([112.65.11.72]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-74058d7a3bdsm2954711b3a.9.2025.05.03.02.14.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 03 May 2025 02:14:06 -0700 (PDT) From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Sat, 3 May 2025 17:13:19 +0800 Message-Id: <20250503091319.76948-7-nuomi2021@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250503091319.76948-1-nuomi2021@gmail.com> References: <20250503091319.76948-1-nuomi2021@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v2 7/7] checkasm: hevc sao, use checkasm_check_padded 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: Nuo Mi 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: --- tests/checkasm/hevc_sao.c | 45 +++++++++++++++++---------------------- 1 file changed, 20 insertions(+), 25 deletions(-) diff --git a/tests/checkasm/hevc_sao.c b/tests/checkasm/hevc_sao.c index f597eb5254..37f6ba8c5c 100644 --- a/tests/checkasm/hevc_sao.c +++ b/tests/checkasm/hevc_sao.c @@ -67,12 +67,13 @@ static const uint32_t sao_size[5] = {8, 16, 32, 48, 64}; static void check_sao_band(HEVCDSPContext *h, int bit_depth) { int i; - LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); - LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); + PIXEL_RECT(dst0, MAX_PB_SIZE, MAX_PB_SIZE); + PIXEL_RECT(dst1, MAX_PB_SIZE, MAX_PB_SIZE); LOCAL_ALIGNED_32(uint8_t, src0, [BUF_SIZE]); LOCAL_ALIGNED_32(uint8_t, src1, [BUF_SIZE]); int16_t offset_val[OFFSET_LENGTH]; int left_class = rnd()%32; + const int walign = 16; for (i = 0; i <= 4; i++) { int block_size = sao_size[i]; @@ -86,17 +87,14 @@ static void check_sao_band(HEVCDSPContext *h, int bit_depth) for (int w = prev_size + 4; w <= block_size; w += 4) { randomize_buffers(src0, src1, BUF_SIZE); randomize_buffers2(offset_val, OFFSET_LENGTH); - memset(dst0, 0, BUF_SIZE); - memset(dst1, 0, BUF_SIZE); - - call_ref(dst0, src0, stride, stride, offset_val, left_class, w, block_size); - call_new(dst1, src1, stride, stride, offset_val, left_class, w, block_size); - for (int j = 0; j < block_size; j++) { - if (memcmp(dst0 + j*stride, dst1 + j*stride, w*SIZEOF_PIXEL)) - fail(); - } + CLEAR_PIXEL_RECT(dst0); + CLEAR_PIXEL_RECT(dst1); + + call_ref(dst0, src0, dst0_stride, stride, offset_val, left_class, w, block_size); + call_new(dst1, src1, dst1_stride, stride, offset_val, left_class, w, block_size); + checkasm_check_pixel_padded_align(dst0, dst0_stride, dst1, dst1_stride, w, block_size, "dst", walign, 1); } - bench_new(dst1, src1, stride, stride, offset_val, left_class, block_size, block_size); + bench_new(dst1, src1, dst1_stride, stride, offset_val, left_class, block_size, block_size); } } } @@ -104,17 +102,17 @@ static void check_sao_band(HEVCDSPContext *h, int bit_depth) static void check_sao_edge(HEVCDSPContext *h, int bit_depth) { int i; - LOCAL_ALIGNED_32(uint8_t, dst0, [BUF_SIZE]); - LOCAL_ALIGNED_32(uint8_t, dst1, [BUF_SIZE]); + PIXEL_RECT(dst0, MAX_PB_SIZE, MAX_PB_SIZE); + PIXEL_RECT(dst1, MAX_PB_SIZE, MAX_PB_SIZE); LOCAL_ALIGNED_32(uint8_t, src0, [BUF_SIZE]); LOCAL_ALIGNED_32(uint8_t, src1, [BUF_SIZE]); int16_t offset_val[OFFSET_LENGTH]; int eo = rnd()%4; + const int walign = 16; for (i = 0; i <= 4; i++) { int block_size = sao_size[i]; int prev_size = i > 0 ? sao_size[i - 1] : 0; - ptrdiff_t stride = PIXEL_STRIDE*SIZEOF_PIXEL; int offset = (AV_INPUT_BUFFER_PADDING_SIZE + PIXEL_STRIDE)*SIZEOF_PIXEL; declare_func(void, uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height); @@ -123,17 +121,14 @@ static void check_sao_edge(HEVCDSPContext *h, int bit_depth) for (int w = prev_size + 4; w <= block_size; w += 4) { randomize_buffers(src0, src1, BUF_SIZE); randomize_buffers2(offset_val, OFFSET_LENGTH); - memset(dst0, 0, BUF_SIZE); - memset(dst1, 0, BUF_SIZE); - - call_ref(dst0, src0 + offset, stride, offset_val, eo, w, block_size); - call_new(dst1, src1 + offset, stride, offset_val, eo, w, block_size); - for (int j = 0; j < block_size; j++) { - if (memcmp(dst0 + j*stride, dst1 + j*stride, w*SIZEOF_PIXEL)) - fail(); - } + CLEAR_PIXEL_RECT(dst0); + CLEAR_PIXEL_RECT(dst1); + + call_ref(dst0, src0 + offset, dst0_stride, offset_val, eo, w, block_size); + call_new(dst1, src1 + offset, dst1_stride, offset_val, eo, w, block_size); + checkasm_check_pixel_padded_align(dst0, dst0_stride, dst1, dst1_stride, w, block_size, "dst", walign, 1); } - bench_new(dst1, src1 + offset, stride, offset_val, eo, block_size, block_size); + bench_new(dst1, src1 + offset, dst1_stride, offset_val, eo, block_size, block_size); } } } -- 2.34.1 _______________________________________________ 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".