From patchwork Tue Apr 12 19:25:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 35294 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:671c:b0:7c:62c8:b2d1 with SMTP id q28csp1750593pzh; Tue, 12 Apr 2022 12:25:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwiTneKVkUy5MBcc/1P2ntyrDazXMLKHwOv5WlcUYlEFCf63HzPLJjVFmNLA6U921NW3VGn X-Received: by 2002:a17:906:c08a:b0:6ce:36f8:bfe8 with SMTP id f10-20020a170906c08a00b006ce36f8bfe8mr35328683ejz.52.1649791548353; Tue, 12 Apr 2022 12:25:48 -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 b19-20020a056402351300b00418eee96003si178084edd.315.2022.04.12.12.25.48; Tue, 12 Apr 2022 12:25:48 -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=OR4le9XV; 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 150E468B3D1; Tue, 12 Apr 2022 22:25:42 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-oln040092070030.outbound.protection.outlook.com [40.92.70.30]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B744368B3B8 for ; Tue, 12 Apr 2022 22:25:35 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OUwvySmlbCCR5tKjhM8gJ1EcO4ws7caC7iIMV9jU+PsSlKAc7gtrsxWjdjvtMk2WGLpx4Aa1NUGmGKW59rvnnaqDOqeIBrD8HPS40WmN63QXgih3BO4hVB8vt0widk0bf+i8ukO7h63ioLcq6rVrwfqEORgU84StG6x21HJgKW+fNacx/PfVqLIUh0pQIwh8w//PrkVQ6c9TRhiJ5xD/+nwNwZyR5hXMxYlk14EGfdJXNcPW/j5Q2WFzqf2Kn4Bc/t2NdKKkzKPXpCppUB3+a4DEKEVBiPSw7kqxekAd4peH7hvapuBL2uW5Ek770omW8kiPkeks5N9I9cea1o1H4w== 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=tgqmVdwdZAifF11npalmZJrYcTGae1XvP8Kmm708LHY=; b=A35XHuUHgjOjd0A6E2Zr2qU9IR86jM2oJyYCJNbOUh99lIJijJ9A4IghHJWk+o3kGglNdobNCNGZtOIxVapvTy6Z/lJQNmBfMcO4x4uZwBFqOYfJEHQ4H+sd74ZtNRIyFMXEU4NMhAnfvZbc1IqFT+byQGKZHilT+Jt7FjQMyg5Zd042G/UT1f0ZT/dWLvU0De2AAFetxSAHO4Z7YhE8GDLCulvAxqHUqlMgM791ZnzndLfWg/JDuB/XIaNVytJa7UOVIbGLDQyXbKZBXaqYsQbssY1L4ISiggPwv4VaLK1dGSLdrVOS7Q3/fcTpluz0i0hBbPB3vsIWUCf9qGLNPQ== 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=tgqmVdwdZAifF11npalmZJrYcTGae1XvP8Kmm708LHY=; b=OR4le9XVBhNl8Tzl9lajOcQFV/qxK44shROjFczyiiuGMg5sGVZffX3al/wmz0peH6dudUbJBN+4j5cAOSWp8aKmcUO9hSJbBwI3kC0MH5KJwTa964wzDv7WKiZ8rWWsZTgJUEfh5UzJi2ek8CC0GRLzsf9+n0rp9Boiy9bow04Wp0xCz/lf9kipUC5+3ItgD3uX+V8dARjwYLiyV/yZ02tLcSfQCf2P/VcZyUx1066Gqn3+ga5zPCKATyqr0BiztUO8W+mQAc3jNPX8Ow++N4pBhjmsSXbSqt7jYDzKrSftR0dxd4no+5vaQTzf3A2L5XTib0tQREqjpsYkudaa3A== Received: from AS8PR01MB7944.eurprd01.prod.exchangelabs.com (2603:10a6:20b:373::5) by DB6PR0101MB2230.eurprd01.prod.exchangelabs.com (2603:10a6:4:44::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5144.30; Tue, 12 Apr 2022 19:25:30 +0000 Received: from AS8PR01MB7944.eurprd01.prod.exchangelabs.com ([fe80::fcc3:1285:374c:9b2]) by AS8PR01MB7944.eurprd01.prod.exchangelabs.com ([fe80::fcc3:1285:374c:9b2%5]) with mapi id 15.20.5164.020; Tue, 12 Apr 2022 19:25:30 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 12 Apr 2022 21:25:19 +0200 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [BOhEpRzP4y2teFnFwOZKBgKuZdypP9cD] X-ClientProxiedBy: ZR0P278CA0174.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:45::20) To AS8PR01MB7944.eurprd01.prod.exchangelabs.com (2603:10a6:20b:373::5) X-Microsoft-Original-Message-ID: <20220412192521.750751-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8fc22648-23aa-40a7-1d3a-08da1cba34f0 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNXy+SskBdSUJJywJ6Eqf0+mn5rTub8p+UDbc5WomU4swDJXsp/ViG1Rgx0cVUMhsD2FlmWghEElM+nYrBVVKEotPE24p+jPfNI/weP2pwuI0UMw/gaNeIQVGV7HRZdHTQE4+D91351F9Nlo62OJYBRhxLzT+aM9uX+SM/XVOYlxYsCJdGHtriczazGnhrREFLUMstwi+SXXjoyZv+ZSlz6wPf1TJwMV/9TxhkPrm3pkDaJMGoMMZujboj4LEI/EW3gjwjFPWvU61PQ9HolGKMoOD9t6f5r7R3RKH+EJDrnEJuKn7g+MiCAfte0RI4+KNVAAE2PBEV4QiQryd9SiyC9GqotbC6c09/sGicklZZZZXA+q34dWTfBh3/CgmKc7mGaAu+3/eWfi+5/mh+olGt1RYbVk+RWBQo9c9uz8mXeR2zofMYLqL3tPtA/qlgswTbijJMSoSPfCxn6yIowF312je3AvzxdZX6TvsFLfvhxUgdpzfYquNVtBZYXS9gpy4AgA6keFvyKV6rq81MzoE4/+49l25CCITgAig0YzR+oQO2VvIcFTGXa2/ktVQ9K+LldIXwPqssJ+l5MbzzlGbNtWyHznMKvR6Dxeh46Um+b4CguPr3TvYbevL5hJxlK6zaUbiD8S/qc9hbwTDeRmWvb0ckakbVZgokCn8CokBuv+ymDw2fJivldGoM8jSP2rsrwzrkZj/MDbgb7aXgm2otIhG8sIRMLIcDM= X-MS-TrafficTypeDiagnostic: DB6PR0101MB2230:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BId71qFBUCRk7U37Z1/t8nZBgrj74haMzujanw36cTWndBiMHz0PuPUqpwHBfesY4VyfmUjBaBD3/wQbTjKVSh6ao10815xNeLwpIlu7I1pLUNfB/2tpuv/IQXOxbZZU+n9aBnw7CVZ32Jrh2OSTB2EGdboF0pPhbI5GoAPAibwMigsbil5Vav1G5v4ttDfPSQFTGwaUaMWyzZ5zI1XVLp7HAGlOZTX5n1QDDA5cf/9rbuDscbKomxZE1foIF8YCamKce3l/z6OjN5rJKIEYPJQlFv9xO9x56kX4iM77Ggg9HJU+cDCBZOLpR79wqctGiKZRQHlfODgdpygAgYxNfUFcZer7qzJ79ovOY6KmZCJT4XWmQPXC3IHSpZQt41kk63l6RUo0/4id4qvhBk0iXT7Tx0XTFTmNG88FU9LGMpqWmWSb/xbPzsX/YwoQTeW4vHCZKzej74u6oe8cm0kQR5hOow7uJlIg64BHJ3SdJRN1xpcstIl/H9gSPM7/anRC+cqDX/rKccsrvfIS/Cc/y7DOf2gHG6JiPH33F+OPegfGSET5n2dth6JPpFKy6R39FWSVLvqS1Cl+ZNcLegn78g== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: neX56JMhg8wOeaMiqpDwWn7eHZewPkO8yNMONFnWa67vU57vpFSNmLuO0rNckHWnjDFQPrsY0Dinc5EI+fWEmNGfwOcaIcnc9hPpAPsdqWbcVzf8zIM9Oq1QQ4x5/r01bJW8M/CdCYX3hSAnG3h2Ev2yjwaISfI9ZETDuPcZeDupVOwtHO58o8zMl0QCjie/mSExJkPj7/Di9qWmNt/+PAqbZJhMtms+s6hTkgkooC1a1S9JkT2UcHp/zrcltxJd2qkZ2n5pC0xmJublwTRcJKJpHleZsglV0xDw6EITGSRZsimhkJxkGbP4SYqWA8kB9zbCuADCGRnUJFwRiLR6ErklkJE3X+UnoINh9p2pa5NJVABZaR2e6JsjqhKrUeSprf+A2yfijJCg/Te8JzXTQHKZCVrvGgj8LRkQXdCplL3Bk2YodqqaRf7hlu+vzaQ36Bc6Cu0TNBT8h7mqYvfEbugzV2exPXSAmIA+F0zPSnkhoHef9Z26e8pF2hazFIgbcgaLUwYHK5gR6p4/P5ZtsoJWC3vNJ0tlrQ3NU26kXv4cviZgEKdbLfIt4Eq4Bz0sxc9ifCdq0ytVNWRo0wXqjTpK+qvXeCQNXAuat3xHNRdrcwq8BMlMb3CwXpBBIuKEZvYvh4oi39jZsDt1BBA4OfTVceq112/oylGtRLPg0NZQOCUddqbK6cuyCTv9tf2kMl1t/dq7HEzMSo+iLwFWZqLFjPjB0pthFeRp3Q2nGLrFwIsPqawTUj3RlxujhZ9/AR01OSeeFx6Hfv06p9V5dPfCYPH8WEqDAtkyCQv53wuOdqCz3qV9PO02BEia5xK8Jt9ozQoicwr8gt6gZYlCxocM0AXO2PbfQW2dOe9RICLzTJTCEAlmmBgvkxepDrX92jLsng3f11nCObT2zbEVLe4lKcp3Ayoj0sBBIpzQUKE7KQMkBo5sW/lb7xLAcZhZx7Of7puZ9ZtvdD3LQPsxoOdUSye734Z9qxu2QDNG1zCnFXa7RwW1o42X6sKoUVCrHH/3XcZRx9kZl+HachGm6hBejLB+1LRg2uj8RF59iC35I9hSVBJbFR0Jp/2MGWsetRrUspd7b2bFVIy60gv0z1qupRbxuRaaiX/Ow4estqHXEvDwXbqqjUs0XdvrTk7bXMeHpbCK+Xbzbmm6cmuy33VUovJwnCVcL1zVGijPV6xoCv+wY2+TtFeZ+Y6nTVf28MYwfmT1N1DrSaD8fTYW/hDaFn9JDNEmRbtmWHDbZ4IW/9kiw3QlV3HB9uJKrNQLpdPSVqq6anKM5dh79OSAAjNll5T8/0jQ6bTfeE6zqfPaQkGo5IizoAjIZaoOrxlzgWZyWCGdY4yauaLmV5ufmi6vftsdj9/dsZxJDEEvjTdk1r0anHbsqtQ+2sq20yohD5EbkkWO/TLjUSTiS9IeHc+jnZzccr587a3w28rjIQH2ELveezHMnwqSQbwzm3c4 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8fc22648-23aa-40a7-1d3a-08da1cba34f0 X-MS-Exchange-CrossTenant-AuthSource: AS8PR01MB7944.eurprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Apr 2022 19:25:30.6648 (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: DB6PR0101MB2230 Subject: [FFmpeg-devel] [PATCH 3/5] avcodec/vbn(dec|enc): Avoid always-false checks 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: uB1xV2KkFj5s Do this by switching to bytestream2_(get|put)_le32u() from bytestream2_(get|put)_le32(); it has after all already been checked that the packet contains at least a full header, making all the implicit checks in bytestream2_(get|put)_le32() dead code. Signed-off-by: Andreas Rheinhardt --- libavcodec/vbndec.c | 20 ++++++++++---------- libavcodec/vbnenc.c | 22 +++++++++++----------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/libavcodec/vbndec.c b/libavcodec/vbndec.c index 56bfb1d544..a6046c766a 100644 --- a/libavcodec/vbndec.c +++ b/libavcodec/vbndec.c @@ -71,20 +71,20 @@ static int vbn_decode_frame(AVCodecContext *avctx, return AVERROR_INVALIDDATA; } - if (bytestream2_get_le32(gb) != VBN_MAGIC || - bytestream2_get_le32(gb) != VBN_MAJOR || - bytestream2_get_le32(gb) != VBN_MINOR) { + if (bytestream2_get_le32u(gb) != VBN_MAGIC || + bytestream2_get_le32u(gb) != VBN_MAJOR || + bytestream2_get_le32u(gb) != VBN_MINOR) { av_log(avctx, AV_LOG_ERROR, "Invalid VBN header\n"); return AVERROR_INVALIDDATA; } - width = bytestream2_get_le32(gb); - height = bytestream2_get_le32(gb); - components = bytestream2_get_le32(gb); - format = bytestream2_get_le32(gb); - pix_fmt = bytestream2_get_le32(gb); - bytestream2_get_le32(gb); // mipmaps - data_size = bytestream2_get_le32(gb); + width = bytestream2_get_le32u(gb); + height = bytestream2_get_le32u(gb); + components = bytestream2_get_le32u(gb); + format = bytestream2_get_le32u(gb); + pix_fmt = bytestream2_get_le32u(gb); + bytestream2_get_le32u(gb); // mipmaps + data_size = bytestream2_get_le32u(gb); bytestream2_seek(gb, VBN_HEADER_SIZE, SEEK_SET); compression = format & 0xffffff00; diff --git a/libavcodec/vbnenc.c b/libavcodec/vbnenc.c index 03d36ccc86..ec04566a32 100644 --- a/libavcodec/vbnenc.c +++ b/libavcodec/vbnenc.c @@ -97,18 +97,18 @@ static int vbn_encode(AVCodecContext *avctx, AVPacket *pkt, memset(pkt->data, 0, VBN_HEADER_SIZE); bytestream2_init_writer(pb, pkt->data, pkt_size); - bytestream2_put_le32(pb, VBN_MAGIC); - bytestream2_put_le32(pb, VBN_MAJOR); - bytestream2_put_le32(pb, VBN_MINOR); - bytestream2_put_le32(pb, frame->width); - bytestream2_put_le32(pb, frame->height); - bytestream2_put_le32(pb, frame->format == AV_PIX_FMT_RGBA ? 4 : 3); - bytestream2_put_le32(pb, ctx->format); - bytestream2_put_le32(pb, frame->format == AV_PIX_FMT_RGBA ? VBN_PIX_RGBA : VBN_PIX_RGB); - bytestream2_put_le32(pb, 0); // mipmaps - bytestream2_put_le32(pb, pkt_size - VBN_HEADER_SIZE); + bytestream2_put_le32u(pb, VBN_MAGIC); + bytestream2_put_le32u(pb, VBN_MAJOR); + bytestream2_put_le32u(pb, VBN_MINOR); + bytestream2_put_le32u(pb, frame->width); + bytestream2_put_le32u(pb, frame->height); + bytestream2_put_le32u(pb, frame->format == AV_PIX_FMT_RGBA ? 4 : 3); + bytestream2_put_le32u(pb, ctx->format); + bytestream2_put_le32u(pb, frame->format == AV_PIX_FMT_RGBA ? VBN_PIX_RGBA : VBN_PIX_RGB); + bytestream2_put_le32u(pb, 0); // mipmaps + bytestream2_put_le32u(pb, pkt_size - VBN_HEADER_SIZE); bytestream2_seek_p(pb, 64, SEEK_SET); - bytestream2_put_le32(pb, pkt_size - VBN_HEADER_SIZE); + bytestream2_put_le32u(pb, pkt_size - VBN_HEADER_SIZE); if (ctx->format == VBN_FORMAT_DXT1 || ctx->format == VBN_FORMAT_DXT5) { ctx->enc.frame_data.in = (frame->height - 1) * frame->linesize[0] + frame->data[0];