From patchwork Wed Sep 1 15:05:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 29943 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp642878iov; Wed, 1 Sep 2021 08:06:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzHou1kAy/4kSA6Yhh2Tjpv9MMIV9ivi00XJdz9Zasa9kbyc1SyR30Fn1MUAEjPtQe3XBJW X-Received: by 2002:aa7:c245:: with SMTP id y5mr95570edo.20.1630508765542; Wed, 01 Sep 2021 08:06:05 -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 gs43si88560ejc.673.2021.09.01.08.05.56; Wed, 01 Sep 2021 08:06:05 -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=WdCTyn7z; 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 A8EDF68A543; Wed, 1 Sep 2021 18:05:51 +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-oln040092073048.outbound.protection.outlook.com [40.92.73.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3B6CE6802E4 for ; Wed, 1 Sep 2021 18:05:44 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KVyDpZTWwdxjUdyXRQ3/ij531Kwk0O6uP6rhoxvchpvAluABr8FNyV/CcLFKQvEkIXvx4u9vtsOKddJ+r0cqHvoDLBmCWNz1uEWuIudQ4+gFuC8fY7Ev3xsIE4YMDdFUHe6Wy9UfdBAGbKF/POEG7n7n2vrCFc+6qyH7W0PHeL607v0JHgWHa0E/Sp9RAHNYu84o0NHwFpG2JEcGu/D8JfQ6P6qPtcJtO/sQ9JdXcU9fAb9ANxS0Yl6st7rsg1xHlXWbwhenRS8quTQJNXLDu2wGovKJMpML/dY4sbgvhkCtycqljj7Upe8H/7Ko9N0qeBV5bRFeBs51b61Z5OCYRw== 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; bh=wZpwhxd3HDpOqfcAW8GV+oNbVr08YYvRCP3cRbj6FFk=; b=hmkxDyinwEJBZiMXg5I+hCoMTHz9DX8Hs4ao8C1Lh/dbsWC9Cu1pAio7RtTq8fyn/MwfxlIUjrygnCqW/2Oer+KWfqgyAt+/gmkYpkkJYkqxm9VbpZiGmHAz7BKyc5JrGQk9/mwpdtYh5oSsnm/cgLV+5gaEvtdEFvPajaHXU4uR1XQ2amftP6Bx9Xs4J00UhHMCm4ld3HqIQV4W56+5Am2wkl1Lgwow1SFdov4QL5opBrahBggRqGfVEfaZlIOFbNJHXtkp6LgXYuMHhRJsrZuREmDo8ucLyScn/rIK9jlmL3mZrWlVIWulipNMtFLVzFukq5Sb3w003t+DQD/+NQ== 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=wZpwhxd3HDpOqfcAW8GV+oNbVr08YYvRCP3cRbj6FFk=; b=WdCTyn7zHIbWFRh65SqpdP50ZxspCzNgx78AzmmXqkfSsdN/sMeYiyZxqPduYEEzwC7ZdOGGyR9Zp33obKsWa/vYogIYILgVaMcS9tJTX82WzE1omI4rw+fTlBGsGEfSjDSPTSgETG7RVsoCn9eOhBMFMyZRVM3adwGN1f9fmtXAk4I0E8A0qxdTR7XpeaboyJyvPYP2dHYtmtQm74mLTP1uFBDkLBrENwg4XT2PBRG6AiHMbBqLbhp/PdKPzLY8fKVVI75rwDv/sd7y80MPv5R2NV5KNLTXtWT6wfbUFoxKs8GdM7acQ7jd0xReMP8k8h8Kg+UOx6PGT4djWkPvHA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR0302MB3398.eurprd03.prod.outlook.com (2603:10a6:209:18::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.17; Wed, 1 Sep 2021 15:05:42 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f8b5:1ef2:89b2:f8c5]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f8b5:1ef2:89b2:f8c5%7]) with mapi id 15.20.4457.024; Wed, 1 Sep 2021 15:05:42 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 1 Sep 2021 17:05:36 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 X-TMN: [j4KUnPZ7vJHq2GjL4bEK3a0pn7TSiBa+] X-ClientProxiedBy: AM0PR03CA0021.eurprd03.prod.outlook.com (2603:10a6:208:14::34) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20210901150536.2126359-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.142.38) by AM0PR03CA0021.eurprd03.prod.outlook.com (2603:10a6:208:14::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.17 via Frontend Transport; Wed, 1 Sep 2021 15:05:42 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 39b30e1f-f5aa-47a0-aef5-08d96d59f7a6 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiR3ENj9J/qOYHLO8ckKBQB1yaa9UkIChH4nRKV4T92l2ECDuPsNTvdOeQxc4H3sDwrxJJ5e+/ZeId/ZU3fzzBMzxBHZ1AbMcFX783owJyzFfQ5amEnwYrvbh6o15YuRO/a677AnIxrwPoUX2FAZO0Z4j2BSwT2ivDuzh8gU8Nop7oVN2WQW7uBW1/teqnJOoew9P8v/GXQPteq40wvi1boa7kt1iQbLKdid4QIAI/zDRdTJ8dwNpPaDF9WPeBCmhiuXzhZA4DBXk+VncrSuUmgFU49Xm0gt9wKfMMp7CArHbJFSZhHhZN/Zdrr4S3/KxU3bECU5IGk84hl16f6aNFbuigGzYs7lYepD7RFC3eMVzZlwlHIW3wS6hYC1OkEKIgWnwcxmbCTufJm/ABeGPV/4SntRJBnaiB0vna1SUUFovs8gkLQs1xfgS+QLVqLAYl6rWFTW9Ap+PneP8bCoT7y2rLZBYTwGoPiERc+cwXO5Lti5NGmeMG1oKjtNpqnlXMPciLUVuUepahvVS/kzQDmopnU8uxe0DIWyITwBlcj0Fkl2VVQ2GBaQqQ7EvDdZ1+8zGXhAJ5OBpdVzYjyzHWZmEPXW3xS1xDZCBEChW2GvjLFEqEB2sr/s0ABA1Rj5AT5agX4XjHDkuTd0Y4veYg8SR66RQgHsaJtiMVyNFh/dU7AC2JvzlftSOSiwcfup/MeWInzOapzscJAWpFBeXNWU8cSHiGXfe7a2y9p4Y/8a0kAbupkDR9AiFZO32YEJlvE= X-MS-TrafficTypeDiagnostic: AM6PR0302MB3398: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ct1HMX7c1q7zkPgw2CTOB08J433tipyMdbA76Tc55lJw8Y7B3enD7hv+D8EYmmtrFpVGlOlrJNdo/zFXixfech+StzVCleXC3bUcPYqcR1kf7QkyNzx7dGJKWe2zhgf1dIJ6/aalconNr64csGqU0HCeDWqFbBThqKWrypLrbnXL6ks+idiVLRThpgaY9vBhIF5PF99r1iV4kKM3AS3aQOGkDlr5P0vCXUn0XYJ1bk9U+JGwTRzgyVfMFucRD6uMx3x6hBic8kyQUAQw7sFMF/8uRH9Rp6cjq564NKQEKdi3168Z2q54gwZg/5ZLl/1h3DD8uxDxLuSV/zYB7Alj4X21EVUjFqHBxxs4ztduqldMUhdjfoB/ubQ2tsjPmjgjbU3ln1VOgVcJbrFjz2bIe/4l2Q5VS6gDeFnqLIWcdwtHDv0Y+40pe6ZUWBdK+rbT X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: NdasuYnRYp44D1+6iacPgQ4/tLatEn0EuTUU6bBIjOf2NTkrfFdMXxFocMiFhTdmH/NoQ0UUV+rFQjFTtVHoZ9v+5PAIYDQ5G01svyfKrd45cPoGWbZOD4HjedqoI3TqhA+xVtdbdUv/sGXnci/6qw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 39b30e1f-f5aa-47a0-aef5-08d96d59f7a6 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Sep 2021 15:05:42.6458 (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: AM6PR0302MB3398 Subject: [FFmpeg-devel] [PATCH] avcodec/h264_levels, h265_profile_level: Avoid relocations 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: UpkWA6193hFS H.264 and H.265 levels' names are usually of the form "x" or "x.y" with x and y being single digits; the one exception are the H.264 1b levels. All of those levels' names fit into a char[4] and it is likely that this future levels will do so, too. Therefore this commit changes the H26(4|5)LevelDescriptor structures to use such a char [4] instead of a pointer to a const char. This makes the structures smaller (when sizeof(char*) == 8) and avoids relocations, thereby moving the corresponding arrays from .data.rel.ro into .rodata. Signed-off-by: Andreas Rheinhardt --- libavcodec/h264_levels.h | 2 +- libavcodec/h265_profile_level.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/h264_levels.h b/libavcodec/h264_levels.h index 6bba2e8624..310d79e51a 100644 --- a/libavcodec/h264_levels.h +++ b/libavcodec/h264_levels.h @@ -23,7 +23,7 @@ #include typedef struct H264LevelDescriptor { - const char *name; + char name[4]; // Large enough for all current levels like "4.1" uint8_t level_idc; uint8_t constraint_set3_flag; uint32_t max_mbps; diff --git a/libavcodec/h265_profile_level.h b/libavcodec/h265_profile_level.h index f1a11f51dc..cd30ac5c50 100644 --- a/libavcodec/h265_profile_level.h +++ b/libavcodec/h265_profile_level.h @@ -25,7 +25,7 @@ typedef struct H265LevelDescriptor { - const char *name; + char name[4]; // Large enough for all current levels like "4.1" uint8_t level_idc; // Table A.6.