From patchwork Tue Sep 26 22:16:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 43924 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:2a18:b0:15d:8365:d4b8 with SMTP id e24csp2208166pzh; Tue, 26 Sep 2023 15:17:10 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHYC0ZydeNDF/9lx2AvZr+oYPmjzlVwMTiQKUuiXAvnnkNxcQ2bPxxaTHsUvlBrFRuQ2+OX X-Received: by 2002:a19:5e5e:0:b0:503:18c3:d874 with SMTP id z30-20020a195e5e000000b0050318c3d874mr56457lfi.45.1695766630460; Tue, 26 Sep 2023 15:17:10 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id d3-20020aa7ce03000000b00530bf1ba02asi12308473edv.554.2023.09.26.15.17.10; Tue, 26 Sep 2023 15:17:10 -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=@outlook.com header.s=selector1 header.b=H9NZXR2W; arc=fail (body hash mismatch); 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; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A5FFF68CA79; Wed, 27 Sep 2023 01:16:47 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04olkn2085.outbound.protection.outlook.com [40.92.73.85]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id EB91768CA79 for ; Wed, 27 Sep 2023 01:16:45 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=d1Kxjl5YlOXfj7p7oj0WzqJCm8UK/T2gWaozBMiR+vF2OyDUpJ3jAY23AJ5bCQ+6qYGq3urrBILEnggYGkVa1sLKtkFGlfHMOOGbZrEt6o8iov+UL7cM2asar4Dwrcbc5pJ4yIIy6LSWjTxhgwBS8LMxUcITfixxaD8JyOld4yZl6R4lEYL57GZqX4MeasEREALUmBjm3ARjGT0fv9lqnkCBwHlWciAZ+kp5WW3pf5nVbe8BGzsaSBH2V10lAzQpjL59/mojvmLiB5caVeicwQwWmGt2OSPV+qqNhJL3PWqVDHUqOlmEf0NZ6ghv7DEGpJEupOaPrx4HZaXXItjIoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tj3XnuVrma/8uf9ZI0ItQeXyebCb+lAMFOQTbi3ai04=; b=beMQItcmzTrYBr55NN/6kLceQzc2bFJXVaBN3/m+I2IH051j3FggrgkTk/K5w4Eul2qTn4DJ6WKaaOUfFSMk2RM8Sw+Y/lMLsMmf9cov8CGlsBnPc4tw3z/z02yIZRQOp9MqXl+g4uM+3jG7b7YuiaXVtBFsP1olLSFnG0SKKzaPTMfyyKTogbz6WBtRX1tf3T/Ovb6UwSNdqWs4kUFCfFQ7F94/uz1VkBk9JyyV76IOqEeX+paOMX+n9xnPajwTXOiPy+9HSbsrVU4mlK0nrdV4V/VzThqJp7Xo3BJ2mXPUUuUCMg/h43cb73xeC4+SIG4BnYFHFJJ6uVYWe0weMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tj3XnuVrma/8uf9ZI0ItQeXyebCb+lAMFOQTbi3ai04=; b=H9NZXR2WLqqtRJThsrrqhDclcu+b04DHunUGAiZ0emeU7xpfqqX6l5tfUoB/DlTGQy2sZFcRL2HE1L8+YAw13GC3B2QIlvIBJRvXXRQY2tGscr3csV1VrtJ1p49Kd4yfOdLRhBs6XOn34easBgTknmTutuIhiT4JcPblR8lIg6M6TtWFOlQc1MIoO0JSXeQaMepFYlttqQ6EAHDl/+kcoEdLYzIX79RJI/QnCvSYEbkpPlnO3RiSvPQEIqwt62cKdcLz6TfcKGm8OduedAOWx+LG89AUbQllsPqw5vy2JjdXO4n3ZPZgK7nx/TDbid+1bpxNW4C4GdPoqXp9bJEG0w== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS4P250MB0413.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:4c0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Tue, 26 Sep 2023 22:16:39 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::9d42:7b4f:71ef:c76a]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::9d42:7b4f:71ef:c76a%3]) with mapi id 15.20.6813.027; Tue, 26 Sep 2023 22:16:39 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 27 Sep 2023 00:16:37 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [96JiD/3OkU0xlfYBPFjCCQim/5Jb/k0W] X-ClientProxiedBy: FR3P281CA0019.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::6) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20230926221732.3711507-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS4P250MB0413:EE_ X-MS-Office365-Filtering-Correlation-Id: 72cdc123-3462-4560-1a01-08dbbede4159 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: klGTUDX/6E7yDHICKrnkPL6jNJJqdCf6XWayvxViJhHoI/wSQa696SGfXX6EjtVRkfYStbBcBvjwxd0dQy8FzrPyPorjZQ7OI+f2nmovrtkZGq/3c7ALHW9Tr4UJOsTvdkh5pkdnfwgQ7zwgqBQ1rqBhj7bM/zt8h9pT2uIDQskp2AoInjhtWhHG9SHzexgJyi/EEtEAMk33a13FGitad0N7lyytaGe3k7VO/kdj9GRNfNTA7P3kZjOH5NeAZNsRKL4adwyylbQF6rcagz1ujfDZiD+Z++xl4+LU7JhMCijHIzrWMoZKoII+YH2fIAVakkKIt/ECRqV/EmVzakOXJZNZPIkwd5ILGvbnCBFV9kaJUBWfUllhbaLZDFOO360rsA12ADpAf6GFgikJ68+c1LDXn2hPodUJM4MDmAVnSFBYHHoRmDszVtAFCqSx4bmyandfif26Aq8YY4L0PcrXl84cn/ljiaXNWhqOmKZqXDsLX1JeGANiPdfZ108d4xamzeGYL4v50zD3+57XfWllqCycgok/WlEGnUsAHzoDWRj/AB3Qnvhaerbfk85/jU0/A+FvpViOfzJ6jMcL/56q21eYmjOvxWSfU1x2k0aR4B7vmn6y3kNWfPxdSdR49qYq X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: b391ALK7q+b98g+aWK1THGJbVqP6GmdJiTvEAS4SzAZRgOven3P5V+j1MFc5PyWDdPM33OwSPVfg4yPqlFpac2oZBqMsy2ZR7KQTKwXNKaluWa1gPU/O3b707MgJiPoPASRlRNqsmWnBJQ3RWQD6d1uWeWWEPQACvS70aDXgdUlL8yiq9ns7cZfaBfChjJUhUFy9dG8edSxCM/DgR9wiS3TrFGqOPD8b5TR7zEbyphBmYCs3P8hLRCXryrPU1WWl7bJ58Pnhluoi+aHpmZZjhk97LiAF1cXjf+haDBphNqGW5yxw71e9k6N3xTR0u+Wj3ClRPsni+nwNIlakGnwc3Xo7ZG/dmxRF61cIHvzTkpBqLW3EEXk7zFJX2/KaEgBuH6NsQTCd12XvblCf+PmBiL4YNxVk2kIViOC0y/j3X4kt9sxdMbvjvOn6rx6SEo1lYXC8bNkE+0bvOKD0Qf4h/DB+9V5cIDJ/H7RCnNCDzy14j67gOBYPT74iDR45tEPVe7Booe0mQPeLvgJQnDMobUmUgkuP5z9alxgc1fNpYgLJ7JQ4z6DEySs6Nv6vS19Vn6shX40tKeVH9Lb0j7gUoI31G57JtVRoX+Vxh6AaUeOcm4UmfHWp6t18l/jVVudbCrvca+P5aImUdMn2u60m7PKYBjcSCOwITybjEZdGXyoEZcqgngBsqEd+pR2D+FWjn29dftZhtG9oaimOFytghBH5mfWs1REoFWCO34wkrMzjR1umdkElBbUqshOONO0PNnwy5nfjc9AmEd2yx8nZ7PclfRdinJPaYOUhY6Z+PN5Uq8EKApcEq0kgiP82BfGkVL0Bept2/NResugG9erAYr+YoWgcCBp8dvCoiy9iT0/CUxISrX978Z6JW+qsH8lAOB8H4qhFOl2BXCfZ/XVCz7iPdybUsufFg3zLMz8LhsxJeAMOM0LC3ZghbOhdIeHVfxVQrz9imoegozIn/2ndApaXKw8nYjxUF02gLv7t9ZLPnt3D+JhCfxJ2GJZxfeFLHO1cZUdjoRWbwX/tGDQX5c/7py3hfrVB3bZ8W9N5qm9RaFU+lusXV1TNMcWbzKjU2zQ1gI0uSc1FNrHJ9ySyUuwsNQpPsldyq3Vqb30M3gffKNt1Y/YZD8dzZMZbJm6cCCdQUXT5hf9O2pZTNi7WRGKS2I4DqAdXW0Upmst5Mh0FOygPXdJxWn9NLLAbBYlBNN/O40jWhWeGlB0eCuAGs/c5x6FSzN0zRFgtNvlUkOoQF6DahkIf1hCtzoH0GjzR X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72cdc123-3462-4560-1a01-08dbbede4159 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2023 22:16:39.3668 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4P250MB0413 Subject: [FFmpeg-devel] [PATCH 06/61] avcodec/h264_cavlc: Remove code duplication 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: hZk5w9xR1ZPi Signed-off-by: Andreas Rheinhardt --- libavcodec/h264_cavlc.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/libavcodec/h264_cavlc.c b/libavcodec/h264_cavlc.c index f17e30e853..19f067afb4 100644 --- a/libavcodec/h264_cavlc.c +++ b/libavcodec/h264_cavlc.c @@ -419,20 +419,13 @@ static int decode_residual(const H264Context *h, H264SliceContext *sl, else coeff_token = get_vlc2(gb, chroma422_dc_coeff_token_vlc_table, CHROMA422_DC_COEFF_TOKEN_VLC_BITS, 1); - total_coeff= coeff_token>>2; }else{ - if(n >= LUMA_DC_BLOCK_INDEX){ - total_coeff= pred_non_zero_count(h, sl, (n - LUMA_DC_BLOCK_INDEX)*16); - coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff], - COEFF_TOKEN_VLC_BITS, 2); - total_coeff= coeff_token>>2; - }else{ - total_coeff= pred_non_zero_count(h, sl, n); - coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff], - COEFF_TOKEN_VLC_BITS, 2); - total_coeff= coeff_token>>2; - } + total_coeff = pred_non_zero_count(h, sl, n >= LUMA_DC_BLOCK_INDEX ? + (n - LUMA_DC_BLOCK_INDEX) * 16 : n); + coeff_token = get_vlc2(gb, coeff_token_vlc[total_coeff], + COEFF_TOKEN_VLC_BITS, 2); } + total_coeff = coeff_token >> 2; sl->non_zero_count_cache[scan8[n]] = total_coeff; //FIXME set last_non_zero?