From patchwork Thu Jun 17 02:18:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28516 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:bbc9:0:0:0:0:0 with SMTP id c9csp64201ybk; Wed, 16 Jun 2021 19:20:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx8EAZpeue/WmHYzvB940SUSqcrTVTLXlEXZtAAlW7S/8zR0d37yKr/Wmrz8MPCRhLxRe00 X-Received: by 2002:aa7:c594:: with SMTP id g20mr3260858edq.193.1623896404480; Wed, 16 Jun 2021 19:20:04 -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 j15si3808600edv.567.2021.06.16.19.19.50; Wed, 16 Jun 2021 19:20:04 -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=BuFu0iTs; 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 78020680207; Thu, 17 Jun 2021 05:19:44 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR06-VI1-obe.outbound.protection.outlook.com (mail-vi1eur06olkn2070.outbound.protection.outlook.com [40.92.17.70]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E24E2680207 for ; Thu, 17 Jun 2021 05:19:36 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KwX9ATliCLCFj2MF/DjQ3OVo0r9VsZ5UrtM63+My1X9IVcYLzxxiG42yNDZsQh/MAGpZi14h6PM4kYVXBPq62rVd9+JtscsOXlrWCFTZZNCU0h1MFLMh/Jc28X1UVo97RcDfw67AEGIqY1gGjU6hl3MFUX7zAXZCTPmWxAMjZdsZL7dB26MdAnDJZc2K5RU7Rh/D4w7NxnMldWiJz7bHFLW0XjvIj520t6dtNyVylMY0XNBNmVLiquCP1NW0IdUa7Ogwl8vdWRZX0Hw9TeBZthA27PfKfVW1uh6PY7JHz+ynXqm85G7AVa9gZdaxBohAoajzNuB8KX5iULFzqytefQ== 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-SenderADCheck; bh=12XrLwPWGpvWdd1URVK7FNuX8CwCnGo7RQrc3U3iyVc=; b=OlpwVcKNEkquL4CQOjj3LfjuxCol5UJ1X7Ew6QFrCYSIbXS1xMcoPsBTx1SQFJFYSbc6V9Wg0/ZGYBHNKmo01hq7cPakGDTgeMji2XOv7uTyXHm3ckZHVP0jXEQJz6TUKBO8P7UHeHTE7PpcXR1IMD+YBZnpRp9MMigoHSk0z8eXBPNrMVj8fDtEDCLEaa2sIWqL67fFXf+2smYGrTynt7htCADVsacaGLNZjAR9aQ/gRJ021MoaPFweHN28Ev8znQVkwE54XQyPAjYPD7+YNhD3XriIA94e/Ktfwu8WLN0YvJzfZjfexmuo5mFZQ9WQyc7L7jOWeSA5Zpa3YPZKAQ== 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=12XrLwPWGpvWdd1URVK7FNuX8CwCnGo7RQrc3U3iyVc=; b=BuFu0iTsxjL5h+mNKsbqjvjoG3TY+zBki35a1q64ueOpq6eBmM9kv3odmJunwD5d8FYrjdnAkUwesZ5Fdb1Dutq6GX4JF8NQPcvxcjfyploR+mLSatrmFbdLOXABBozCG+HDmxzs/9lMFHu9y/eAo6/InsovmRQN9/ti2zVAEo4AYGDmt7BSFWJvZX2iDwTZ4P07P09sWRfXqVCaEsNIypeRo/XNrIAdhFymr0bdV8XRwVZBzEfBrQN42D5quEtbbHuQ6w6n21edGamUJBDYhM+TEOwy/e1ssWgP6zOCSu2oI7M28HWaoIYwKr3afFfzo76Kkoaaeh2mO6dcvEE3GQ== Received: from VI1EUR06FT058.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc37::49) by VI1EUR06HT177.eop-eur06.prod.protection.outlook.com (2a01:111:e400:fc37::273) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:19:35 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:fc37::52) by VI1EUR06FT058.mail.protection.outlook.com (2a01:111:e400:fc37::196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:19:35 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:B0B1E3BF996572680C2607DF3F11075352E2D28973C079057CFCFF9F644CE12D; UpperCasedChecksum:DDA9E3E4B9A349AE5D6A41BAE02C840776A35003F3105210981585FD71396A88; SizeAsReceived:7395; Count:46 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::f4cc:63fc:9cef:37fb%6]) with mapi id 15.20.4219.026; Thu, 17 Jun 2021 02:19:34 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:18:41 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 X-TMN: [05nXjuMz0cp1PZelJ56iS0U3zMRHNas7] X-ClientProxiedBy: FR3P281CA0021.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::11) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210617021921.1318174-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by FR3P281CA0021.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.7 via Frontend Transport; Thu, 17 Jun 2021 02:19:34 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: bd39311a-1ac9-4bda-b24b-08d93136591d X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1OEktZWN+Su9K96AfrE8LVb/7wWdUrS5Tw4yk/+5fzN3dwyy3Lh2EHOltixl4nSRpCWneuy4Gs2b/J6VvzhPQHLsEmLEUD5YIO6XW5zO6+XEDT67L4V+zBSW11Yit3met3uGgj79fyHXP53KVevwBrJ51qelc0H9U4OwcfpoFGza5wy8UaVMdd1vq6ZMu8891B6PC0F2aD1jRkea7SRN+OGxrW83y+uniiF8vyb0O2u7kJ2dYWr2Y76a57nfb0ps0LGLISn8mwOPEm+SeIm+NHuGVwDepKxRz1moQrq0U/+EvSDcmr5LjkoTk5Q+5oGs/WrIcbqarXjua57Ogvj/g3AP1TF3hBL+nbh1Yj9O5vK46NyPuI19wCCrt+SU3UmufWQTL5/bFr1b0rRdFWL+0KCBl6+kNHKfKP8zfs87HL4JSVnZxEDKkhtk5Yv730LaN8yUEQd4TqgdB+XGFrors6jw/ZuhMFgdNz9dT6EEdfohIwNLh9FxIAEfnO3N2xPJWnDfihp8X4upc5ahPWyLnR+pTepNsrM4eCBkuyk5K+ZEqkTIOUeuBJkFtSe3h/9lSz19Cks//ZxfUaGbBbpSZOiN79c+z1Bga23EvtQoB66NCtd0T6jgfkWtQW9iFVTikAoQbdgNxrq3o734F9h1ZiMbJNooLGZtvHhofrufRcLPWc6KoawjXqr1awJQRpu4lbRcgtoeXc6kvGuKhZrfkE+ZzglVaKm2I7JMYjOo5/fLvu/LZHrtr42jvfuV7GAhs1 X-MS-TrafficTypeDiagnostic: VI1EUR06HT177: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AlQDOsPyW2dmrDT3lMH9q+HdmNb8HbPkkXNp71a/Q7BHev8HZeb65KuRNLdffBdTpqdAVC/eNfzVkJFKv29U8NlOiL1QOS2mMSF1++O4i8WGAMwovHPyxLUz6hF5qZJAruyWANgIjKhkyHEXizSJPojEWJGAjUB7VjmjfPQFvIe3PD37vb7kzGEu8veOxOsshDTZ56P1RrHC+kzxMJp9K5AvBWmG73SM/yo3ZgK8vZtfxQ/UkbCWb2ofjWXRPTIbKoxZVEORh8nSa2HkzirhmqX45Pv7IjNFyLxu4Uag4XHeHASnKYaXrK2jPxwg1OxDeBuO6pHisbVHph82CJrT+7C0Pm3dJfNGDEdnmsKQr29GNMnED5ui1lYzbglQCRL1eXLs+XlU6yUuI0wjPGQfNQ== X-MS-Exchange-AntiSpam-MessageData: gSxa2QBa4vlCEY/bKDSlz60dTTBHphZzDN0JssveR+zrlnaQrVCQO1BuL4a0OeBQCEh6BimXW5Gt+kxiIAqE4Kcp0FpO7oaNXQyWBKWvQmOsXXWLrFK+r1TPS+RaJRQvqRBdfG0/VYdJRHT6TwQ+Qw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bd39311a-1ac9-4bda-b24b-08d93136591d X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:19:34.6147 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: VI1EUR06FT058.eop-eur06.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1EUR06HT177 Subject: [FFmpeg-devel] [PATCH 01/41] avformat/Makefile: Add missing rawdec dependency for IPU demuxer 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: DQ3Hej3Q7U1U Content-Length: 1197 Needed for ff_raw_read_partial_packet and ff_raw_options. Signed-off-by: Andreas Rheinhardt --- libavformat/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/Makefile b/libavformat/Makefile index c9ef564523..7000180d48 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -284,7 +284,7 @@ OBJS-$(CONFIG_IMAGE_XPM_PIPE_DEMUXER) += img2dec.o img2.o OBJS-$(CONFIG_IMAGE_XWD_PIPE_DEMUXER) += img2dec.o img2.o OBJS-$(CONFIG_INGENIENT_DEMUXER) += ingenientdec.o rawdec.o OBJS-$(CONFIG_IPMOVIE_DEMUXER) += ipmovie.o -OBJS-$(CONFIG_IPU_DEMUXER) += ipudec.o +OBJS-$(CONFIG_IPU_DEMUXER) += ipudec.o rawdec.o OBJS-$(CONFIG_IRCAM_DEMUXER) += ircamdec.o ircam.o pcm.o OBJS-$(CONFIG_IRCAM_MUXER) += ircamenc.o ircam.o rawenc.o OBJS-$(CONFIG_ISS_DEMUXER) += iss.o From patchwork Thu Jun 17 02:31:23 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28425 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp198762iol; Wed, 16 Jun 2021 19:32:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwrnHHFpeIWmanDlxQg0zu2dUFUBMsmNbIrdCb/Coz6NlAxPBViAkYf1S5m5MSl+jlEZaIS X-Received: by 2002:a05:6402:177a:: with SMTP id da26mr3452835edb.40.1623897147280; Wed, 16 Jun 2021 19:32:27 -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 v28si4190762ejk.538.2021.06.16.19.32.26; Wed, 16 Jun 2021 19:32:27 -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=nCLywbuQ; 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 36B9068804C; Thu, 17 Jun 2021 05:32:23 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074086.outbound.protection.outlook.com [40.92.74.86]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D6076680258 for ; Thu, 17 Jun 2021 05:32:15 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cjNcyNLGGlkwiDKrbBPlsezvHI6JQcB0Q7BVq1o03Vhp+Z/bD/6zf4PTviU9etuPvXT9MwOmStVnCXc/6bIGgG6DRz8C1EjUUtbZE8FN+yhxI6QOb1Z6JAL4aRo5NG5YpPKQ5sGxKmrQEOTWgGf9aHKUdM1DKdvSqLUJj4p9vq2YvFYiZ0XPJP86tWluYF/mImViqT99AuRfS93j6aIfDlQ178fD/bg92mCUKu3XAwzbq9MRwrSvLCR3De4wbIWkOq75LzIYEE65NcrR2+jOjK3O0gpzYP+UQzSjmfhbOJq0ek7ZdgYnl2PN2QwXqwPagKDCNIT+lG6s9ZFXlUf/lw== 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-SenderADCheck; bh=2AXVhfj5FUXM8vrOLZs0xJLvepIy3+cLx6lsDtnZZcI=; b=g8qhiTLjU0vzdiCvwAB0pHUKrettcwxoiJ1xXRBXJ0W0vK8OKuA9Qt7YaryzKTq2tV1sR6Lm0lg8h3LqntzwMbbp4BFGvQvkNvoT3g+ZDA8GFWJ9FHR37yAGO2iAdFA2rQbL2DWEuechHAxXw3mlD8Nv5Y6J8Gp7eaiZTXo3zJcoHTPdlVGC3O/eYPTxrPqlNO4v/wUX/k0rWo514Aq/NTY1rXpeWybxhnlbmRqvLB82uinUdYRCKE3QXrDG0POP5OiyPlaXCr6Ib4ZQgSw5n5w+EP01gPnNJuyDiBKgBGNxqfKcDWBA2RKMEuSItGaf1RyScDrYYvy/q0fxJDfxSg== 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=2AXVhfj5FUXM8vrOLZs0xJLvepIy3+cLx6lsDtnZZcI=; b=nCLywbuQcTIHIO+noi8kBfgnxZBiq23g0FDRGpEFUmVV291KqJsFsLmTA2eLGzLUo/38ftiuoWa7xS3+guI5SAEQjmwKJIf2HBBvClmDuLpD4HHVVfexFnZ/m+DRKZQ2Tx3loTuVCMmMMUqD/er9IyT1Wdq7RvffIoUAbS3U/nCgSzHkUxn2mh4k56Le/KNcxmpDGhZ43K8Lhxp7CWPaRQSQHjSLXrtwdCvlarRZK1sYbKDlumgDmYmmYy//ZO3nJ35qQheSfiVA/T4sttHgfD+s11siv/gzoBqk9EpXZrU5Gg6hILqtKRrFXtSZjpG/irH1PlabxVQoa+suD4F2MQ== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::49) by HE1EUR04HT137.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::65) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:32:14 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:32:13 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:56046221A8E2158D277CD6268857A16C892D11DCB40C61DFB8FC571870781533; UpperCasedChecksum:646EA75783D94D79E27D0BF5F96C7EC495E3AF94DF6C5A21C585BB6CBEA0A1FF; SizeAsReceived:7602; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:32:13 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:23 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [NCC3RvN9FZ1BjGpd7iItlPM7lr3Sv8jo] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:32:12 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: f05f8fb1-977d-4066-3ae9-08d931381d3a X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1O/ECCljvsQhKYbC5MT0mduYolhVZyWpXy37cw4s9iR+0UPzXUX2X1kyaTgazO4QQnFS84ewn7LlzwsrTRyXTYY0U8uj+DNQpRUoNyB5AoQorlrjZJ9BiBeiwIcP00rxIYAiI8F04tHRelhGCT2VpMJ20LZamNZK5d6YyoQgtVAw4jGkv/PJDFt7aQLmvalCg2bSJW/dsxLVRDs/hEYbUvCmH4px24NBHhWkaBIAPmm8+dG4I04HZnnvPVrq7jpj4ET3E9LJKCWrB1lHaWOyFySahuJKvT3I1OI27hlG/oY8VRNIucAVNMAXsJZsCDlds/SoJf8Cb3iNvgTVA8kArVq5X4ccz+GmWxgQCeVvXdj9BSI4lrD6LT9XnUdE19eFYerk1g8+U5vNXo1FY/ZCQHataB2WnEFd3Ykt6rzUa8FwexOssnrsnxPYcjIC/N+oO4+f5XymMbiQXpXUS3H1x/2mrmdxq6sMHlWNqxG/GUv1/FrDU0NTlWlLAFHXNHU3B5Th04zkfBVK9IPfwmqWOSbMGhishcADqZnnL22YIuyqjPZHlv22KdqQQcuxtrNtbqBhBw93MObb+CPQ/66qAYHBHbNzQUKxI5GDEgr4A35uQJFp1SykjOARVDEla+EUMU7dIYAM2Iqxm6+3PqY4NwgbsUcf/nOJnLFTJR5zvlJkRAGp8FH76qof9ekSiAa+Znr6+BhHjAQ4KpRT4iKxbWaSNs8cdQqA3of8Jb1W1zyQSNGrDGvTsrnKhOKtK1sRei X-MS-TrafficTypeDiagnostic: HE1EUR04HT137: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: A2MXIzTOyaNd5IqEfpQu2WkcJq5V2A1nV1XlNziH9SDvQ7Q9lgCEI19SHEAdquUuWD3KtZlwgMQMpkZyTgBo9Ho6KIT9far+ja0AVLg8xdw4OTgwiWSe+5LHUyzKqrlFoAGMUp+h1TCsKLzKQps0eO39qFzfY0ZA3A5+IDPW/1sOUQQbg7bAN91uaVQQEDkBuNFHueHeh1ZIcQUXPgxqrd8BPDW9Fwsc3hziOsI+CmYCyJdlriivOOXnA5OnQPJZTpbD5wu/KLp8rBqv4ulSumCcuUCQtygwtid8XAZTbgVIkIRjM2HUKkhWpRx0SodmH6Xom4W4g84R1OjQ9u+6gmUc1lJC1OLJi5mN60Shq5+Ruxm4RzhwXjjr14z/7Gl6hVN3h1FRKf9YgxYnwFK+bg== X-MS-Exchange-AntiSpam-MessageData: /l78y0qUwmNZ/5X1YqO7YGyH5nCc3wFwsuO2AMKgbqjrb21HYAn0dFQoKjj18ia2PBji4yFR6E6DBhrjBpxVvdHlLtUVHMVD6S1LgcSfVJHz8+pKpn425gDasEZZyJNgVm9g3gGoOdnWlDwZS/U59A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f05f8fb1-977d-4066-3ae9-08d931381d3a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:32:13.3878 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT137 Subject: [FFmpeg-devel] [PATCH 02/41] avformat/Makefile: Remove rawdec dependency from aptx, codec2 demuxers 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: wLYWpOpOBWFq These demuxers don't need anything from rawdec; they furthermore only used rawdec.h to include opt.h. Both of this has been fixed. Signed-off-by: Andreas Rheinhardt --- libavformat/Makefile | 8 ++++---- libavformat/aptxdec.c | 2 +- libavformat/codec2.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/libavformat/Makefile b/libavformat/Makefile index 7000180d48..08f260622a 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -99,9 +99,9 @@ OBJS-$(CONFIG_APM_DEMUXER) += apm.o OBJS-$(CONFIG_APM_MUXER) += apm.o rawenc.o OBJS-$(CONFIG_APNG_DEMUXER) += apngdec.o OBJS-$(CONFIG_APNG_MUXER) += apngenc.o -OBJS-$(CONFIG_APTX_DEMUXER) += aptxdec.o rawdec.o +OBJS-$(CONFIG_APTX_DEMUXER) += aptxdec.o OBJS-$(CONFIG_APTX_MUXER) += rawenc.o -OBJS-$(CONFIG_APTX_HD_DEMUXER) += aptxdec.o rawdec.o +OBJS-$(CONFIG_APTX_HD_DEMUXER) += aptxdec.o OBJS-$(CONFIG_APTX_HD_MUXER) += rawenc.o OBJS-$(CONFIG_AQTITLE_DEMUXER) += aqtitledec.o subtitles.o OBJS-$(CONFIG_ARGO_ASF_DEMUXER) += argo_asf.o @@ -147,9 +147,9 @@ OBJS-$(CONFIG_CAVSVIDEO_MUXER) += rawenc.o OBJS-$(CONFIG_CDG_DEMUXER) += cdg.o OBJS-$(CONFIG_CDXL_DEMUXER) += cdxl.o OBJS-$(CONFIG_CINE_DEMUXER) += cinedec.o -OBJS-$(CONFIG_CODEC2_DEMUXER) += codec2.o rawdec.o pcm.o +OBJS-$(CONFIG_CODEC2_DEMUXER) += codec2.o pcm.o OBJS-$(CONFIG_CODEC2_MUXER) += codec2.o rawenc.o -OBJS-$(CONFIG_CODEC2RAW_DEMUXER) += codec2.o rawdec.o pcm.o +OBJS-$(CONFIG_CODEC2RAW_DEMUXER) += codec2.o pcm.o OBJS-$(CONFIG_CODEC2RAW_MUXER) += rawenc.o OBJS-$(CONFIG_CONCAT_DEMUXER) += concatdec.o OBJS-$(CONFIG_CRC_MUXER) += crcenc.o diff --git a/libavformat/aptxdec.c b/libavformat/aptxdec.c index 489194f49d..dca76ae117 100644 --- a/libavformat/aptxdec.c +++ b/libavformat/aptxdec.c @@ -20,8 +20,8 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/opt.h" #include "avformat.h" -#include "rawdec.h" #define APTX_BLOCK_SIZE 4 #define APTX_PACKET_SIZE (256*APTX_BLOCK_SIZE) diff --git a/libavformat/codec2.c b/libavformat/codec2.c index ce249d4470..9c94ed81f9 100644 --- a/libavformat/codec2.c +++ b/libavformat/codec2.c @@ -22,10 +22,10 @@ #include #include "libavcodec/codec2utils.h" #include "libavutil/intreadwrite.h" +#include "libavutil/opt.h" #include "avio_internal.h" #include "avformat.h" #include "internal.h" -#include "rawdec.h" #include "rawenc.h" #include "pcm.h" From patchwork Thu Jun 17 02:31:24 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28428 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199253iol; Wed, 16 Jun 2021 19:33:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz7rwKXVQUD0QvjWcIsx6Zy/L7qTDsRGeqmGoqa1FYY9tJmK/MSN00AFFrkrlIaaFkpXqo6 X-Received: by 2002:aa7:c40a:: with SMTP id j10mr3344148edq.59.1623897187719; Wed, 16 Jun 2021 19:33:07 -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 jg29si4302850ejc.268.2021.06.16.19.33.07; Wed, 16 Jun 2021 19:33:07 -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=hbyiWbGT; 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 360AA6881D0; Thu, 17 Jun 2021 05:33:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075051.outbound.protection.outlook.com [40.92.75.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2B7D1687FFE for ; Thu, 17 Jun 2021 05:32:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kB4z3+7sN8BQYKGariloVovuzLwvpS080JIbSkpvJwzPuzg0F3hLhEHqBEyZrfzGGYrAU1A52pmZQXu4e2q//zRvRZnddT8RO9+aW8L/9bM4oKlv0HksiurUMdaiCXJ1/hbUsj+Kf8PxFwCziQblikGLFZV7m0pIhJch8kMXhRuiLXFRFhhxjpWURnmVo6YvfAaLGTla5PgDlu6K0OEfslpleVk7ndmEEqocTaSRcHuCw3rdFPym9R+T+SiGOD39+yzQXtYsDz3IrUpMtd694nX6WGlkPaDFSFsBu7k2UGSLCrQUfX/80LAkCwOItAM4Dwxzxgxh8jnZ3VyuacwHyw== 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-SenderADCheck; bh=QWcfpMC45i8QZ1km91My3Qf9KrCt0PN9kztjLDA04Z8=; b=PGHzTdd+njqfw4NYrlaTH3dtDvR1teU7DBb32hWdV7rw4iwi6nBEHswf2psqDFNPEGyzYRo5Oop1Is//EVHVvmi9UviY0ArRE4X3jDtbiWf+KFe05pdeyD+2QU0YCVMldY1JZKRBVyJdiXQvVds4MmvoSbdqXa4+Sq9lj9j2y79f8oG063RkoFVEd9tNvT9NDMMyJ8EubypVZc1pD7eklZzy4bD/PziRPfyHwpzn0bvLKAJb1Ti6/sRrMKlCF3q2hi0TMXo6dw1jF2d17ZYrd/0vSh2LiSjup3n1t5XXDJOc5GgkBK8gXeSGiBoIwEhZCcHGHFlO4gxLkOOmNBua1g== 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=QWcfpMC45i8QZ1km91My3Qf9KrCt0PN9kztjLDA04Z8=; b=hbyiWbGTw/j/rJ00DWuQct0/Gx72cd5C3SRqwDDvP5CQfzPNszfumiyEy/etqBit2d2dhsjpXsnNNoCFDnEdBtyVer/FTsGCLcjxkG6rXxASNfFcmfrQGScY69FYK9nOZUXtOXK/wsQOML8sv/PgaOsCtqOtP4L4fwEKb2z0fQdE3iiDIIUC3qVejsFcYMdF/X6o3D2U3z9l7wVeFqjgJT7W15MzB9lsMZh2ST4k3ZLwfPi8CyAATaDZmGD7vcSfsQwhY0S9pzn0PZ9Cwvu4GfSNND6EiFrdwxHYKfvgfm2MDDbGc0cjMvJHSUUeFP09m0pWvIgusv+Xb0C5TIA+zw== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT167.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:32:57 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:32:56 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:97757A4AD5D3465115AC57DA743F7A0962E32EA3C24BF47319F2C528D6E2004B; UpperCasedChecksum:4B41D5FF1126380D7803FFDD125516352482FB154591D1D08A6FC0F17D4A2442; SizeAsReceived:7581; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:32:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:24 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [UatreUafC80EP17Jedxk9uqwlW9u8v0T] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:32:56 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: cbfbbff9-dbf0-4dd5-74aa-08d93138375b X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCsd7pYOYgnEHc6MyYkK5rzE3sIfBv1ApO4KPTkahfPjWRXvWzff4qrLTgtnPXGvaWYE+I8Vvpy75xA8ztOd+BD9e/ccROjnYDc9iOB013yKDkSeqjOU7oUdDtTqT1QrLnlnwS6uO6b0VeRkKjza96kTbDoFXtnVV4hjYBimqSNFQ//bKBjhk4SBMsd3GjUO3tLUgjTnVVot4aGTwRUCQFPDGqe9z4898q+57wxfQHLLAYNmJx8oNJwo+82D0oPAI0wuN3t3JABkLl/NEKYcJmFeB7oY7bNTHwl51JDIZbHjOrSnw2YQRmAHKY4AcOcQGXXf2SiX0cEZDHjWuDpHWp+P4kZ0ryFwNqEkQIkCPbhO3vihoDvJmiA51AlYJEBuGctBhCgv23Ujy2+fjgjygE+q+THvMsCVdJzavWOxsybuNqt7C3oXhqBDowfPlxBope7mlux9VO5XDFaBY6f0VUyswll8OBVtPL2MTAxAQO09hY4NYqJjqEviSqUYe935v7xfQppU+fiv1MS3/I79Mq2M1JiuumReFr6iqgrTLpaCS8ZXE14+aB/JSWmVAR1lmOz3YrN7aUK6GF9ZAAZ2Npvy5JPKEXcU9DQjd7xbscmG+0IHTBcEgjqfZxtVplNK6s5JHqmVGEIM+urPrah2sPmBcBuv9Mbn6gbLosSDuCexw29e0h6QbJHg== X-MS-TrafficTypeDiagnostic: HE1EUR04HT167: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nauSGuYKMePKK6hHtplqnhmGuwKIFAR/QqsVTJhDJ+Yawd4bHeEePhaPHs05QWPP1ex86+Hpe93ucCDwscjEZC7cu3ukRqcqVIbtjbTJ8uRXNGBnkxNiPBv//WhyV0/8oRzCG7NBqXLcu0DbBeSQJsFgK1wFDoUmq9rEpgT5qTweRWUWe/JYET3R162UqUyH4gRSccT/oPIfpO4mFTzHyH2VJzDgauqJ00UCFk6PdCwXkULErmVgq8FtPM3mf7J4Q4a5S3sPsyKjZO24lfAMeXsTAAShLc0nDWif5E0w8xLwyeaSOG9MsuG/DeqD+XA+WL5Gzp1QyGyEyiZEG/sKuS+nPQg9qEC/Hjl785Hph4K+OzvwhtkOAseewTDZWK4YmdwqpVv7L0zgk1KXfCBaxQ== X-MS-Exchange-AntiSpam-MessageData: ibWUL5WpLD13CUNM6bTULoZpYFRQgd+ODvCB2GDPgj9Lm9jkQLO9DZUfmx1jWiKfsDSjyFA6dApLnghT976nZEXdRIXJ4gAL31NZqXw0R/iihKTjLzKiizuUT3b4ghx/PjFpOs6P7xvRKF64P0oE0w== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cbfbbff9-dbf0-4dd5-74aa-08d93138375b X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:32:56.8714 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT167 Subject: [FFmpeg-devel] [PATCH 03/41] avformat/aptxdec: Deduplicate AVClasses 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: HlYFHZ8q4xhx The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/aptxdec.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/libavformat/aptxdec.c b/libavformat/aptxdec.c index dca76ae117..7153e262a1 100644 --- a/libavformat/aptxdec.c +++ b/libavformat/aptxdec.c @@ -87,14 +87,14 @@ static const AVOption aptx_options[] = { { NULL }, }; -#if CONFIG_APTX_DEMUXER static const AVClass aptx_demuxer_class = { - .class_name = "aptx demuxer", + .class_name = "aptx (hd) demuxer", .item_name = av_default_item_name, .option = aptx_options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_APTX_DEMUXER const AVInputFormat ff_aptx_demuxer = { .name = "aptx", .long_name = NULL_IF_CONFIG_SMALL("raw aptX"), @@ -108,13 +108,6 @@ const AVInputFormat ff_aptx_demuxer = { #endif #if CONFIG_APTX_HD_DEMUXER -static const AVClass aptx_hd_demuxer_class = { - .class_name = "aptx hd demuxer", - .item_name = av_default_item_name, - .option = aptx_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVInputFormat ff_aptx_hd_demuxer = { .name = "aptx_hd", .long_name = NULL_IF_CONFIG_SMALL("raw aptX HD"), @@ -123,6 +116,6 @@ const AVInputFormat ff_aptx_hd_demuxer = { .read_header = aptx_hd_read_header, .read_packet = aptx_hd_read_packet, .flags = AVFMT_GENERIC_INDEX, - .priv_class = &aptx_hd_demuxer_class, + .priv_class = &aptx_demuxer_class, }; #endif From patchwork Thu Jun 17 02:31:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28427 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199364iol; Wed, 16 Jun 2021 19:33:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy5QKAxMWiM0OlTL+0bQbUPoOf10DG3RqAZL99+W5pZBYePQ1dPwEwfZKCobYDreLAd8MYH X-Received: by 2002:aa7:de90:: with SMTP id j16mr3343970edv.385.1623897196575; Wed, 16 Jun 2021 19:33:16 -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 g21si3781953edw.335.2021.06.16.19.33.16; Wed, 16 Jun 2021 19:33:16 -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="HeaCOyl/"; 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 2D0EB6881F1; Thu, 17 Jun 2021 05:33:11 +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-oln040092073013.outbound.protection.outlook.com [40.92.73.13]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9C038687FFA for ; Thu, 17 Jun 2021 05:33:04 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cGWycxHgAzw13CIkUe18Xsw8bfueazHovKNoJaNBskzNULYWppuUI3M65YqJuLx8KtOAsdqPMj1jcBMU0AE3FhZkZluOVnJorznIWHYHy1dmkHaQGE8DYHLSkDz4xDnQKYTh6xM2cg4VQzimhYJFfNGlVp+aeZxqg59Yoc0j29CN02Sfs4ckIqb6Gw8RoV4OVVYEuJKIA9LWGZf4VVatIXAu7q9ml9kbA1JOMgeoEJGxVptsj9bM6d1jTVyyTjwbfvEkdQSQvUb65i2XBraPKz/+3XFUkL3woNyW3v9r0UxwmEIqfLiBkfAuxUGRQFinajdhO3eKuVPEUBepJSB1Qw== 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-SenderADCheck; bh=mDNcpcrNfEgiTOEnVUuFpNy24Gy3BFQzryVHgl9LP5o=; b=X1FxQFNuz6hAnTu1Vkgtuktn44D7khfW44sXnnQlKr+J3GvnLQRP3GKOdUqdAlTsc106H8nLMlaDhx/KLBZ8C/EBsJgU8UVeRJmnEwrHfXY5KH1q82hMoIQ46phbUpdtRGweJ9t81K87Ld7Kbz3t1QeueSX4xUeI/X9tZtT9pba9MP87BOGglOFTWEe49QvZpLKa3u82W3aJ1OQ+v5io4NhDJhSpH1HeiqkMsL4q4x5bEn8aU2j7fbphKrM7eXVPpRt56cxCxQZYSvdBJQF99qZxLjGYSAfEFg1RIoMSLUuUZo8vbjdCmDYBj5KvMNl3zRrajZdP0kMrj0QnDBcKBg== 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=mDNcpcrNfEgiTOEnVUuFpNy24Gy3BFQzryVHgl9LP5o=; b=HeaCOyl/AObs4fTxmGXRJAhkOm5YAlnAaxjTdoKk1CMH4Rsj2D9buEPXHEliU/9yNEwXKNIfbLDzasPTHE9dkaLtB/2ylMIRqfa3ty7X85moOnFlYcQErYdazWOHjXig64zcrfa1v8TMACT5HpjoULOS+gU2RRkejOXveHk0fG/OFCZO9dY+usjkmgZQvgDL3s0CnxnJMdG7XUEs1QTrccBKsRMNk6qEgiBaWcwCCMyE7guweiPHyEC5Jdutj84PIc6NgGKrQSwhVw11NwUuzteQVoiiYqmI2UEfdkZLyJn0RphmL3F2qBhtj/kV1Oih9bpy/01yKSMHHjeEJoCdzQ== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT128.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:03 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:03 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:40201671FB0AA83E1EDCB21D9C6B2F14B7512F2FA093DFB13FA39230CA61574D; UpperCasedChecksum:032BADD3A5F6F078945C87A741C0EF00649576F34454BDE58DDDD78D7EFCAC98; SizeAsReceived:7580; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:03 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:25 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [r4y3DuH3gHtoRNuqXfeEH5pNCQSt5b+n] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:02 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: a731208a-ab71-42f5-17db-08d931383b26 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOa2cpHb4x1SebfA1vpQG9blaCJ0Hk9Dv74JjzLbRtHYZieYUWnoagwmZ/bXvoILALjyzMdDDCf6d9nevr3KdS0AFUY8ukATaUzOuANythphKmtxvCB7Wy6d6n+JqzA6LnTi45RtoXwvkLt33ko8/MWaSFnbWqllVNBD9tWnlfUk1VtBxoHHh3qrRSwflkoBydiaUpWrSTCaxzt3+JOne2BPwAn2EjvesIoeyhfb8GIbbVc89DPRm5JK5PqURU4GlejONZko3YKlI7YysXoXhSr3DOfm0BXOsgFs5ALf1/RerPG1dmQKR6IRwJ2KpaVUVjp+wRs1yyF5eDxrsP73ykRk6W/OcketVer2Nmwr35IUGs4FTLVpBPDqTe8+Uwul4QjU2VLwPU8MM2heorb9G8GBF/7PxJdxqTjNIDk85zVfxmoGvXBzPxSacHwtUlbB8JGcDj6ZncTWGN3ZMx5L8fNNDOmnGTuPE0nYJMKPrKCejqXFBvKVU8nKR94SGwEcTe2SxGDYreqUM8xF1ILW4EcWrqZeTwdxxn0ocNeL5vTpFxRZp1cgOH5i2D7usIpKRfnl0h+zoWdUk7lsPnjPBbk6OYCcP6gcQ1g8Bptv/VYasH9GLB5Xu8KOL83kR06tQOleseWy2Njw64QX3G4UsH9KeJsvL4ZSC40B5JE2lxnLCN75yoCKhAcAizlYrL1tCN88saoXaX5H4= X-MS-TrafficTypeDiagnostic: HE1EUR04HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ReDrnQKCGAIbtgZLXGrLFRBypWBOInGbD2S070qEiCkDv1h/aiV+w8I8CvyerofLEQpYxGhlsA2Z5mKWCQmzFaiVgKbUWqmNtzEdgwwxn/xZdwviAhkaF7iXBC2g9ZnyJS+v514sxOtv/FEiUho6Po1m18RQv3JzGFHhD5As94Noh8UvpsbIXsO0NdSnk8SszoqB5TLmWKcIqZpOVLfzQ+RMejdwIE1jA3qGIUzCynRa3eN+tin9Fopv0lzD/+RA6NMAYrj2/Pjuyo11hIbvWoz55bDxYAmcbB0Tqx1G63p4Pjxdo1C9xPlOgfZiNyGkyr1mtTWgBAZcDOtbagA6LTR33HIXJ42ES8JnB5aiUkTRNTgLLxZic0gKyYiZ+SbnZzgNIUOH0N71wZOOoB1AIw== X-MS-Exchange-AntiSpam-MessageData: A+tNjKlf8tBsYL4Q5brKeTsKijDxkOwjNSFaYoxvk/JuGZeIiOIG2wckwzYnI8zKijAn2iVdp2vprm9lp844/My0UaWZMi7DkugYXkiMLBgFhfUoe8Mkj6ZvfzC+Yxk6Gv1rHC17/EILKoLxFAAh3A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a731208a-ab71-42f5-17db-08d931383b26 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:03.2006 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT128 Subject: [FFmpeg-devel] [PATCH 04/41] avformat/asfenc: Deduplicate AVClasses 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: sZod76F1oZkl The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/asfenc.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/libavformat/asfenc.c b/libavformat/asfenc.c index 8e29a3b733..a8a844ce6e 100644 --- a/libavformat/asfenc.c +++ b/libavformat/asfenc.c @@ -1154,14 +1154,14 @@ static const AVOption asf_options[] = { { NULL }, }; -#if CONFIG_ASF_MUXER static const AVClass asf_muxer_class = { - .class_name = "ASF muxer", + .class_name = "ASF (stream) muxer", .item_name = av_default_item_name, .option = asf_options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_ASF_MUXER const AVOutputFormat ff_asf_muxer = { .name = "asf", .long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), @@ -1180,13 +1180,6 @@ const AVOutputFormat ff_asf_muxer = { #endif /* CONFIG_ASF_MUXER */ #if CONFIG_ASF_STREAM_MUXER -static const AVClass asf_stream_muxer_class = { - .class_name = "ASF stream muxer", - .item_name = av_default_item_name, - .option = asf_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVOutputFormat ff_asf_stream_muxer = { .name = "asf_stream", .long_name = NULL_IF_CONFIG_SMALL("ASF (Advanced / Active Streaming Format)"), @@ -1200,6 +1193,6 @@ const AVOutputFormat ff_asf_stream_muxer = { .write_trailer = asf_write_trailer, .flags = AVFMT_GLOBALHEADER, .codec_tag = asf_codec_tags, - .priv_class = &asf_stream_muxer_class, + .priv_class = &asf_muxer_class, }; #endif /* CONFIG_ASF_STREAM_MUXER */ From patchwork Thu Jun 17 02:31:26 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28429 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199499iol; Wed, 16 Jun 2021 19:33:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzq/O5DBdhBFUwI/R8m5YnCOa595xopSbj9MOdQm6lPpSQhlg0kpo747eBwmE8hKlvaCVgL X-Received: by 2002:a17:906:b294:: with SMTP id q20mr2564542ejz.382.1623897207623; Wed, 16 Jun 2021 19:33:27 -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 c16si3973352edw.522.2021.06.16.19.33.27; Wed, 16 Jun 2021 19:33:27 -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=rMEMroB6; 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 794DF689767; Thu, 17 Jun 2021 05:33:18 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074102.outbound.protection.outlook.com [40.92.74.102]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 078BF680207 for ; Thu, 17 Jun 2021 05:33:11 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UbMI5bqc8bgkFDSL8Y4amjlEaZpxkxr3iZ9IZ2cR24cWAkqiT2shAWgpeNbz89ZJ4OfZ2pEPaWykx+WRlCZfAkqVDF61SjwUBiqIKHx72F5daSz0FEP3m3hI5ivGN5A+x1HVkAuKQ/7V3LU2bxvcqwDGgfv2YldB2jtumV5WW1H+xgqKBCICh6NQG8O8NCdphFB+kKcxKh73sOXEiey6WsEWXcxUAAICcUgUdPdN1mR8CPI32Zklik6tCIz+Fc4F/FSonkCb89DwuLIdHYhpVpJIM2MXby6wKDMZ8Mqo/KL/maaLFTWQ3jN21xrVTxWtTtH/Yw+kwrPk4a+AiR1Lwg== 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-SenderADCheck; bh=A8y74es0hGe3wI8Hkc+pT5hcnFOqgmGFfOmPl5KzxIU=; b=IJafY4np1Lvb+OQ/IeNc/e0hFhPnSnuoczr4Md6uk48eIiTbacyXZedru9qscOGwjOIwX1X6kgDcCEdVGUUe38j8YKZ6xBUURXeDVbHl+/jjl0rOabSiB+LVzjL8a1JRKTMIGGpSDKFMP9FdS2nQsiD4EVMoqIQ7IO1mCX3UphHoKxlPOPMNNm0uvJwznFkRed6Dvd0MZna6V+jNC1NqWv9lNAyZ/Fq21HQAwrN/Fqb0imMfPDQJNAX/bTrOoul2Kc46uCjw357g02K15rbEK2er/1YHwrgbT7Ceakov9hTprwgSfms6lR4hZIq+ZKq0UJw0F8RDTGg/eShnbGnTTA== 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=A8y74es0hGe3wI8Hkc+pT5hcnFOqgmGFfOmPl5KzxIU=; b=rMEMroB61TdMZA9DU6lSKi4/EpYRsgjJIa7qpqxWMsnTOO9tX5GQNoh0dDXAMAAXkbVY8Dynvsz0iDRRh0vc+8E9Mef+r3zUf5J5MUMLOCDpP3ezPPaHKk8KMfHfx1Jefm/JWpOceowUwHXOErhy/ej22EBObcStdTv/0w260dnwUPDK7IO3Pj9/nTxjDkyk8QgDoqswlVYZGEmXO/oJmRd6fA5QT8elXMbf6q117ZW0t0e788gKdFe0KtblVIGtRir3/ZmVzL2wuyMH/M+ol+Rq9yDYOK4SAT4z+2d3RJJTji3QU5eLbxUnQGLTHkS2VO5F7BManhq3fGDVjmhm6g== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::40) by HE1EUR04HT157.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:09 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:C0DF487AC469C1C535C2782910D685EAC9E8A01093B2E9E72C3EB2558241D271; UpperCasedChecksum:6AEA0E4B7C0BB3309C37CDFF886BFC215B3E286DFCA5A4FE36E1490DCA9A4629; SizeAsReceived:7600; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:26 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [fNHJSlYJ2RyEJLlM9sKiT4OoFoUxeDST] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:08 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 12ed1aa4-40ca-44b1-6638-08d931383ebe X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWnA+jE3a4RqmVmZ8w8oCZQtRo00FIzWXab8EtQUQT7XXfXRd7mCF+yYjwomKVnd4nIXvZ4xlOvsvVxapHAMqFfyfLzAhEOTMK0qfNaUpQja0v9oxCyjrOwQO1+NAyEnPku0v8Bu9QPMe0BJUl/kB1lq5DBWkZBlIEI8eBbh4ltqQFYoG/7fME/MzZlzYASUepJb1753LZKqqoYO0JZd+z7q1MvQoT8Q2mvviM1CEHreI/sveaOTW3mMds1+u2UsoY+7ozapBpboOphjTQao9vAAc0nd9CKq49ruw05pIDqaW4S+DCBhJ7xrypoI5UiT4gOtV1d8EBzM6nXKQ8J2m00Da5py9qgPueu4zm7+zS568srQyj8ozQNcjBYo6Sz9HBYSIHro6NdbUsugay90J5jQZtwZr4dzrP70G6XMWY3RybRcK1FGKrkU/nzfsg+V3uldGBJlTir+KQZgY/vXdw2hEt13HfhkAV/vevUS/xMnthSmfRK9hxeSKPRnyElJtrWx/LnuRhrS2wDzy9G6U2EM664vPkSObzovkzOR8VLc8JqYgkr3ERUSzRIKa6Orxn2z1K+09YJe4VOYz47XZDsr4UKXLjdo8hmYdbffXubfkyYXYF6l6nVRQz4r1ImCaJwj99u5LV3/mB+BO+Lisd3D1DpDhtDmf06uiq6/YwH1q4eFr3kTnPryHc3KWPQvXiGK8Thp/v9WiW4jPZLAQzNTDXksTE0k8maFEqCci1J9E= X-MS-TrafficTypeDiagnostic: HE1EUR04HT157: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1/v2pk3im75YWii4wnyHmLhdXG2uAAdxMMhLO0PtEAf54KVr0CwdHHPXueHDO+gClLKjBT+DxyhP0G6JIaoJPgbI4+sND+iALIBs9/csXCoq+TF/SOH+OmfMxzM7p4HAoyJdHMXcmqjqzKDDeaLrLDo1nPTdHa8uF0VG2O45L7adoytgO+4AK50iYd5LXfmTiq8JoXga5KRDyGJXJ/3W6X9oQ4BMGXy3H9kwJDp5l6Ps4TsyTtKq5MthEw+dhD0kUQ8NV1HgorkqqwDpwMs5laWMY9W720w25JZiVL2BXGSKWyQ/s/cZSaCD6iCPcy3MQo723/+jy6THLhOFWmWImYw/F9/W3PJwNeLE/dY3LQWQD3nwKUqGGPoN7IHv9kU2eemfs1/zghFdz0MEc+d8Gg== X-MS-Exchange-AntiSpam-MessageData: /3vzDPjS1ll2hh/+6zZXNhO2/63eet0QEDifrE2NrbWYyT5acJOut72YnxDShByAo6ZQl1Fd9Ge+P28TQ2Ohxmbw4uBa3nXFF3t6ZZyDHtk4hBEdytL/UtGFm7IOzzOMg4EcdNcDUaxikG0hOh/VIA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 12ed1aa4-40ca-44b1-6638-08d931383ebe X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:09.2679 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT157 Subject: [FFmpeg-devel] [PATCH 05/41] avformat/codec2: Remove unused AVClass with wrong category 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: C0DnRO3tNRoF The codec2 muxer has no options and so it needs no AVClass; and it certainly needs no AVClass of category AV_CLASS_CATEGORY_DEMUXER. Signed-off-by: Andreas Rheinhardt --- libavformat/codec2.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/libavformat/codec2.c b/libavformat/codec2.c index 9c94ed81f9..7dd60031b1 100644 --- a/libavformat/codec2.c +++ b/libavformat/codec2.c @@ -276,13 +276,6 @@ static const AVOption codec2raw_options[] = { { NULL }, }; -static const AVClass codec2_mux_class = { - .class_name = "codec2 muxer", - .item_name = av_default_item_name, - .version = LIBAVUTIL_VERSION_INT, - .category = AV_CLASS_CATEGORY_DEMUXER, -}; - static const AVClass codec2_demux_class = { .class_name = "codec2 demuxer", .item_name = av_default_item_name, @@ -326,7 +319,6 @@ const AVOutputFormat ff_codec2_muxer = { .write_header = codec2_write_header, .write_packet = ff_raw_write_packet, .flags = AVFMT_NOTIMESTAMPS, - .priv_class = &codec2_mux_class, }; #endif From patchwork Thu Jun 17 02:31:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28430 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199635iol; Wed, 16 Jun 2021 19:33:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwGag7aHWv+rvxNVAUf21EL/WQOmRRst7f+hIjlLKcE0FpIy0DMWBzGeHhYNAuG1qQLMkAi X-Received: by 2002:a17:906:b6c5:: with SMTP id ec5mr2613810ejb.290.1623897218826; Wed, 16 Jun 2021 19:33:38 -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 ia6si3144016ejc.8.2021.06.16.19.33.38; Wed, 16 Jun 2021 19:33:38 -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=plOoJJHg; 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 B8F1C6898E0; Thu, 17 Jun 2021 05:33:19 +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-oln040092073041.outbound.protection.outlook.com [40.92.73.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4A316680207 for ; Thu, 17 Jun 2021 05:33:11 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dkzB4vl3IVuvzaisAD/G3Yh+rrTyOgDAp9XuhhnlISUyi88F0QCh5HTmwOwVohFngBufTiSKO9BRVkMo3E3netTtywfw5F4QNK6zRjek2Jw/T1OhemgNy0ekZ2sr+HFyMXrNCVyN7PweGFM9RRi70mfGD66vk6rZebTEagVlOFR6nauqO0yTh+ltwf5+Hvr1B8E4tvZ1I+mw+eAjWci/VVkL7ASsamMsnsZ46faogJRB9preUyernWtHYX03DMNxm2jivoVJb7Jzy40HvqUbhbAgrnT2hhVrGu4mktZhc82V477YLxJYTpCuCYUqFDZvJJpzr+xpKif/wuIQlBtSDA== 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-SenderADCheck; bh=gtSTYRUExC5ddhTOAk3DONIcIurctF3CjMSZRsp2QMg=; b=CG3AxxAsSI36F4URFmsA6vL+Jtu8fr1AHoHkJUJccPFwLFh76ubXJYBS0Xt54anqDLy/SW37MhU1Avxgh40c1LJZJms1iFPz+YR/dBXwaGRt/K5jT9iDLhkU5OJNHxZTzetcaEGY9zWZqTLoDK0nhCzrr4sFnaGuJuD/ECBFb4qbH4c9LY9NTExP/3eZMhQ2MFzlqiGQOP1xMF39VjUWS85mj3/lKbqnaPPcDmfc/GWrCQOi2OraRH2bw0S/mYRWg9Q7as5x79oAXL/edh816v+au/LXFZiDbzhIRQPt36+MliD42C6zRWG2/ahM7D4A2EVtKdV3Ci89FjOcDXrJsg== 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=gtSTYRUExC5ddhTOAk3DONIcIurctF3CjMSZRsp2QMg=; b=plOoJJHgzfy8uBxU//6nD6l27+PWgjdqe957lVZmlAX/GcyTm2Egps75AZSsjtMbPiIl8U0p+k2mn5ME2rnPVqiFEqKxitsdrtDWv1pKoI3fwHG/9L0/dKN5hvW9dgz2fOUAs4CtkS2ih6HHYnISLb3sKPSJvNqNhpa19Wqw8zXkBdfyn/zeZje2+QvTyfDy2VmJEu8GtaGineOw1U/ooTx53MrWp9tHSDbdDKBdYA/ldYGOtp13pCzPCuv4ZketXW1o/KthaZAQJgeqK4zCbZSK+hfJhONZAChqzW4Bp8rzXA01YXfD7K2g4ke2S5MC2HntxCrX40oI0dSCSACNiA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT059.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::327) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:09 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:BCF899D551B54F9C4CFE7F325F678123625BD5E03AA30119F34CCAD6A212EF8C; UpperCasedChecksum:3D38AA2338DE65A59B9CE565BBC549C190D9E81FB1F3657CB1D99653A5C8C81E; SizeAsReceived:7599; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:27 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [rAezlbX7bmbTD+CuFNvWHVjK3A5mtMxM] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 21c01a25-3fcc-4de5-8e50-08d931383f16 X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1ORVElVV0itJPkKShV4uMkVNaKJiZKlPc2uAOcWdHloofW2k3ZU26zykbo7MQZ3UdEipGqI7Wcsj8dl3LkfQDrU3bPmtB8czsjZ1JZYx54a4EAoi040JyCsWr4teHMNxEfiJRFIUiIzIg/gf5SWFSg8jTIpi04yUi4agM4nhM7/ww4eoYZf88VBpDJCkJbrPx2gi4jxhfzzGPuT+eLW4OtDuSLOMWICOQ4dcPfxMBoXY+lFEz5ETzZ9cNxByq6yzddgV10ekNRlb0NQy3RVHDT2HUm+IovMtzW1pMNIt0f0XogAOvjV/aXDRc1FNFu3aL3SnWxwT2QriAhBWB2GfHI70vBldgMSuJyKhVEfRmkGX/qCMnvKXvMsRA+gOBYZ+fgps75qs8ooiCaIsIofGyBP4CPkxxutbGGrkRJO8G8uI2eRNJGTcymWWQyyZCZnT2YvMTKQaETeZ6Wj1JBB1bToOFSw3hsNhM8Uyzy+Wz0Ik41aw4bJiNTvUtpIzqzX3/BUDwMC5GZ7m9DSZHr5zVCxIEMnIzSuHvmmJqvRXJO58hquXoVcuUQ1JR5DxFxEc8QDIdWOjGTX87GorLUk52CzLbutQMKqkAyPbVkcVb0um6sTNgaMYEawU4P42b23jDL1jioq3aq5g/UUibHTpMZF6Eit88FVU9SPDmjYe3liqfE+BwdQKMYf3SLnIHKPZvV9b8tD6ZJ3m1jR1eYljLBs+zMG8yleY5WEV2lu9nZiX5upXqDp+izE+0+nBBDAK3c X-MS-TrafficTypeDiagnostic: HE1EUR04HT059: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7pOzDMiDD2hR1NjpPZbi7KDeZgHIJGknRsHtqTf66Cn0Ux7cVWppcKdRZ/UHZaj43kR6isYC2ZvxM6ZBCSDRoan5JZep/8YW/+ro7WhLjE8P5bh6iH8SBcUwwOFLLfe0U1QUDhn+ifaQXLxhA5mo9kCHv0KQH4t57Z8J4yq4BV+sNzT88eRqK6BLHq/+y5A6WtnxlrliwcqyP0G6L5I+KjI5VA89R2wjTazrehnOY3236zR4hg1iY6TbgCcMxEbzcVImOtl/vovUVAOkNNmw50iyX9Vbzh2DBKe4i7Thq+FG/LctKz8FA0b/57Fx7kPtwZTAz9zavBV7/xspa1JujAu54bUpz5wjfKKTQt4IBVWTeH+O7RHzFvwOAdGKFIQNj/2vBbdXSw9IQbiQ5N3F8Q== X-MS-Exchange-AntiSpam-MessageData: h5snrdZ2uEcC0iKOP5AGDgwqio3L3owMTB96MT0YyJoJaEHV5/8BI5/i48DTh1zXIAEqZ2+7m7j3M5eA6DdAnxk4QWkhFX6d7kGE2a5ku9fHXhJBvai15KL9CKRatExhNFAkoDk5nS1m7TbNqZr1qw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21c01a25-3fcc-4de5-8e50-08d931383f16 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:09.8297 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT059 Subject: [FFmpeg-devel] [PATCH 06/41] avformat/flacdec, takdec: Use FFRawDemuxerContext directly 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: +ikKsgXEc+xU The beginning of the private contexts of both the FLAC and the TAK demuxer currently mimick FFRawDemuxerContext: A pointer to an AVClass followed by the AVOpt-enabled field raw_packet_size. Said field is only used by the demuxers' read_packet functions via ff_raw_read_partial_packet(), which treats the private context as an FFRaawDemuxerContext. Yet this is fragile, so better include a FFRawDemuxerContext struct at the beginning of said demuxers' private contexts. Signed-off-by: Andreas Rheinhardt --- libavformat/flacdec.c | 3 +-- libavformat/takdec.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c index d4158032e4..c841fdba01 100644 --- a/libavformat/flacdec.c +++ b/libavformat/flacdec.c @@ -31,8 +31,7 @@ #define SEEKPOINT_SIZE 18 typedef struct FLACDecContext { - AVClass *class; - int raw_packet_size; + FFRawDemuxerContext rawctx; int found_seektable; } FLACDecContext; diff --git a/libavformat/takdec.c b/libavformat/takdec.c index cbb9a9345e..cf400ec04b 100644 --- a/libavformat/takdec.c +++ b/libavformat/takdec.c @@ -31,8 +31,7 @@ #include "rawdec.h" typedef struct TAKDemuxContext { - AVClass *class; - int raw_packet_size; + FFRawDemuxerContext rawctx; int mlast_frame; int64_t data_end; } TAKDemuxContext; From patchwork Thu Jun 17 02:31:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28460 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp208400iol; Wed, 16 Jun 2021 19:48:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxq8sClcvBrMkyme4T6u393EcAL8fRzus9EOpegsnNbBEfV1vzTszp8o332KiVZV9OZXk29 X-Received: by 2002:a05:6402:22d0:: with SMTP id dm16mr3405921edb.123.1623898087563; Wed, 16 Jun 2021 19:48:07 -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 m12si3935113edi.558.2021.06.16.19.48.07; Wed, 16 Jun 2021 19:48:07 -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=bhQpPulc; 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 7AC6A689903; Thu, 17 Jun 2021 05:48:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075075.outbound.protection.outlook.com [40.92.75.75]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6C1B0689829 for ; Thu, 17 Jun 2021 05:47:57 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Lu8G+g9/+tYpH4vqWg9jkjbBx0qtadO9A8C34i8GoVPZ/kfd418CYVp7q0pq1KaFyZA83yr55Pg9n6MmYYYeWLV1H8MsaMe2e+soo3EXwDkVyDFZY7jRNPU9PjPQ2C6048TwrHz6HuYAwAG1Nc8QXeEHsIs3qUHXU7EVVzLmcsJl9nldpfGsU7alhw27dHW6xheV589a2/744aUDF3Y+f4GulRlLnfoNPKBilaO6BCrAS8957bhoIzl/ShoxjxtaZxKn3wiFoUf5Cm++smsGFaznUHx9OcC/jLVQvSNDhTUq45ch4V1NC0FqrnK1t6ebqSOevmGEH6RVGyZ4vXjDOw== 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-SenderADCheck; bh=3YP4/frPITt5scrIhJi/D5soKhX9NTz0KIDnKStD8P4=; b=BdLBKYcaToOZRp1p/NLxNct9sPXoblZCgrR6nSs4BLgEYlGdbvoTtBpeoikU8yqFx93370Z22V94Evyqe54hYsq2kQ86ohWqrD2nK9EEZxr+b0IZrPTQNw7AOSwEkVOEhq67Yhm5yxdJqKcfrcycs6v1TF4oqLdyFaYjV5WrObtxHQt4+JMJ5eNdErRcUYlqHShywEXKdiK3eZU/kcW72NlWShHV0dQnIWVoxLwx1Q4Qqq4fyZSs9mszlH/nGC6vTl9upbKurx34m4Nn+lQnVU9e+Xuc3LFS4hy+it0/dUc1f5g+roeWxbcTNrdlMIIWFta9iK1g+yyTX2CQUQYL+A== 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=3YP4/frPITt5scrIhJi/D5soKhX9NTz0KIDnKStD8P4=; b=bhQpPulcvPTq4XVN+KjKFYlZ1SG+8kg29Ijil9GWQ0IPigcMa9YfZIdWXaVEWSHkc3BncqbI+srfH2q6kZdE+j47mUMNTum2L16DuQyldNJozEr9aDvlFMXxDQ/qPHbm5PQFbDSh0CBkU2mQq7lk6mq8F7UC1yw1GTFnKCKPKLtEOiQzMvGJeuO7AqBIKmPcljnd7BN0lfhu+8m1AzdJHVvPvL4tYswFc75eEHS4twyCGshsAMSWUZR7BmPpjXf1MndoD3eQ68ZNLrVFndIPXmZLMBlL3uBy5BnXGshgnRN2HhK8eWC+1/31HM9CHKDkvHztycrSbAQDaxx65VMCdg== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT128.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:10 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:10 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:F9C53BEDE794DB1D6C901C8623FBD36090846DBDCB28C1F732191114EFDC24AB; UpperCasedChecksum:C36A2120DF54C1A5AB46FE5A0896801DCF9557D6BBD6B0ADD325DA911283403B; SizeAsReceived:7579; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:10 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:28 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [Z3lzpXimPyQwhGphjvFG7iNvn7EU77gK] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: ad68021a-749f-4c92-cac5-08d931383f91 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOa2cpHb4x1SebfA1vpQG9bnhknJ7ObAitBhUZTc0j2BMW1ZNkCvUtG/6zRiFMQITR+N0i1DjxGcM6Obzy+vXtJCLFcE6AFNGInOMTS/+Y3nuea+frV3Vo/Q3UWgsm1+w6eZLfzetTMzUhELXf22kwd4glK5aglyXGB5RrB0YraaNtTRNI2ZIScd3+vd3rY3f5cMDtDmiPID2c5oqMVbOmW+yFgC8aHGn9p0d3KVygAOzaTpQ8qr9yv5PNnGNgYpsf7l/Mz/cUXrhMwnm3tkIDa4dVCyRF/ubgLX27IH5XbyFQTzBGzvbZ7fy77BYP3172W2LgVyfjF8W0T13Pw4r67540WX7PFqtCUDM2Aj37gGBFjFtnPirfQBZA3Du5TkU2un5MUSlkRIzIT2wwo6ssPvGyzYMjf+ZMsATnej5UxcejG9okfk/0JNaiMGHJ4yHp8JKUt/n/OqLAR6TmoH7xDgun9KoBTdEf2V9tNPpr6Wf7P1k3CpIjVEdDQ0QZw8JCEP5PoI2NY2v8cvKxzimyZQKW4HieDtMJSBFcVRmlLcjtwa6ypi7ew9CA2DmmyqTFfoTPdD0JBC59vBGSuE49UV+jQjtr+/PJO2ou8Q1LkdCclBVDDA7v95htBz+UMyjyYy9f2eWKMsRBIUIH5e2bcpdZ4AehtD2laB3ORkInXkqhEYApkrIJifLTWF7+KFEkOR/+3fxRypc= X-MS-TrafficTypeDiagnostic: HE1EUR04HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: j3wtjmuNgyHVNNZcZvyJmaf0o5ZAJuoNVQim9kth8fIHiL6uy+jopVs7lueZnRnBdxQls4LMT0sMWOrXp1T/C5+qyR3sWA2yhAqQ4vd8Qb5ZRoqOhrPjr84tHQBAziS1Z92kPfhROjBl5x782d/in39VdnzuM6KiumPtOckaR4T6heNl+pXlXZjidHcX5uBpW/8hVl3XPesAjLOcGmdNVMtcS3aMze9eikpT37Kko1y5fzQ3N7Qjzd9bA1ou9L5QQZVCCuzV3xm42WO5OvthmymZ91tTgScSrOlUdv5/AwDLvoNriYGc0hpi3VButLCcO7cYDA3AnKBPF7jKxq8A5aAD+4TP8T6kDbnbiv8+FV9DFCR6EZx713p5i84IpWF008rH3xsJLK0F6ERXAf0CdQ== X-MS-Exchange-AntiSpam-MessageData: aei1EiZW1DKvhtptUtcEkWV3fgW/jy75F29Vehd1FGURyDgAZctVLZoOKd9ZhMDibv289iSZ67QVSBa9W60XkKwu582lHiSzE0qFR1s6A+Pbo8HAFQ9piiOOHRw6yxtbC8TD252q2PRG4teLp8e6jA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ad68021a-749f-4c92-cac5-08d931383f91 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:10.6073 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT128 Subject: [FFmpeg-devel] [PATCH 07/41] avformat/flvdec: Deduplicate AVClasses 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: A0HYU6eD0wtA The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/flvdec.c | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index 60d1a5c654..b4a419177a 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -1365,8 +1365,8 @@ static const AVOption options[] = { { NULL } }; -static const AVClass flv_class = { - .class_name = "flvdec", +static const AVClass flv_kux_class = { + .class_name = "(live) flv/kux demuxer", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, @@ -1382,14 +1382,7 @@ const AVInputFormat ff_flv_demuxer = { .read_seek = flv_read_seek, .read_close = flv_read_close, .extensions = "flv", - .priv_class = &flv_class, -}; - -static const AVClass live_flv_class = { - .class_name = "live_flvdec", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, + .priv_class = &flv_kux_class, }; const AVInputFormat ff_live_flv_demuxer = { @@ -1402,17 +1395,10 @@ const AVInputFormat ff_live_flv_demuxer = { .read_seek = flv_read_seek, .read_close = flv_read_close, .extensions = "flv", - .priv_class = &live_flv_class, + .priv_class = &flv_kux_class, .flags = AVFMT_TS_DISCONT }; -static const AVClass kux_class = { - .class_name = "kuxdec", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVInputFormat ff_kux_demuxer = { .name = "kux", .long_name = NULL_IF_CONFIG_SMALL("KUX (YouKu)"), @@ -1423,5 +1409,5 @@ const AVInputFormat ff_kux_demuxer = { .read_seek = flv_read_seek, .read_close = flv_read_close, .extensions = "kux", - .priv_class = &kux_class, + .priv_class = &flv_kux_class, }; From patchwork Thu Jun 17 02:31:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28426 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199779iol; Wed, 16 Jun 2021 19:33:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyzaWdJ24nRQRsyQVRumqsyVwL5vdA9/NZO9dF9RDqwaQJFzaEj+lwU4Rb4I5JBgdH4EUP9 X-Received: by 2002:a17:906:4e06:: with SMTP id z6mr2672395eju.34.1623897230783; Wed, 16 Jun 2021 19:33:50 -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 by13si4185869ejc.433.2021.06.16.19.33.50; Wed, 16 Jun 2021 19:33:50 -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=mIZtP78q; 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 E4178688388; Thu, 17 Jun 2021 05:33:20 +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-oln040092073041.outbound.protection.outlook.com [40.92.73.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 74A5B680207 for ; Thu, 17 Jun 2021 05:33:16 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NVZw3N8xsH4jpQriOtbkRLrwkBR5il4Px85a61KcsnyMeuqJSTDabN9iY5+K6JWvAVTH/DU6fYvIey2gGBLxeHuJwPAFZIzArdaRs2UaFzgu2g8KwWft3VFN8qbgKN/NHV7t3DTAkfM6iRtyw5RqyaFxG+eT9jwFprZtATYia+qnoG5AtksmZvYTNFn389L3pUIDov2CRziau/fBV4XiVNZezXI76k/rOLaDDzbEDterLuKY1S+0xQYBSq4j49Dj0kwqlk9GGTleUhB9/onXnTYy4gNjyOI7zs3efCGRj4tquHVGKVFMhmzsSEv8kkLvZXaB0eRQxTNKIglLhXdDpQ== 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-SenderADCheck; bh=E5i5Jt45NN6jbYJ+WN/O0Y1QV1I67p3PTRwnNguiV/I=; b=ZVkfjiyplPo166xnLw0Gb0kW9xDfmm6gx+KSYEONMJXr+nzdhBuE42CGSu/5tYy39bD2p/MkVkF1NJvsK2NtQekfpXhSW7UdPMjwIioQ2N3rgOYzm6sjye/jyFfekMQVng5l2csiZXAOR/VsM2SCyR7S4PodPxJWHY8NpiF3GKuj1pjoHL84zaDyo1wK2xwNg3BticTkPVx1Lfnfs7HzLT9niAu55UYaUkA/H3D2LDCu418XcDQnghOjCCRVvdz0uZgwkJGB21Q3wHiW10Fzy1yKzgny20V4gE1rU+27CpKk/UhfAxnb9FNTdboqtaQH0mgeLdHMAba4VuENo+v8Pw== 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=E5i5Jt45NN6jbYJ+WN/O0Y1QV1I67p3PTRwnNguiV/I=; b=mIZtP78qM+6biG4Vfx6bZf+2Y7psGTbMlkVtqbjT9W2E1Rb8tYJqCx7D843P/hW+iSOAXdOJkkPkU7pm04SfFJHAfkQWourfzBk2iNiEzaqzyDFxwUMmC2/PwhqnYv+x/9CeiCTa0yN3li1OYdeYCiHTtBJM9NflVbDxBKO2rfDHY0f7aEKw2vHhQTq0k8URGGGSsY2Q03tu2G3T8cWXh9gaqijEMILWENqb10KhiaaBPImc4X1ZPHm/36FCQy8WqI3OS4FApX8JVw/DQKpxCCU9VTRW9GbiHQ0VNc/a1YTuIcS4FO1ZDgWeeAo1U45uTRftwQSMrXc9iDK0loyfiA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT059.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::327) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:11 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:11 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4B07CE9852753B255983FF487A4E84FDBEAA7374019A3D1F4C67C939314BAEC7; UpperCasedChecksum:5570BFDB2C270E7A75EC5178A1C89AFCFF82588953DC21044287B89E35D99D56; SizeAsReceived:7569; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:11 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:29 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [OE4/V7mLDP35wm+kFDYtJTCh2YbpQMFy] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:10 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 476b307a-9ca9-492d-e1e3-08d931383fdf X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOa2cpHb4x1SebfA1vpQG9bmXHMpALDVZEIoGHlIqntRqM2tGHgjGjN+Rtay+S2UtpYXrq/dpjf4mkOU8CJO9UOFwaWUtGzF6RlndJ9iiOSdUU4sEWprmy3ZrravQhdIjuhg2B8UJ2b3PmCP7fw2jfFMN05ZAbQgYqCeIE+CUpl2KmFg8hhcYNF4Ts+HAtL7+trETIAyEbVHbQtcEwS71kcMNfdiGF0HXXg1peS1JT/X4GIMsExbbjWq1mbh8DM4gfXiSiw+xXUUubmRNXlUZzGxKwc8wfuEl7He5jj/sZw7+733GBi0asvXzASNaEC+QZubmabHdsIs8ydRLTb2XywEAIHHKBphGLzy0w81ngz66Pgy12NXuBQdDHpttP/Cxdg29YJ6WDpNcrmnYRa6UL2juHCTCAqPKvJ9CEBTLf8vJi1F8kBB9sIZlUSxSkey2njXTbwsKRPcFObL8dKeSj7n+UO8magolfcm9vspl/hPvlykjkA56keXW2/BWx1kBIWqQ1AquUZNsj/bll3k8bC3jmYAsPu2HR0mYzoSqp/ZxviRSdGFSfwihBds/xgvalWDbt5ivDp5bYLMTpUmz/H/KyGhvgNTej8w5Wv/JJ2L3AEblTz/7BTYFs8nscXQxZfygJcXoRsiHmD2UTGR+fWWcmXcAy5eIO7oMhQ+g5DVxkAvuS6+oNbeEPa1OIVIWcjYXjbPK7C7Q= X-MS-TrafficTypeDiagnostic: HE1EUR04HT059: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WeZ8EspbltNMu0fY5W4FT3TDTfHmig835wvN2I8bMuRDvRXOrHsoXQEOI9TBDabdgmsHJMTKYX1RwJwOhs/XXauAUVC237hqOX2p8J3yD7gaGtyQaNUd3HdrX4RzZbSOX/ODm6Jtz3/2Ql0aTvoRKJM69vd2+WauDoDAN6o/bM/bQD+atjcR9B67WwgV14TXrTkYCAjdaUvYEIcJ0uPVhWCkZDEtyVFt1KsBYyOOiC2pyo+IGVe8SPpgqJzJxN2HEiLteJ72GUykJMU9gf9n1xSO3urnFL7OaXgon21kuWEkbHmd7rt8bBgG+F6l/b6nvhfXy6gMkvQU/b1jd3eLJ+wsAff69cNPgs/gQn+8kyHAU7ci63EShmrCzDcpXAAhLoYwG6kv53IMSiOVU6RZjQ== X-MS-Exchange-AntiSpam-MessageData: +5snhyMwqUZhsikk0zTfNJ/WFKD1+X00560KugdTeq1yKlIJUI8Qlp9xL2RU5IES/w26exaQZfYXdtJlY+2O+psGt4keMTLc03+j70JDXD7F4doEsfDrl4Y7L81AVHIU7l48jSUa2AVvo30/sM4zqQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 476b307a-9ca9-492d-e1e3-08d931383fdf X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:11.5789 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT059 Subject: [FFmpeg-devel] [PATCH 08/41] avformat/g726: Deduplicate AVClasses 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: x+e0HRdc/TCr The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/g726.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/libavformat/g726.c b/libavformat/g726.c index 01d92e1d6d..4b08d0a9f7 100644 --- a/libavformat/g726.c +++ b/libavformat/g726.c @@ -65,33 +65,26 @@ static const AVOption options[] = { { NULL }, }; -#if CONFIG_G726_DEMUXER -static const AVClass g726le_demuxer_class = { - .class_name = "G.726 big-endian demuxer", +static const AVClass g726_demuxer_class = { + .class_name = "G.726 demuxer", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_G726_DEMUXER const AVInputFormat ff_g726_demuxer = { .name = "g726", .long_name = NULL_IF_CONFIG_SMALL("raw big-endian G.726 (\"left aligned\")"), .read_header = g726_read_header, .read_packet = g726_read_packet, .priv_data_size = sizeof(G726Context), - .priv_class = &g726le_demuxer_class, + .priv_class = &g726_demuxer_class, .raw_codec_id = AV_CODEC_ID_ADPCM_G726, }; #endif #if CONFIG_G726LE_DEMUXER -static const AVClass g726_demuxer_class = { - .class_name = "G.726 little-endian demuxer", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVInputFormat ff_g726le_demuxer = { .name = "g726le", .long_name = NULL_IF_CONFIG_SMALL("raw little-endian G.726 (\"right aligned\")"), From patchwork Thu Jun 17 02:31:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28461 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp208853iol; Wed, 16 Jun 2021 19:48:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzLTTWXdEoLnF8Q2wuXoA8oN9KpxAkuHv+ieEdwdJTmlDg/Mf/kePFDAA7+WWOtbUkoJ4R+ X-Received: by 2002:a05:6402:358d:: with SMTP id y13mr3482824edc.264.1623898139811; Wed, 16 Jun 2021 19:48:59 -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 nc38si1181881ejc.708.2021.06.16.19.48.59; Wed, 16 Jun 2021 19:48:59 -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="dDRD/icY"; 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 A876E689A12; Thu, 17 Jun 2021 05:48:57 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074057.outbound.protection.outlook.com [40.92.74.57]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 07CD968836F for ; Thu, 17 Jun 2021 05:48:50 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y9fFgdRGiuoRpPQZPIe2kOcT3ASQ38pQILEVmd9+z+G58I7HLwbNKxGTPPeJJrLx7+Gj+mqNXiWPyth2VtLed6aWhX4EEKNAAf228ASYBWg7h/J64b6CuUweeMb9VnzMF5vA4Frn1jPmwLcZevSWZIaSqKd9yfCoFU72F8p4v/fdIcksh0r1VKikTUaAyIXp2Low/nsVs6iqRs/GDWALYgdTO2Vc/BSxJbpHTV4ofwjxvR74EAFgXd+H0/D4S4TZwN8XSxZkfRUD1ujuJY4IQ5FOPHY2jVEowoEj1jYSlZ5CZHkREXflYKstiHBWZ/+nhAIIvi5cAITmquJ7jOWYuA== 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-SenderADCheck; bh=HYZ2cOa+Gj0R6aOjZqQpjLXOfi0FAIvGABcRgsNm+rQ=; b=XT7Jd3l4SgfY88ICB0MrvNC0U5Y1stwPDsFmEMuhl/oySeuNGNSgCGYcXsLBIzvVHygI1FOrKFXddWw6ntiGdSazz3fQxFEYrot55PBiOH4+9P34qZY/HGcU/s+pwKt/W6aoOxGxeyHT41IEzqYFygUUkmXr9hlWJsOEoBSBgrGXrECWcXzy+IqDP2V+vvGtTYACWayOmGy89WD+gSlQin5iSOuVrxPFLIW5T1PCAWxQFOtbn/M1nUx7JBENv8L+Pm/PaOzRZ4NkfeuGrspGFVYfYOwfs1xLEmwGHCmjntWJYNyx6r8b7dXMqCGRfbI4a/7zNKV4ckGXWbdIqkNAhg== 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=HYZ2cOa+Gj0R6aOjZqQpjLXOfi0FAIvGABcRgsNm+rQ=; b=dDRD/icYx9UTystvVg7VXwLLdN559R283ha98iZH9yj3PiYPnsReukdnxCRKVbk4NeavFPUYRSitxX9D6Ze2YdW+u5P0qXS7KHDG2NGX/ovIvzcB8VQXwWRjWibNy2n6i4QOx1VIdgQg7IpoG9v9Dy15PXl+vue+pq8siv3lRnEpF4inCzjGufOwW1p8njMtz47x+Sq6h8aRJW+G4AB9RRseqQnjzbCU1FT0c0tBzscN+lT6byuOk6LUFyFrk5LlDFUPV3Ffz6fNPfnv9gUmOlIZivTuynOm5s/7h8gPInfT1K6XqgzIB4QLEDxyKt5yfyjtif8a7QFuCIgK4XbsxA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT128.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:12 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:12 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:2B26C683E8E692BBBD814FA3D26CEBE127C8F17ED1CDC89DEEF37D9331B2390E; UpperCasedChecksum:64F067C5BA909A8F3D6551C42F3DF3008E5753787E983B17226233865DB3FF11; SizeAsReceived:7580; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:12 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:30 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [IJ2CSr8iZRtUJTnzLVHxkCIEnr+f3a7i] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:11 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: f0b2a99e-ff0a-4cbb-371b-08d93138407c X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWsxNP3P3lYuU5K2qNoN8i6OyAtl9aFqvoK9xoH/vEKagYlpC9QDbPtUMkGdnpRyQMZQ4pq6Lknj6zZnrkUKrP5zIhjBer4L3HH3ZnDP+LDfm4qvlLBLyFr3EZVQSwVnJtqds/8OCeZyT4RDDri1pCJ9W2nbViC98TvixNo9LviRGrdCFTmBqndEpw4ZdwKlv+P3Jb0/xgEAsHqx5NbvBb8ciMrBahGd3mZZ+F3UBJiiYE2Rr4XDYPPb4v1M2PsyGgT16SX7Zp3nqgvWT+FNOIv6y0nYP4czu7ZJDEbTYUGJOlIjkLWp829VWDAKF845SaGrgDVEbsu1lBvYN9l5z1t9nh1fyJYwO+GJQJVUTCiRM754QEGDBxnkdX7+FocBnlpgXVL6PU1h9WGKvkWb1oneo+l0fhqgkxq4GDHBKgixm13lswWPjOl3P1K6PPAKXgxfAteJzp+gYKsDe/M6EC6EDN/31i8KeM4QD4DjRVl8oBl6ADDx5vKur7Cqe0tPC6Crv51I1xTqXka7i8OSooY/ESCOSW7CBUUIx/xrox0sF2q6N5wZK0PeDAxzoxP3opsXZ4JdrKRuFTkK/uiKVG/sGVCLhHAyxlccsxcx63DvmXceRNFg/2DgKpDCra1qzq60C7nnBEX81ULdugbJhF70zmzV4k/RT9zj5l5OpSXoFarM5YzuvLyfG5UW+WwEtSPn28aTtQOOhhYPXw/t2KU+7q2QQGEMGDBwoEjKRsoew= X-MS-TrafficTypeDiagnostic: HE1EUR04HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q7Qj6cvEmUCyDsZ277d0tgHKkxl91JTZOy4UuRthMUMAn/hcE/VinoIOTpA+qzyZfTJE2q3GcWGJTwlhQqDBp4ZtHiNBJ1l8GXJTRBP37XCXiFb52P55JeJ/wpiBunnFkeUy+1DgR+yzvi9NGaja5B+YZDzmmFbdzHNLM7g1Nq9HDVys4aPzsooqXoK4ucUb1VCqTqOm1p4vEOk2DYdSLJcECmEkWGjDmFEMxUxbLKM/Ei4G4mTkpc5CF1gqZA4asSJDRQttnjgPcxpQl88yJTIm2FfDU4cmZvxnmS7ygAcNF9xZNLu7siJNZ5hmTl+0avOOW2/76JsSWZdPbeg7bv0sAPiVc6LuWSThwQzJAFoVEeSUXEAQEzpB5phx457chihyzcZTUv40clU86gucPA== X-MS-Exchange-AntiSpam-MessageData: KvTb7obJjLky2bUapfUWZMzT4B2GY635krBnkGGAGqElECZKLSRVCi1GrsYgl2dDpV+NIJoPwDt/Fddn68KHgondm9mOrXVx1BZirjIhS2WKTL+1gC2rUTfzv88t5UW/71bdVkI3/0BHeuf7v9LTAg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f0b2a99e-ff0a-4cbb-371b-08d93138407c X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:12.1626 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT128 Subject: [FFmpeg-devel] [PATCH 09/41] avformat/hashenc: Deduplicate AVClasses 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: 9J11Smn7Exd3 The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/hashenc.c | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/libavformat/hashenc.c b/libavformat/hashenc.c index a1e98eda89..4d5cf2ee7d 100644 --- a/libavformat/hashenc.c +++ b/libavformat/hashenc.c @@ -47,6 +47,13 @@ static const AVOption hash_streamhash_options[] = { HASH_OPT("sha256"), { NULL }, }; + +static const AVClass hash_streamhashenc_class = { + .class_name = "(stream) hash muxer", + .item_name = av_default_item_name, + .option = hash_streamhash_options, + .version = LIBAVUTIL_VERSION_INT, +}; #endif #if CONFIG_FRAMEHASH_MUXER @@ -164,13 +171,6 @@ static void hash_free(struct AVFormatContext *s) } #if CONFIG_HASH_MUXER -static const AVClass hashenc_class = { - .class_name = "hash muxer", - .item_name = av_default_item_name, - .option = hash_streamhash_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVOutputFormat ff_hash_muxer = { .name = "hash", .long_name = NULL_IF_CONFIG_SMALL("Hash testing"), @@ -183,7 +183,7 @@ const AVOutputFormat ff_hash_muxer = { .deinit = hash_free, .flags = AVFMT_VARIABLE_FPS | AVFMT_TS_NONSTRICT | AVFMT_TS_NEGATIVE, - .priv_class = &hashenc_class, + .priv_class = &hash_streamhashenc_class, }; #endif @@ -212,13 +212,6 @@ const AVOutputFormat ff_md5_muxer = { #endif #if CONFIG_STREAMHASH_MUXER -static const AVClass streamhashenc_class = { - .class_name = "stream hash muxer", - .item_name = av_default_item_name, - .option = hash_streamhash_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVOutputFormat ff_streamhash_muxer = { .name = "streamhash", .long_name = NULL_IF_CONFIG_SMALL("Per-stream hash testing"), @@ -231,7 +224,7 @@ const AVOutputFormat ff_streamhash_muxer = { .deinit = hash_free, .flags = AVFMT_VARIABLE_FPS | AVFMT_TS_NONSTRICT | AVFMT_TS_NEGATIVE, - .priv_class = &streamhashenc_class, + .priv_class = &hash_streamhashenc_class, }; #endif From patchwork Thu Jun 17 02:31:31 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28444 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200317iol; Wed, 16 Jun 2021 19:34:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyNXqpdPBfxDFQOd2yUPE9SBYayf1hs3gBpHGz7+RrShMO7GTWfNLu28k9Ge7+VNZIW73dZ X-Received: by 2002:a05:6402:b6f:: with SMTP id cb15mr3516279edb.25.1623897276978; Wed, 16 Jun 2021 19:34:36 -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 a20si4967209edj.403.2021.06.16.19.34.36; Wed, 16 Jun 2021 19:34:36 -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=UNXxr0IK; 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 C55FD689B13; Thu, 17 Jun 2021 05:33:25 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075042.outbound.protection.outlook.com [40.92.75.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E62876891E2 for ; Thu, 17 Jun 2021 05:33:13 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R3AcWPuCX9uWbdAvD/UvezPqbuCDOYTsNu3EgcY+RIu0coc2FwaFudHTH33L1GlhI/MBLnkzDXDew+lcIIDAAjdPi2nFvdmteMyLvFqxXJtpJeYQ0CEewWcEBLsFCvwzHYm6FR6REbm9XYYyT8BRdgxyaNwUJza085XDaE2XcQg8Uoql22PPEiObWr4ickCXQyj614s0HAUFZD3vZRGjwlwgoQDm3745459Dd8kA7e/FngcZWrRvbIzJsxrN+pvriUsjkr5k5Kxx5q3mEyJJJIG2u6yE1m3Rsevug5rRoPQzZ6hHdxdj/fEcqhNeUMq/l3Q77szoGRV9FmRYtnIK3w== 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-SenderADCheck; bh=KPAULjXOiCENiwrEFxcITI8Xd38tNf1HN54+ZIZ7+y8=; b=hvmIAkAf0qXn/ZcwMtxkLqzGDxd+jujKZ/ZxyJCOuU72OYs9q3T42HHWwIl84aJ5rTmZXMRlPHtPXqq7WTAbPwSJ1CCkoDJ8F6PKKZ7NES1ao73JnNmDSVnaJkw99TXkeS7PHN4DeXXjM1IbBEV5/fc4pvI0VISZPSBgCzVrYn36P8d8AXXFlOOj5NWNVksiBPqMbGawVUOhXqq/+Y+QvzAMUHxk08CH0mbHxgJMDooGiQRqu079oWJzr7F/gCYLB+OXUtY5pKEQ7OK/XlohYwsVKHxnJ7y9xS5vPllq5Kyc05sHgMBz9kZAIh2GdoyXi7q7SHrgCN/9r1Uv1XHSHw== 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=KPAULjXOiCENiwrEFxcITI8Xd38tNf1HN54+ZIZ7+y8=; b=UNXxr0IK8V08aRrq+0oNiEDWAwsTAWKAcCRiNMj69ubg3CtGOxj9pDuWCeUkI42aqJEH+h8m2qhUc46r+wuj0HRPDVaSBegrrl+ipYN1VolIZ3YQFXAvU/aIErU59POu2ADqzoJmGAju0OuRnBKrS47tsSrJX5Vpza2Ae0tzGCXvG/KSip/OFXpQOvjZZQSdxT75SnOEpKFUpU+7wzGIPekaR7QUDbib0weJU2PgYXxTLgtXDFM3IzhC3RNzBNr9nG9Av2I4Frr9R4dVtvgDFYCy/mfPxNP5kdov0AP3CEtN7Tt6w+OE+bkE1TqTLZqoY+gMjQf+dJlpx7cO/U8uvA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04HT194.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:12 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:12 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:B35C36F116810884CFB1CAED47632DD2857EFDC807DB371EF3590944E1F3E1C3; UpperCasedChecksum:E8152977908CE625A9F8F338DEC420EFCDCE55E2110B6903D6E37B7C1D10FA1E; SizeAsReceived:7590; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:12 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:31 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [VrC3v4085YFID2XJg0YAAEb1IB5xsSY/] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-9-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:12 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 235b16db-5174-4e58-2fac-08d9313840cf X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOjqxGbwlhaK9q4t1qgCYNcjFrWfwo8Ysk+n0x5rfzeVYeJq1BXpGUDEHGTul5q0IseRwa3zHjzpzJKgolBOxOwyCR9Vilp1YUEhAA0TExZzcRjZIyw52YwcHXyMOQl54HvdxVy0kXTfICMYXSTbBJNayDVma+ypzKX9GL7WkYXUxovq6cOJYCN4yvbahsdkv4tggdNQiVxosWWTLi4MULjWICKSgxrn3cYBa7XYeuwJR2z1MgvGIajh6gJAVvzWcOdOBk7/iBBYJvTJ/i3+V3LbO6AiIpNmIpgDrYS8rabCbDLJt4i+V+Gv9Cyfsbaq8na//9XgRYTb8qPH+IXwJT9LBdyeEohix87ymQkEn7oVe2seConAAR1MtOGOTfgh+N4w1PyIqUUEmnHMRAvXagY60kram5i05UAajT+d7BUbxZE6oGmbMXCpzVUf4cRY6uIS+DVbA5Xi8TU0mpJi59x+2J4yBjZZPywgsJ/6DF234G2EE4gESiOe2XiEnp+5e/0BwT+sMebJyXwDXbFGn6vuaoIG9htGYEu0hsRxQrr/YPipf5I/o7KPFWFwma1Xo/WznSbi8mkMkRO0JKsJyw8emPFHZvOH+S/HooUbKy1zPIaV/mQIUZrWv9JU3GbJSwJ5fPgvfh1LP3it2UaVRAvQWW3jSjYRXLkCbllrVB9Xm0uKSJpQ55pokL1UHp4hQsMzU8C7GfLUc= X-MS-TrafficTypeDiagnostic: HE1EUR04HT194: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qgJpVdkGVFBs6hjUxY57MdmTIqwYY56BvMDTB0UQB0eoSeOyzkpc1hdbq8dS2uYv+IHya9KQp349TdvV8HB1iU09M3Umf2URNlufqRFHnfF4nRlxGudgXkZDuCUohAF+GZAwDoPi1KGAAvz7YKrs/LfSuzYOvOxY+JPULt/lB+12XVhgrjl/D9i3GCwfXYKXGd7ihkhLjRjfFRaE7p+4JSC9NTHOL9c6UdDspIyL62F7Ims1o0sJ4IAeflrCfO3e82sAVx+1cgH/VKtnjm8Y//y31EjcfkLhz4UC7PaWkZCq5gwTQfBalHOmz2YE/ZLRynvvoDT4ypSTiNpP+aosY1+f8OTo/SeXp3ztpuclzBGcBz0XiM16aRIqlw1ikP73YnDn+SW09wGKpI8C4zDcig== X-MS-Exchange-AntiSpam-MessageData: 480JFPjKlH2tzPE9vPGN+YwI0jsICLiEXugN+I/8H3omSsUpmkt/bnutK5+YNi4BXWXTIsx6uDEkYsHoqpxf5ElW0X6fA5oGXgFEFVsUgUjcpD4buwOpUDAghoIXkprfCECEzZomYDk9k65W5mo9Vg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 235b16db-5174-4e58-2fac-08d9313840cf X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:12.7484 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT194 Subject: [FFmpeg-devel] [PATCH 10/41] avformat/img2dec: Make ff_img2pipe_options static 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: 9P11rjRaLpns Signed-off-by: Andreas Rheinhardt --- libavformat/img2dec.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c index aaf2ac362c..55a91ca698 100644 --- a/libavformat/img2dec.c +++ b/libavformat/img2dec.c @@ -647,7 +647,7 @@ const AVInputFormat ff_image2_demuxer = { }; #endif -const AVOption ff_img2pipe_options[] = { +static const AVOption img2pipe_options[] = { { "frame_size", "force frame size in bytes", OFFSET(frame_size), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX, DEC }, COMMON_OPTIONS }; @@ -656,7 +656,7 @@ const AVOption ff_img2pipe_options[] = { static const AVClass img2pipe_class = { .class_name = "image2pipe demuxer", .item_name = av_default_item_name, - .option = ff_img2pipe_options, + .option = img2pipe_options, .version = LIBAVUTIL_VERSION_INT, }; const AVInputFormat ff_image2pipe_demuxer = { @@ -1109,7 +1109,7 @@ static int photocd_probe(const AVProbeData *p) static const AVClass imgname ## _class = {\ .class_name = AV_STRINGIFY(imgname) " demuxer",\ .item_name = av_default_item_name,\ - .option = ff_img2pipe_options,\ + .option = img2pipe_options,\ .version = LIBAVUTIL_VERSION_INT,\ };\ const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\ From patchwork Thu Jun 17 02:31:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28450 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200443iol; Wed, 16 Jun 2021 19:34:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyDvb3zCSdTf5KN7VY3ZyttGaMwHyZapnq111lv0vvn+HOj2ZBfB2/DNwsH23+dHTUWAYu6 X-Received: by 2002:a17:906:b857:: with SMTP id ga23mr2633416ejb.296.1623897287208; Wed, 16 Jun 2021 19:34:47 -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 a15si4183523ejc.78.2021.06.16.19.34.46; Wed, 16 Jun 2021 19:34:47 -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="U8d9/VkJ"; 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 E3559689B33; Thu, 17 Jun 2021 05:33:26 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075042.outbound.protection.outlook.com [40.92.75.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 22F4B689721 for ; Thu, 17 Jun 2021 05:33:19 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PMTUkQ3nWldDMRxJPLHK0fB4dF9Pujec/tTK3QjuIYr4yykVtalN+hhOG2ZOgHDiVTvGmIdSy5tqoWSh+4PAB/SwwjOfsk+SQDfZEywvCm3uQVgTHBJV/Gl8IhD3nr0MWcm5kNBTJT++uZdjrw+yl6tHhm3w+7rMvTM7Cbb0EfRvw1MHHzBvHto0Yv9oGcjxsoZeERaKlP9VA/UKZbXbFZtIfNrZM7jBo7hZ0jcO/gUjGaeFbecrDgk9+BswkJtftcMagqWfGdg91PeKJTBtsIdl9ycVSe92ARHyLgEoUKSYl5IVNPGItQ77Fht/9MWZJK8dINfHF9JLB7UZVPE9Yg== 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-SenderADCheck; bh=fIE2vMPq7oJWDTWGE+MLYey0pMUx0zNVFlqOT+kXbxA=; b=AmQ2hMRGs/UxbDOuXUma8xzSN6cZBtH/baYBF4GoVx7GTUpyica3cijFdYxufajiFkjdyVAt4CmP1ZE598GpezS2G80RerMnO9QYamNgpTqIc4EONbN9kF8dImgNoaYx3KgQBLCn1Xqlj+3/VaPvSG73XJUYuloG5uDNFrP2OohBevLafGSfROpUlumx45pX+x5FYhG9o3p97vB6n1mJylCzvqZFMs3uyUI712Jcfz3o1n44u3B+oaUeV7Jwoj6W3sut3ryuFJdrLhJzPY7OSRs5PFXV7u2OgOdU+TBsZb3D7j4gQ2Yuku7G4sXl/41r+B1bV8gvUuMNvLhVrYrWhA== 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=fIE2vMPq7oJWDTWGE+MLYey0pMUx0zNVFlqOT+kXbxA=; b=U8d9/VkJYBoaBOqyVZ5+4CPdDcK9SKrnM0YO9NTNEIfgipgqrXCaxsDTpONsSi0obnWX5SriUgzWXYsXzpzgaQi5IlKL20PF0YAQ9Y3QxyK1lKesYEG7vPOEevsTRN6z8aL+CYN8oqbdzdTV6jXIDvnCVYwppshxbBVuUZqrX3EOa2+LHdTbguF+0JjWjRg101t9p2DoKFXnQfUQW3cl8/Ff60HhdKXURs7N3PVR0Id+pdW0oARR13jYWW2ALVGy3DphReI4+BD3bdeyykP57JuLKDU2Ybwm2rPMPFxWRnFJN6fEL7R4N4rvxHYO9lPpXatcomaOWFIUC034BdxFjQ== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04HT194.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:13 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:13 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:FD19F357C7A1E33F71D454BC336455EF92EBB0E14C16841D14600709FA91D6E3; UpperCasedChecksum:96F1F4E65C346FD839D2BD7F7129D4392604DA02115125D84CD79C0AD249B649; SizeAsReceived:7582; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:13 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:32 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [UNRJ4or/KCq9mgXV2Crbk/5essfMHlYM] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-10-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:12 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: dde6adcc-d75d-4d0e-718c-08d93138412d X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOtpMk4ZZjMF9jvnlx1KSQ8lQ+/EednKfLx4fFQQNBhrXl/D2YUv/jaoeWAsFzmn7hlWAUKZH45UEb+42YcNCde7RrLcKnhKFewrbhQUN7kCoGmHl2QEUHhA5ugB/b64jVPXdsBchwsKOI0bBIEhgogLJEvEdOxyxuJ6EARwJvk1b2fwg7WWBakPPSYW86+Q08SrkU79ReEsZp3g04uDxMVkukiXHsESgjyvUouwr75PdYuOJWeDxoKraGDRP/IjbNi/NjBX45Tbz3kWqdnDEVo2dS3VM4dUUBw0FvIuyRGVlZw/eBv6JxebW13Xf9AA9CmC71Rs+/8HANLhjBBW0U2K7OckDnUcxN/Xu13HOAg6tzJZRaKI1X5uTSe9dceewIxE4h2TRJWDJ/RV2qXnGyiXK4Ay70+NJ+fhy65d8qb9ypLl3veXp4aW/ATShFpuowvJwapdX3DwV8W5ZJiP4Z1SzyyWif9BMzL7ATJH81BORH73VCTd/yzpQZrrl1vhUeAT6ziGdfwPuHMnFDdsfDcdmwm/ZVkiC6+k9g69xoIreRueoYfUC1X2L6srgt9Oihd6GRHUV9PwenvK7vdlGQzestqdyhQrVUwBMbwszHFalWppF0aybuvLJe+5sWw14Oymt8BUI9DcvRTT+qXR2vZgykUwZyY7Hlkz/s1gue1lxyA4xqyoVhbJkQSlMRvGlL2PSWcg/JBcE= X-MS-TrafficTypeDiagnostic: HE1EUR04HT194: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dvwEaCXmqo8BkdrobxWy/m23BYa5K+GrN/hJlMv+x6qlqD03SHTnE9/gShoN0GPYe4CoDdotQV3Z+q4ByDKZCQBLHi6m0hdL19xq5K/5hC0kwVRcB81fCS2HtTgF8UdBeWBAlaFtto1d+z73GQK+IpYZu5tgD3Gqzp8M/HUOPY86YA5+THGbObp/k+oWefCxM8ZIXUdywT5aMSMbZ87wKkUAkY2jCwlls8V3+qMYDYHZdbbjU8R9QCppbx/vTLH/JNkZL0HKy4vDmGFC4sQ+ZIZDUlnd16IjeXLk1VJKa+VYilQMhiGAvOsj1/BrJqutMKW1lfuvncubFvtkl8goeapD98dsfCjkT3vpsblmoMxb4DMU2repnLCskTVoR9s2dpAfb35rN4+kb3keijPfOg== X-MS-Exchange-AntiSpam-MessageData: 869WqB4jR55OnIUkzRKI4fScFSoXNS3RTmQC51dQtS0qg7niP/AUV+zIThL8Z08eNoPw3pH6gK9EyEeeF9mvxRrUpdl030n495T1hVA41rKp40YHUnfEFpMW7LvzJHjDyL/YSE5qNHUEt8KBnJwkPw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dde6adcc-d75d-4d0e-718c-08d93138412d X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:13.3691 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT194 Subject: [FFmpeg-devel] [PATCH 11/41] avformat/img2dec: Deduplicate AVClasses 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: AhljFKD4lJcA The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/img2dec.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c index 55a91ca698..c9651bd941 100644 --- a/libavformat/img2dec.c +++ b/libavformat/img2dec.c @@ -651,21 +651,21 @@ static const AVOption img2pipe_options[] = { { "frame_size", "force frame size in bytes", OFFSET(frame_size), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX, DEC }, COMMON_OPTIONS }; - -#if CONFIG_IMAGE2PIPE_DEMUXER -static const AVClass img2pipe_class = { - .class_name = "image2pipe demuxer", +static const AVClass imgagepipe_class = { + .class_name = "imagepipe demuxer", .item_name = av_default_item_name, .option = img2pipe_options, .version = LIBAVUTIL_VERSION_INT, }; + +#if CONFIG_IMAGE2PIPE_DEMUXER const AVInputFormat ff_image2pipe_demuxer = { .name = "image2pipe", .long_name = NULL_IF_CONFIG_SMALL("piped image2 sequence"), .priv_data_size = sizeof(VideoDemuxData), .read_header = ff_img_read_header, .read_packet = ff_img_read_packet, - .priv_class = &img2pipe_class, + .priv_class = &imgagepipe_class, }; #endif @@ -1106,12 +1106,6 @@ static int photocd_probe(const AVProbeData *p) } #define IMAGEAUTO_DEMUXER(imgname, codecid)\ -static const AVClass imgname ## _class = {\ - .class_name = AV_STRINGIFY(imgname) " demuxer",\ - .item_name = av_default_item_name,\ - .option = img2pipe_options,\ - .version = LIBAVUTIL_VERSION_INT,\ -};\ const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\ .name = AV_STRINGIFY(imgname) "_pipe",\ .long_name = NULL_IF_CONFIG_SMALL("piped " AV_STRINGIFY(imgname) " sequence"),\ @@ -1119,7 +1113,7 @@ const AVInputFormat ff_image_ ## imgname ## _pipe_demuxer = {\ .read_probe = imgname ## _probe,\ .read_header = ff_img_read_header,\ .read_packet = ff_img_read_packet,\ - .priv_class = & imgname ## _class,\ + .priv_class = &imgagepipe_class,\ .flags = AVFMT_GENERIC_INDEX, \ .raw_codec_id = codecid,\ }; From patchwork Thu Jun 17 02:31:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28459 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp208307iol; Wed, 16 Jun 2021 19:47:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwvfK8hKvvEqvIesyhoAZGcRX/1OldRy+ymAK8IAwzxx+Vxyxro12d43k2goI/cV5+NijsF X-Received: by 2002:a17:906:2c52:: with SMTP id f18mr2654376ejh.258.1623898077745; Wed, 16 Jun 2021 19:47:57 -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 o2si4197418edc.561.2021.06.16.19.47.57; Wed, 16 Jun 2021 19:47:57 -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=TYUz6kND; 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 66E8F689767; Thu, 17 Jun 2021 05:47:55 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075049.outbound.protection.outlook.com [40.92.75.49]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7ED2F6881F1 for ; Thu, 17 Jun 2021 05:47:48 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UmUAjRtOM9mlFGrNaEZ49Y9v9YCiHNV0Fly/uWYxOKzpqFvGpePmyNcOLkYROOLQZM9ZP6hmHURVoIrd8/DKBoT1UFZ09g++QzHq6pQzgHVxbEoB9iu519w2JKwUqbxuV/HCZN4ORhM2S9/fd0NASCNuG9K5SdHuQ113Aw6SnebWNYZ8vrI6rB4/vTkqRCTfGPCHWOmN2V93+d6p/iPrYAsQo4rlkyOICZYXLzouSi9gb5++x3ZmHmjVshN2c9cTGJjm9796Ch4Mguq9m6IiLGImA6K3Y4VqB/w6ZEVOJUkZ3OiIXt3jKg+xEY2z+s1LQZxtVrz6eGASLvFAvWMvlA== 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-SenderADCheck; bh=cM5EzNoUumChATyYsG3uJ8eiJwoR/nDtNg6sjyOQ24g=; b=lWhnI8U46Y+kNd/4qJ04nwz55BW/XqA6NfjY7ONVJnIj2646018xsT7gBu1goBtidtATnkT5pub4DY4OixZeZ5dkHb+L7SUW5Dam+7clZbUtSEPwgvzbJQHJBn5QtqfflbxG0PAPEJMVg+mLPV1cQuc2vvQuywsju+FxKPHptAme2t4erDNJnBEn9w+EfBVjMZ58IQM4E/4EVaqAlxVENWnHwy/O+0Vu8sCV/NtWmj44gvhmdgl0bRsuR19ifuMm1vJJB2J14S51gXQ0D/H2RZO91WnFSVISvBsDbSByalZcP66FmS31KMraQ5b4ET/+NJc3yAnBv7EVDZIlaKOusA== 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=cM5EzNoUumChATyYsG3uJ8eiJwoR/nDtNg6sjyOQ24g=; b=TYUz6kNDqwiGRsT+ESlxSZIboUypw+nakWm2qINHRFbjNPukDGdB4m7UNBDsCrkAeA+RnyA0LPnavi/GuuNciEv23pc0Zr6cT+nEoAERbvg4+nKg5dNboEFrEiG4ZNzIio+xgSwAb6nR3oYmrxowp/87EjpTwyKA1a3N0Elgzuifuo5ewVT9LsI8kaqn7QZYpD2eEaeEHjcZJZ84vaH3JfZDGGEkxoHdnXWeW8iqJCDJ2Y/7rFqfJ8nEytrbWgXD82eY6rY0eGjbdfLYxEr0SadfYZNyou8ru0HLbi3AOVgpR/VOj6Fb70xtT7DZVpQoz6X9P7CR6keWnPbW3i/hUQ== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::43) by HE1EUR04HT128.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:14 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:14 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:94E57FA2B70128EA739538F2BFFA94E6DFF3FC02F8847255162B1E6FC8DC7C72; UpperCasedChecksum:C75B390E3E93AB15B9B48A1A828FFC55A2B05EC9D0206095D31877583F6106E1; SizeAsReceived:7584; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:14 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:33 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [aU70spXyH+nsl53GmVLKp3W0G12XAkrv] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-11-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:13 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b7d0b9e6-4f76-4db0-90cb-08d931384189 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCTsCDl+Y8M3KS9SIDNbiRAEGDtGoN+9DqRxtg4ddIjMAzbTLCXyupdkkhF2DoxeJD4CRO672rSOZxUOrHYw10ZHU74J1UaOaG4dLIYwBvBuwX7qKSX7tvXrBQE+7H5l9hFj5AGFyfCt65LlE+0BANxZZ2tVi1uJlGaY/CAm4U6ITJ2iQR8QwSAUEAx00z6TcB80MlKwrpjEDX4ufIAy1yIIkf+wwFLinuFwvKqJQcEJTedSYsRBvBn6KIAaPnI6m0N8xAXYFojBXpVXbSVOkAmmNtNDJ9YP0e2xZ+s2c800rRd/fRDBif4rkckXHCQuXRZvmOCgdma3Dde5WCP/nHUmJ8iRcP202p7A5yH9faxglbwL8b8F7EfMKhjPMaUh5pwxQQdLR046aDQc487QDVVT7V/vdrLVvqMUHsuzALK0k7bBWxg0tQG27/rcF/Wvcdi5bLpYR8I85ari5FqEGwz5Z9njIYKcBO5lI7+WhxC/4VNUzEOZSTUItBP7P+6IpBESEeQ2idZU1pwl8WDkXCk9CfqZ+NPatZD4e9plGEdJSExQTUkhsXD3PdYBsfhNynwuiFAvibSl/1Cq5MHE19T+vGR6C4PL/hYoNkEup1vlvm7+msrw2wFYWQzH3vQl/Hbrz2VHDV6xz11tLyJwlXjdoectaOL1MmAOKu6qiAD0WFsByWK3T8ww== X-MS-TrafficTypeDiagnostic: HE1EUR04HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yPfi7gyOGw/5MgjkzHFnb1dlj4DT5ixFGYRHh4b+J7PHKqEu3m2TKm7pn4TLc4KXBS5VjI2NKcwNu4tgujaP0G8nUOnKna6nui+U1GVdw+zhWBHwbnnwQJHctkNu8Lfb2gfClA+eGhHuzJ6Iwvly8tfJ3A8SlvpDGvLTLuzLzUI8EAnACmh+qIh0jNWJr0fHFHjvOhoDHeI0VdtnScFPS5L4ZJ/qHxOCPjHL+nErzaqdz1z+kU2js62kncnAxlT/HLm5CK+JehtzipjkGCX5qeguLD8XNcKjoLT8w166VXzyNbsJZGevaPX8y/z54ht4DJ4CuX2Y/7ZNMfD8SQxQyJUHV80gOV98hE6HOpRErjmurRacwleywjfNYTKMWicYUBwJNbiHDrT/H5lAg8nQvg== X-MS-Exchange-AntiSpam-MessageData: FaWo8D+2nw84nYi2yVGBXIOZLbDNza+0VKlOM7x0AnToAZMSlyJqpL1aa3Lxd+sqhQhO3oTAKYKUAewGApscME0ZLgwZblSYtOFPdlBKzIb9sy1LSeeOHKkt2E4ZKb8WPCO0chxAYxG/kyh4lG3ENA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b7d0b9e6-4f76-4db0-90cb-08d931384189 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:13.9618 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT128 Subject: [FFmpeg-devel] [PATCH 12/41] avformat/matroskaenc: Deduplicate AVClasses 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: zSHCUo/DJDiq The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/matroskaenc.c | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 186a25d920..899a3388cd 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -2829,14 +2829,14 @@ static const AVOption options[] = { { NULL }, }; -#if CONFIG_MATROSKA_MUXER -static const AVClass matroska_class = { - .class_name = "matroska muxer", +static const AVClass matroska_webm_class = { + .class_name = "matroska/webm muxer", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_MATROSKA_MUXER const AVOutputFormat ff_matroska_muxer = { .name = "matroska", .long_name = NULL_IF_CONFIG_SMALL("Matroska"), @@ -2861,18 +2861,11 @@ const AVOutputFormat ff_matroska_muxer = { .subtitle_codec = AV_CODEC_ID_ASS, .query_codec = mkv_query_codec, .check_bitstream = mkv_check_bitstream, - .priv_class = &matroska_class, + .priv_class = &matroska_webm_class, }; #endif #if CONFIG_WEBM_MUXER -static const AVClass webm_class = { - .class_name = "webm muxer", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVOutputFormat ff_webm_muxer = { .name = "webm", .long_name = NULL_IF_CONFIG_SMALL("WebM"), @@ -2891,17 +2884,11 @@ const AVOutputFormat ff_webm_muxer = { .check_bitstream = mkv_check_bitstream, .flags = AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS | AVFMT_TS_NONSTRICT | AVFMT_ALLOW_FLUSH, - .priv_class = &webm_class, + .priv_class = &matroska_webm_class, }; #endif #if CONFIG_MATROSKA_AUDIO_MUXER -static const AVClass mka_class = { - .class_name = "matroska audio muxer", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; const AVOutputFormat ff_matroska_audio_muxer = { .name = "matroska", .long_name = NULL_IF_CONFIG_SMALL("Matroska Audio"), @@ -2922,6 +2909,6 @@ const AVOutputFormat ff_matroska_audio_muxer = { .codec_tag = (const AVCodecTag* const []){ ff_codec_wav_tags, additional_audio_tags, 0 }, - .priv_class = &mka_class, + .priv_class = &matroska_webm_class, }; #endif From patchwork Thu Jun 17 02:31:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28440 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201176iol; Wed, 16 Jun 2021 19:35:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyX35h+MM3KrolyFaRjiN6DI/OyLLTJAXcvzu5sjb5S0kmBYJmVRFTkoDzGThzudgSAudIE X-Received: by 2002:a05:6402:440c:: with SMTP id y12mr3478843eda.208.1623897351231; Wed, 16 Jun 2021 19:35:51 -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 jy9si2117ejc.578.2021.06.16.19.35.49; Wed, 16 Jun 2021 19:35:51 -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=lIsgzoR3; 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 3D363689C51; Thu, 17 Jun 2021 05:33:33 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074048.outbound.protection.outlook.com [40.92.74.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1FED8689888 for ; Thu, 17 Jun 2021 05:33:16 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=czKUnszX3iYHUj6UlsBjN3etDQrc7JGExAs4Q9kNznl2fjoazsp1MhL/IKazNaUdIHpKDDDdzoFFeBF7n/yhNpJsbP1Frl9CFMPx/gnGQqa9+w7N12p2kIQZJfBuf3DxqiytaGeuZVIBLuft8DRNszKdwjJloCMzXMAgEgoi5fnMENqBZJp9cmyP1Fns9MI98trKXTQtAGDvNngHdNYJ+sTyrmL1H+c22UXoCASZPFMPk6pS8nTzBbYyTEPZ2bLUpdmm15y3zb7vCOUPGadRA5T7G74CvX45yzO6zDzkedaPgeenUj2EAjBjQe8mlYf0fOI69ZUmwMfpWkddML5lng== 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-SenderADCheck; bh=ss4dgD6SHpFQi8LOkV+utgFQhqi5Pa3e0zEZKc+1rsc=; b=FBhaAfNxMNZmG/e9gVIKxJuuYEpYqU14DKoc+LqyujliiyoDrBdSSZ24EiF9rR8YsZm4asFJ/QHbKqe+5VYwU52mz4UAdIHlV9lSvsGtzX3HwooZ9rW+notCshhQJU84ccTtoIz0kgbKkzMr5MirVxi2h3FIngGZC6iGxSyoQtBBR2IsNrfohqJcbiv+FbHpKFCmNVoOtw27AlFA7P7WLl697+fl5P2yeXjDwbhxLKqniBGQt97XJDmUUFsIo9Me0UcbptXOG64uPzCfUwXsLo6MkmJxVocYe5j7Mapiatrb7O7WHPndCQxx5LW8DtWt+vGH7T3cSrRmcrmWd28yOg== 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=ss4dgD6SHpFQi8LOkV+utgFQhqi5Pa3e0zEZKc+1rsc=; b=lIsgzoR3pvqI3TlvV0PVr7KiDRMMWGKigPGZUIVNKlZh4DXrBvM6lUN70fDXi/MAHZQ1/ziMf38fpvBvekKWGCDH0Luth0NQ3kNNfp6FrQAFKLQxw0fMOPmdWDoRJWRhkgr2F2bS6xgFecfSDx74pI9P+LTKz6Q50l+NuUTjSkyXDWKhRq6kHRPKvhijhHsYHBf3tQ8dshTanhLqT/GuX7KTziMTAPK5/fGUH0NrG+QqNcQW8QNPpmDazfMWEmBT2t5yJd8F5SkolfTOXNq9P8fTSCVb4VHtUddR2xq+ZdDyCKQxYvhyMGInGDYk6vRsUNaJMdP2r4shvjqo/6Oq2Q== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT190.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::136) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:14 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:14 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0A7E8B89835AECB6CA91F4DCA1CA25794C0879096EC6FA087CE49225599FFE1A; UpperCasedChecksum:46140DEFCCCA31AB585E53EB366EB0D1AABF4B40BA493B9146F613DAFCD82FEC; SizeAsReceived:7579; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:14 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:34 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [tbNlqxW6eeUx54Q9zQqyaM7hrQUh+nIS] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-12-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:14 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 5d5ac367-38bd-46f6-fa0d-08d9313841de X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOtpMk4ZZjMF9xeoJXzVRRab7f4Vbxd/j9a0OUtyP0/KsZhhusrQ1lnO2DxLfNh4EtwEFwBzHzBwtVJKgORnM5Bppak5GCFt3hxQulZij3ZES8fEB0xpgc5cO93fEhEsaVB11GdUaMjEF6FhmGmdtRiIBhA2Y9vWgIthC+XfDNJ3XeFyzdUzkZjG16D7JERYQqMYgax9bjBdwclcxEmmCCmNok7LRnnKb/vSd+0bFmSAQMHOBflC/EQ2CmS9+HPT4QnDTDgXULGLKXOROIgymeoYbflz74t4r+wDD4eq8jOCBYxPnMpz+uTlxmdkXC0TQDvI75JGaq/pp45tXfo6szuxQ/SqdNNPWe/tAPpLkaAU+eRSHSiQvDqVjUBNtAaGM/hoUwJyEDTSwRE6OwbYB5b+stqESWmCV4yMKFz6OVYMzM8q7zm7uXR+Xrbk3yiWYaPojTvY5//mFSXB5/hA7thRLzqX/Rtofn5ztoIWrREWOQLBcvOvbdppJ24e3ZUuOUYK/s9L/B0yP9yXLHoV9Rz7J0x79P8nb657HYhmFx+gk/L2S9s5IliXm2ZSNRN2as9J3oIBVx4l8qPrs0nqnX4myDxCYD3TIMwQgcgpObQ5r/dGyiyTBWCvLwH4EokaAFmWQu85oacLdLk7XyjHj0DPRfWOlxYvsUWTuV/wezWqCP+dc2bFdMFit+w0kCdfK7T00c3A+z09k= X-MS-TrafficTypeDiagnostic: HE1EUR04HT190: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zefZGJguT6QuHadKBi+3ETyv5JOGvpor2rcqFrAsjQFUJUq5vde1arhTT5un3vRa34Ex6V0R2c4gcb6Bxm3w4HXrTKdrRxGWa7eC8Gs0owikhtUZpy7PbuwFAZKYLlJ9olufT35HwHjyhagvoU65FBBY83wu2RBrx2Gog+tcCgT1LfBkZtZkqZf4RJWfGNsNEwYudWc4xcif/zC0pC68zXkDVZP6FR0VeiVm7TQWCPwRsYy96UWu6h25Jusac8ciCMb7Nbhy300wISAIuCqLatT2ws0gwH7PfJOJnqhIQZGnq8ggL9u4qFfe/vWBKb5Gcc+RzQS3KzkAlLXxhHOXTOKLkmz+9NKvx7VF2ewFxYWbMa5y5ekNwCS8QBG5lDnmLpPSSdMiiWTuZDQTysNgsg== X-MS-Exchange-AntiSpam-MessageData: efJJfcqzQ42UZyDLwOS8K21C16qtZCPM6/xNeCWEOE5pUab2iIg3p5MaYBnnyZIQNXb0l2O94HLZKzULkHlfbULyxpX2TVP3bwoLNWazwnV55UJ+lNK8kk7Kk8ZX7i0gh0xskTkdFnbN1+oB8iJloQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5d5ac367-38bd-46f6-fa0d-08d9313841de X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:14.5186 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT190 Subject: [FFmpeg-devel] [PATCH 13/41] avformat/movenc: Deduplicate AVClasses 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: UVJMKLSx/A07 The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/movenc.c | 35 +++++++++++++---------------------- 1 file changed, 13 insertions(+), 22 deletions(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 04f3e94158..fd26785f7c 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -111,12 +111,11 @@ static const AVOption options[] = { { NULL }, }; -#define MOV_CLASS(flavor)\ -static const AVClass flavor ## _muxer_class = {\ - .class_name = #flavor " muxer",\ - .item_name = av_default_item_name,\ - .option = options,\ - .version = LIBAVUTIL_VERSION_INT,\ +static const AVClass mov_isobmff_muxer_class = { + .class_name = "mov/mp4/tgp/psp/tg2/ipod/ismv/f4v muxer", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, }; static int get_moov_size(AVFormatContext *s); @@ -7211,7 +7210,6 @@ static const AVCodecTag codec_f4v_tags[] = { }; #if CONFIG_MOV_MUXER -MOV_CLASS(mov) const AVOutputFormat ff_mov_muxer = { .name = "mov", .long_name = NULL_IF_CONFIG_SMALL("QuickTime / MOV"), @@ -7230,11 +7228,10 @@ const AVOutputFormat ff_mov_muxer = { ff_codec_movvideo_tags, ff_codec_movaudio_tags, ff_codec_movsubtitle_tags, 0 }, .check_bitstream = mov_check_bitstream, - .priv_class = &mov_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_TGP_MUXER -MOV_CLASS(tgp) const AVOutputFormat ff_tgp_muxer = { .name = "3gp", .long_name = NULL_IF_CONFIG_SMALL("3GP (3GPP file format)"), @@ -7250,11 +7247,10 @@ const AVOutputFormat ff_tgp_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH | AVFMT_TS_NEGATIVE, .codec_tag = codec_3gp_tags_list, .check_bitstream = mov_check_bitstream, - .priv_class = &tgp_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_MP4_MUXER -MOV_CLASS(mp4) const AVOutputFormat ff_mp4_muxer = { .name = "mp4", .long_name = NULL_IF_CONFIG_SMALL("MP4 (MPEG-4 Part 14)"), @@ -7272,11 +7268,10 @@ const AVOutputFormat ff_mp4_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH | AVFMT_TS_NEGATIVE, .codec_tag = mp4_codec_tags_list, .check_bitstream = mov_check_bitstream, - .priv_class = &mp4_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_PSP_MUXER -MOV_CLASS(psp) const AVOutputFormat ff_psp_muxer = { .name = "psp", .long_name = NULL_IF_CONFIG_SMALL("PSP MP4 (MPEG-4 Part 14)"), @@ -7293,11 +7288,10 @@ const AVOutputFormat ff_psp_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH | AVFMT_TS_NEGATIVE, .codec_tag = mp4_codec_tags_list, .check_bitstream = mov_check_bitstream, - .priv_class = &psp_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_TG2_MUXER -MOV_CLASS(tg2) const AVOutputFormat ff_tg2_muxer = { .name = "3g2", .long_name = NULL_IF_CONFIG_SMALL("3GP2 (3GPP2 file format)"), @@ -7313,11 +7307,10 @@ const AVOutputFormat ff_tg2_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH | AVFMT_TS_NEGATIVE, .codec_tag = codec_3gp_tags_list, .check_bitstream = mov_check_bitstream, - .priv_class = &tg2_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_IPOD_MUXER -MOV_CLASS(ipod) const AVOutputFormat ff_ipod_muxer = { .name = "ipod", .long_name = NULL_IF_CONFIG_SMALL("iPod H.264 MP4 (MPEG-4 Part 14)"), @@ -7334,11 +7327,10 @@ const AVOutputFormat ff_ipod_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH | AVFMT_TS_NEGATIVE, .codec_tag = (const AVCodecTag* const []){ codec_ipod_tags, 0 }, .check_bitstream = mov_check_bitstream, - .priv_class = &ipod_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_ISMV_MUXER -MOV_CLASS(ismv) const AVOutputFormat ff_ismv_muxer = { .name = "ismv", .long_name = NULL_IF_CONFIG_SMALL("ISMV/ISMA (Smooth Streaming)"), @@ -7356,11 +7348,10 @@ const AVOutputFormat ff_ismv_muxer = { .codec_tag = (const AVCodecTag* const []){ codec_mp4_tags, codec_ism_tags, 0 }, .check_bitstream = mov_check_bitstream, - .priv_class = &ismv_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif #if CONFIG_F4V_MUXER -MOV_CLASS(f4v) const AVOutputFormat ff_f4v_muxer = { .name = "f4v", .long_name = NULL_IF_CONFIG_SMALL("F4V Adobe Flash Video"), @@ -7377,6 +7368,6 @@ const AVOutputFormat ff_f4v_muxer = { .flags = AVFMT_GLOBALHEADER | AVFMT_ALLOW_FLUSH, .codec_tag = (const AVCodecTag* const []){ codec_f4v_tags, 0 }, .check_bitstream = mov_check_bitstream, - .priv_class = &f4v_muxer_class, + .priv_class = &mov_isobmff_muxer_class, }; #endif From patchwork Thu Jun 17 02:31:35 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28443 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200673iol; Wed, 16 Jun 2021 19:35:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy48mjL2afYin5CzQREAB8yyq6ecZFRvh4IQPz8G0VUFtQJK8Xz1aRvxwjRfIZpO0xYvQ/T X-Received: by 2002:a17:906:144b:: with SMTP id q11mr2592993ejc.478.1623897307023; Wed, 16 Jun 2021 19:35:07 -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 gv20si4018040ejc.629.2021.06.16.19.35.06; Wed, 16 Jun 2021 19:35:07 -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=e06fkFsu; 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 134D1689B37; Thu, 17 Jun 2021 05:33:29 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075042.outbound.protection.outlook.com [40.92.75.42]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 445C4689810 for ; Thu, 17 Jun 2021 05:33:19 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KOdWAlC0lyWw2AHc1rx42IgF/7M94jkscJMLsLbo/ikoaaZp8NEKe7QjY3/I3USCXkmW5tRqWNIifaMYkIa5wqBDMvOtNKtMJUBbjUOlQZv3QSlg9iLKdIkUsavtWk19Hu+9ukzTXB/rrp+AGqb4f4Jmrvu7sF+8BKypm3cJf9qMtxEYK1i6V/ACM9vblMGZb8s3WhyPIbJmqrukJsC4XhaVegRtKDONagZDraBoJOWB1CXv/C6ItZaiqwV2YTQBYtqbRUExaemlgUJcC+qPOY9wFXqvbIqgsvNNxpevo2sONaSt8F8Z+GQAByzRELu2K0mNgjysg83feWqu0kBgww== 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-SenderADCheck; bh=nAFReVzqEGTiTUR/IRGkex6BDZT/IS1zn0h8tgDG4Vg=; b=AzzP+bThcDj9SzaYwIU0Qpij3OJ7p7Ail8zpmPBWLL0HUiLau1B/ewhlaSX+QuG7m4W4umJjVhY+57JQ6upUrWPBbzLGBDwLueMpcrTujxAWMZ0xNAjIeOxmGYmZEGxUBpVfSY2BONtd80G7hzxSP2EploJ2RCOgU/CTscNMEy0ar2J+31nMppPwObvu6IRM3g8JAMikJ2mQ4C6qGlnkupDsoojSAcPOOa07nonUA7pPRutttx6XIHHKCN82bUvevGxLx7p4slfRYguR8JIEi3cy7p/yjs9T6WP2SJj9m2X7eDbLnYyFVVvOwJlRCtveStpIakchseoUs70U7i4SVg== 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=nAFReVzqEGTiTUR/IRGkex6BDZT/IS1zn0h8tgDG4Vg=; b=e06fkFsuMcJNzMCNgMCe9HNICpWpTdL5SDbg4cr+vGzR43khMOK/f32wy23gtK0BSn9darqh8p6K21pJlHj6iCDbujZAgROCBdYS+iL29n9xUjWHpUImxv3cDAXlXnQymgKGhUK49t6Ax5QOSIyT2uePSMFjwzWd0Nd7fz7vA2Tos6oUMwFqY8Fa1mzOq/IbZS01RUvVos4TU3u+MJKe+WYS4dEI7o4g6wZtOgzCshsQFWUo0iBck2l/LNHvoLsrTjabzeJQl79NGmAOgz+y1hzV7YQINUn9bDLHBnSKIBZC0nNZSHR9werJ8ABunm0KxUdoTkSdMXgR1r/Ecrngeg== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04HT194.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::205) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:15 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:15 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:D7406713CA9B663E7FDD4046EAECF55AB24CCD5D137DAEDC045617EDA3C8BA0A; UpperCasedChecksum:91A0837119D1D47ED50116F9DC2DAA271E1153B6AEBC4AFE3CB28E822252CDB9; SizeAsReceived:7582; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:15 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:35 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [cvt63zOSVKT9Cm0STZjUrZNzknclOLhU] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-13-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:14 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b4923e70-94eb-4c4d-e569-08d931384237 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCyEHH58u7PRsJIpR3KLXEgZSjlm/5q0kPUQclT/jjWrunx2J+zAFzE9OQpUtQhEAeGdqmIav+/x5YjaFmUc0+be9xxnDbdZnZnG28HwKKC0YtWWFIXBKIjHPOuqT6YgFEwXmEbExpgskN4kGZXXb9yOKZF0XbSUB2rv3sEwt+a3rCkDoof5GUtvPHfQYhEWaRdLYxIhZvMoBJn0jSxWvlZWkJuUG5bkxRWGRBwN44TT9EEC/XTGnwlJUaYu6qamxVQhWfOIOq3Iz5R0ecHhqg9nf+BFnWzRcKKGA6lnQDQxlelBmqn5JE5ISc5jXTlVYJ34NoECDx+qLdQ0tgnKgsxDAaHRTmx10S1hsejFWL4Hi/3kyx0j7eBMpn8gyKILO3QqaibATqE3yzYzTsnRc7MeuvLvAk55S5LiRamYw4tSXAVFJXGPXBM9nCEZn2qdt6GtwQbr0neZ3D7x4kEPBQzwXc82leCjcjgYbAqroXcV3V3CPFpMV5lEWZ2E5W09wade9b++Agm3I8TtmgjpezL31GpSXC2wz/1G1FV+jSDhYJuNT7TGw10RRTXHviV9up32p8/W0PM3wvwk34FmQ9DnHgCl8DCwaBUS1QtV2ndMN2aQq81vXcFMjpaEVfRFvSozczr5+RSL095CjHWRuYBgKDvpmCugr+4RS414IvXSbJwOFIQ2JpZQ== X-MS-TrafficTypeDiagnostic: HE1EUR04HT194: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5vnQcnewTDAAzo1e32g6KgFHuf1g1db9un7Rte/V4qJn3MDb4guIWP5Xh6F8fK4J9SL+jAYfwLlvjaFWS6z7OBnzT19RGWnNgDiCsHpL4SWyqb7I2X/1r8Qvx1bX0oNSHZvlMOnD/XiGsISo0HZhpPpg3f1CN77Bf+HdGBDtz/e459jLSKHafRT4Sn4bsatzCa4DpuzYyBhqyEVPC+KGxBaDbzlWtvaQ4fPH5TmyGGvRDn4TacdTEWiho7y6p/gCGOYaoqE+2f1W0kgprabQgW5fo+D2PG9IAQqQBPk0tStUj/UidZ7Dz7nyj30IXmoj40l4q6QAUs0gvlROYr8XszgxvUqkqd9HkkPf9etnvTkbm+kpSj0Blj0MKRzKsXCg3S5XbaDU85HEJHX9j8JC1Q== X-MS-Exchange-AntiSpam-MessageData: 0aCpRxr6UO4N0ptkfJTgESJw4pT86zyV676QM62ucUaMG7EfLzTxdJAB/MF1yQSFYg/XO7JNb1qyO73B159IC38rAd0MLiru3+AWS7aE9FtSCoHrt/LMJSNKXDADAU6R+nUcZjgZrPDuuf3hqdDCFg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4923e70-94eb-4c4d-e569-08d931384237 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:15.0713 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT194 Subject: [FFmpeg-devel] [PATCH 14/41] avformat/mpegenc: Deduplicate AVClasses 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: 4zCb1s/gSzPX The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/mpegenc.c | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/libavformat/mpegenc.c b/libavformat/mpegenc.c index 93c4920904..6aed527d50 100644 --- a/libavformat/mpegenc.c +++ b/libavformat/mpegenc.c @@ -1280,16 +1280,14 @@ static const AVOption options[] = { { NULL }, }; -#define MPEGENC_CLASS(flavor) \ -static const AVClass flavor ## _class = { \ - .class_name = #flavor " muxer", \ - .item_name = av_default_item_name, \ - .version = LIBAVUTIL_VERSION_INT, \ - .option = options, \ +static const AVClass mpeg_class = { + .class_name = "mpeg/(s)vcd/vob/dvd muxer", + .item_name = av_default_item_name, + .version = LIBAVUTIL_VERSION_INT, + .option = options, }; #if CONFIG_MPEG1SYSTEM_MUXER -MPEGENC_CLASS(mpeg) const AVOutputFormat ff_mpeg1system_muxer = { .name = "mpeg", .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 Systems / MPEG program stream"), @@ -1307,7 +1305,6 @@ const AVOutputFormat ff_mpeg1system_muxer = { #endif #if CONFIG_MPEG1VCD_MUXER -MPEGENC_CLASS(vcd) const AVOutputFormat ff_mpeg1vcd_muxer = { .name = "vcd", .long_name = NULL_IF_CONFIG_SMALL("MPEG-1 Systems / MPEG program stream (VCD)"), @@ -1319,12 +1316,11 @@ const AVOutputFormat ff_mpeg1vcd_muxer = { .write_packet = mpeg_mux_write_packet, .write_trailer = mpeg_mux_end, .deinit = mpeg_mux_deinit, - .priv_class = &vcd_class, + .priv_class = &mpeg_class, }; #endif #if CONFIG_MPEG2VOB_MUXER -MPEGENC_CLASS(vob) const AVOutputFormat ff_mpeg2vob_muxer = { .name = "vob", .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 PS (VOB)"), @@ -1337,13 +1333,12 @@ const AVOutputFormat ff_mpeg2vob_muxer = { .write_packet = mpeg_mux_write_packet, .write_trailer = mpeg_mux_end, .deinit = mpeg_mux_deinit, - .priv_class = &vob_class, + .priv_class = &mpeg_class, }; #endif /* Same as mpeg2vob_mux except that the pack size is 2324 */ #if CONFIG_MPEG2SVCD_MUXER -MPEGENC_CLASS(svcd) const AVOutputFormat ff_mpeg2svcd_muxer = { .name = "svcd", .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 PS (SVCD)"), @@ -1356,13 +1351,12 @@ const AVOutputFormat ff_mpeg2svcd_muxer = { .write_packet = mpeg_mux_write_packet, .write_trailer = mpeg_mux_end, .deinit = mpeg_mux_deinit, - .priv_class = &svcd_class, + .priv_class = &mpeg_class, }; #endif /* Same as mpeg2vob_mux except the 'is_dvd' flag is set to produce NAV pkts */ #if CONFIG_MPEG2DVD_MUXER -MPEGENC_CLASS(dvd) const AVOutputFormat ff_mpeg2dvd_muxer = { .name = "dvd", .long_name = NULL_IF_CONFIG_SMALL("MPEG-2 PS (DVD VOB)"), @@ -1375,6 +1369,6 @@ const AVOutputFormat ff_mpeg2dvd_muxer = { .write_packet = mpeg_mux_write_packet, .write_trailer = mpeg_mux_end, .deinit = mpeg_mux_deinit, - .priv_class = &dvd_class, + .priv_class = &mpeg_class, }; #endif From patchwork Thu Jun 17 02:31: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: 28451 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199899iol; Wed, 16 Jun 2021 19:34:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyK6POA31fbU6zT0eDEeeWU2yHkkoPt9CLblw+i5Js4dMNqLKU+iWbreOe/qDJF6qwImGtW X-Received: by 2002:aa7:c594:: with SMTP id g20mr3310401edq.193.1623897242238; Wed, 16 Jun 2021 19:34:02 -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 o11si1710227edq.384.2021.06.16.19.34.01; Wed, 16 Jun 2021 19:34:02 -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=V3n3F3PB; 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 F1AE9689A1E; Thu, 17 Jun 2021 05:33:21 +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-oln040092073036.outbound.protection.outlook.com [40.92.73.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8CAEB688374 for ; Thu, 17 Jun 2021 05:33:17 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Gyt87wDD35FkGNbvuPDBpxhjsigU4pl7pU+1VvhsJM7b7puSeMf6KD7iTEkYhQs1FOyNwbmXNiMpqdt2j2MQ89Xa+0hclivHF9taUOnJ+Nr65Tge3iSKuSPw+3c0cCN9MuqtI9fZuB2PEhmJ5eVdL0UCTrgBOtRcmvEEKOlYu5Hgvnm0tOa85A7u1U3RXZVKsqLBVYvtFrOMa8CU0q63/8GLzXnYLi2HCPqQUzbjJYNDh6TLM0Q0tNZp7u8uhG+gaTOb7zb1KJvc3ca5kn5lxebheg00TOyDhkNz2sz/r9+3JNSFb8fV9dswx17TfliCKqVoRkap2XRMQ8f6RAVAkQ== 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-SenderADCheck; bh=8NXyY8YRrvjIK3xUZ3/pO7kC4UHutn5emhwO0HLUx1A=; b=gQuDWHMr6+v1MLtJR+YiGjjtqcPlp6zEi9jGCoGDfhyqI1FqK3roqoa/rlarx7nDWDS5LKqaZSwkhTFjf6G+QDL+JFyweO3HV9ZZEU0sqFiGvEeenM7biJOiGBN+CJmqWoJPjkKTx1EnJY/oaaGRTGgZCmdnIwsOg2q/1YnC8Wfi65P3IWFtHMHAsWkivoSDpcWL13jE9KU6S6Kcj1+Lk49bQKzFyf3I4j7erqx4qpnm6qE/0b2BOF49Q9fyzxUj+Mbn+PeptS7IBjcjo1PznRLKBQSIVLDzq9EYG/x7eIOJ2YGqbhXKVC+4dwZf6tAG6h+aTa1RpWpUInFOFFxpFw== 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=8NXyY8YRrvjIK3xUZ3/pO7kC4UHutn5emhwO0HLUx1A=; b=V3n3F3PBcuSNgX+T8v/QNmoY4BlVxki6oxS+fHnYIe5azCnGNnkpgiXqE7lIpjMhtr2FNHs5UzF3U+BPLj+inA+5w1olabSzomBtt5ogtRBjAscWXH9SybB1MldST/RquooeWLzT9emy4r4w8n24cZ1AlMl/YNSTNXnzUjsdB5S3tClJcGunmfUftk2+DtQTPrtne+dtALFOnXPICieE1nYFpK4s1Z7MI+rwugkW0XHFZI7ma37M/cFqbgsdmBL09s8MNN5n5YBh57q4COt4qOY/89yc8jcxQR1cyAaYC0Phs7Ew6dISpxH2zFYqglZdl4dRbJwo2MU6U5dUwJQwVg== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::40) by HE1EUR04HT163.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:16 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:16 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:2F12E2BEECBAD01E93E9A0A120501DED1A62E2F817AF43E37D931D477570C80A; UpperCasedChecksum:461A670463AAD7A346D151502427D4598DDD83A7F4178097DDA44116FE7C64C9; SizeAsReceived:7580; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:15 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:36 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [DopeNlZAIRUUz0ufOG52dO1XhM1mKM1s] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-14-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:15 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 5416d2b5-8c0c-4555-5ea9-08d9313842b2 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCyEHH58u7PRsJIpR3KLXEgRKUFjtmiTiZ2qslcw6l5YLVyfnmLIbAa/YWPLw/NsTxIpK0McHUQYxf4jbERk+wT9t2cpa6mpmAEHvZDA40Y3gP0/LLT7oIEfTbxMTjLjSkzGrBECO8Ao2BrF3pJaoBUrXC0bk2+QK4OSxF0qd5rZuQagx4yZBkZ78tMnCxaVBsjeQEhMpERLkqr7tAAMqEPKPmfI4FLGUAqgWCG7IpGPOJdmTkikhdGC1d2JF8EJr1mNykYA0o54LHBf9Vrtp26132WRHx6+CzzlCN/vLbVggN3eD4hyBcugTciifsg6fX5Bg9BcYce4/vE8w6gTN05zYx8h0XS7AAfElgZdC4hEAA6AeIvPO5KDKZXfHQR+1sxkJg/upKPSY2TqMYkqaF56kQgm/RaI+FbJ+iFBOrgGGnfnI8Z3+Ia4djOEHTrpUjn0h3owYLqMlp4yBiUETHOXRbyO36hLfDg/qbXR51lCI3qrHLrXU1IYCxbUNWNCP9jmZuP6DEYCJ3Mu9qnUQEA0coS1/rYMoTFLHpWJZ0Jcx0yGSlth9TjGQWGdvEYxbr5Z5UJ/AZXiSqCEopgJdfe9nOhmdPha/jjrjCH9PvMdHSNSwxXAUhHzSU5haOKtECH2kTguoh5DxdSi+DUfrlVW1mQhsgzZshcBGMmGBdM3sz5qd013CLaw== X-MS-TrafficTypeDiagnostic: HE1EUR04HT163: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 99h3laL0ODmaTjaf+KpU9G0sTSU4t8ukPEgtL0d9DfsHv8XiL+XoK1KJCQQRFFZniQWLgV5807+CqLrKtp0YSIuit7G+A0QOcN8gUyMB2cQE/dup91zCo+809SGughj3bOFXy817IKH4YK5g0v6ksKUHsz74cIRQxtX8LmrG4qHYAdx54Wb4Vdis2EWzpYGmn0IvgZWN3DmTh5SpJss4z6CzGVzrnUTPodQegD8McVO82AEP9Yht2IIri7W7/d9qg4UI4kEd8Fk1YATI+NbLECF9T9JDNXg0Z8STqgXtcei1GSO80NIPO8CtlJ9l7yYXb69PrzpISxSsNzXuEwoiAFa+z/ONBbN6ROar1e+L1FaDBjq38zq4JZHECB+LbwmrDRcJeg+KTlxDiQ3xSM/Emw== X-MS-Exchange-AntiSpam-MessageData: 4Wudmnv2D2CQmqFGciRm73rOJ2xhpavzY4/4/ASQ+/HNNSc0StWO4+Ovbn52NLh+rEqbDP4BlJ8sHAvFrytR912+BQdTKvL0KaL7jVnmi7ZKd+wZm5K35GGQ8nyH0u4qaTefPfyQ4pyRNDtihK6qJQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5416d2b5-8c0c-4555-5ea9-08d9313842b2 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:15.8410 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT163 Subject: [FFmpeg-devel] [PATCH 15/41] avformat/oggenc: Deduplicate AVClasses 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: XaUMf7U4EDFd The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/oggenc.c | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c index af27957c75..aff0ca6b96 100644 --- a/libavformat/oggenc.c +++ b/libavformat/oggenc.c @@ -91,12 +91,11 @@ static const AVOption options[] = { { NULL }, }; -#define OGG_CLASS(flavor, name)\ -static const AVClass flavor ## _muxer_class = {\ - .class_name = #name " muxer",\ - .item_name = av_default_item_name,\ - .option = options,\ - .version = LIBAVUTIL_VERSION_INT,\ +static const AVClass ogg_muxer_class = { + .class_name = "Ogg (audio/video/Speex/Opus) muxer", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, }; static void ogg_write_page(AVFormatContext *s, OGGPage *page, int extra_flags) @@ -744,7 +743,6 @@ static void ogg_free(AVFormatContext *s) } #if CONFIG_OGG_MUXER -OGG_CLASS(ogg, Ogg) const AVOutputFormat ff_ogg_muxer = { .name = "ogg", .long_name = NULL_IF_CONFIG_SMALL("Ogg"), @@ -775,7 +773,6 @@ const AVOutputFormat ff_ogg_muxer = { #endif #if CONFIG_OGA_MUXER -OGG_CLASS(oga, Ogg audio) const AVOutputFormat ff_oga_muxer = { .name = "oga", .long_name = NULL_IF_CONFIG_SMALL("Ogg Audio"), @@ -789,12 +786,11 @@ const AVOutputFormat ff_oga_muxer = { .write_trailer = ogg_write_trailer, .deinit = ogg_free, .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH, - .priv_class = &oga_muxer_class, + .priv_class = &ogg_muxer_class, }; #endif #if CONFIG_OGV_MUXER -OGG_CLASS(ogv, Ogg video) const AVOutputFormat ff_ogv_muxer = { .name = "ogv", .long_name = NULL_IF_CONFIG_SMALL("Ogg Video"), @@ -811,12 +807,11 @@ const AVOutputFormat ff_ogv_muxer = { .write_trailer = ogg_write_trailer, .deinit = ogg_free, .flags = AVFMT_TS_NEGATIVE | AVFMT_TS_NONSTRICT | AVFMT_ALLOW_FLUSH, - .priv_class = &ogv_muxer_class, + .priv_class = &ogg_muxer_class, }; #endif #if CONFIG_SPX_MUXER -OGG_CLASS(spx, Ogg Speex) const AVOutputFormat ff_spx_muxer = { .name = "spx", .long_name = NULL_IF_CONFIG_SMALL("Ogg Speex"), @@ -830,12 +825,11 @@ const AVOutputFormat ff_spx_muxer = { .write_trailer = ogg_write_trailer, .deinit = ogg_free, .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH, - .priv_class = &spx_muxer_class, + .priv_class = &ogg_muxer_class, }; #endif #if CONFIG_OPUS_MUXER -OGG_CLASS(opus, Ogg Opus) const AVOutputFormat ff_opus_muxer = { .name = "opus", .long_name = NULL_IF_CONFIG_SMALL("Ogg Opus"), @@ -849,6 +843,6 @@ const AVOutputFormat ff_opus_muxer = { .write_trailer = ogg_write_trailer, .deinit = ogg_free, .flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH, - .priv_class = &opus_muxer_class, + .priv_class = &ogg_muxer_class, }; #endif From patchwork Thu Jun 17 02:31:37 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28431 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200053iol; Wed, 16 Jun 2021 19:34:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzeQTL82/QRG1jtcOzUJ5FR66hohZvh5o8eWJTBIjvoGvdK7bkfcL6VLXHEEa7DK1wivWM3 X-Received: by 2002:a17:907:38c:: with SMTP id ss12mr2657384ejb.401.1623897254467; Wed, 16 Jun 2021 19:34:14 -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 jg15si4125103ejc.143.2021.06.16.19.34.14; Wed, 16 Jun 2021 19:34:14 -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=r+Zbt+sa; 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 BD13B680207; Thu, 17 Jun 2021 05:33:23 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074040.outbound.protection.outlook.com [40.92.74.40]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2490668924E for ; Thu, 17 Jun 2021 05:33:17 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=m+Ta6+5hsyFdkg+shzFAy6zsZEGxmm8IvXXFsMP5u2AASlNrnkI/Rcwr4qVyTrd/grBGaaLiQ8j1BYfYJueTYox45dhIab3oaGPM/e69sie0p2oOpdDtWysHksMVbOuXZrwFrOFSh6ve1gsiTVeiGrhLmF+RqSRTK1+hQ2+P/tGpu3TeZ2HMahSulkQoa+SScx/xQdga3al0I6r7wpeYRU5JhJZNXgWn286xyXz1aFtuOtXC9oyOF4Wwvr1pgdydbRq8qNwUlh8byo/mI8hVgkaIo1wMj1Um6OCd9Z0Jhf274c59oLjFZm4foJTZ4QP8pCb+W7IbAXZlj9thUhMyAw== 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-SenderADCheck; bh=WsjU67+Qpp+jmSNhQfwKPl7+zGhKY+NA1Xp6htqyQfM=; b=MngZRkF3lwgRbB2Zj++vgLyc8kydRBs9jCbHL/JZUpvXrMvYGMpT++a0lvXH6D6DixuHCJWoDWY1V3GsKuQTIuumEoG7IZPYmQZSE0lMqpoAsR1sU2wbzWmEv85OE77d+el6J8xmyI3oEbB9AL4npO+pfXX27DqVkVariRfiMMmvxQoKOzh8lpG8ZU+m7z4Kg/1ta3f4DtdOemhJzSZv8Uoiil0rnqPJ7AjdofrjX3XIfUYO/okTURq0BqH0LlhZCZOHqxuqqDQGx7h6qNDZTIx10c89UQuIs8xEulQVkYYpOqKUnCFYzyLs/oUbcZoopjCKfb7uytqEUkaOcwh+qQ== 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=WsjU67+Qpp+jmSNhQfwKPl7+zGhKY+NA1Xp6htqyQfM=; b=r+Zbt+sa2G2XzAOeFBCC82YzWi0AdnhSbd+uZ39INUgA7IhIVPpIUwfdIkpWSmVA6zyn9lVG4e86DnXXY0A85Q5W3nUi3s6br6yibuM1LDm3yIDFOYEYHOHbgaNgZHHiGfCqBoTMwqudoQ8ZmNBxdxkq7F0arFadql+Gi8NhOq3T6FThL76tmG5JovGC7p04MIZgt+uSKVkQvmGOcpsyMJOtTyUscFL1/ph/6GYVu4DEDnLNWwFFNiseelotFw4xNF5b0jiVdRuYvekVK/pZU8xMNvygVlOtYES0HXhT8M0+Kp0wZ2N5RNgei3ZSy4OAB0MT8Pykb8S7nmFRe9DChA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT116.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::356) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:16 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:16 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:AD1C5A8945CF8C408DE028F33CA22D52CF4E3820E437E1EAC929FBB755DF107A; UpperCasedChecksum:8EDFDF5880238290308268AA923CF7620576E8BAA396BE2578C8DB06F7EBBA73; SizeAsReceived:7596; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:16 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:37 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [z2Eih2bGFjdWWIp5BX0QUGsbQ4Qcq4ZS] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-15-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:15 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: dce45b68-4dd5-40af-75bf-08d931384300 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOa2cpHb4x1SdkQVBmXuOoOY1E5dYcJgdkbgZLU2YR3SOQUDd/EahhpizUy+e/SFfzrW0EGjQMEpE5IbwcYn4r3TrTtbmia3HTjcyFUKiTZfqb6JdoF+9szHlBDZQUSHkeZwyaxVIYT1k4chwJjM143AAQ+1MJslAL6kHMllSUPLtI2+FpsD3bpFFtNhu0C5miTZYKJyhpHLv/O6a6vmILAnbhkyR2rFJ9TuuU8fMTLJjJq6bLoDLVUtqAkBMT/KH2S+ZWz0N0AhgbZuvAwtL0zCy734Sz35kBqNI09Ld9OChspqC0h2FHE0xZKhOKzvEORyGMjk7adyt+GBhWAHb8navwx+3XjK0pTyrY0NMzbJgtPLp/3KfbBG5ABRWDJalt0sZzQqWwPceqZbCK85waUNp8g6gTwicG2lN8+3X8u7llzMybRWicKc70GnoGxQPxOfTH1vO0bjUDEAGix48BdLbBxj2cS9O3dJfeLHGIqC2z7GvMfnQbdBC/xiYDjWX//lgXvxVbDcOgJlvlXTqNuMRBSntk4DgDgGRcvhD4dFP2oyxQHiYyu6ljjDm1vUe7kCpMzB9qmNVTZH/vZ7pU6Nqqcl5J6cC8J497aPqdCLdZKKxX8VC0TJ4K3vcUWfD4Vv7ULvHJD7PN9bz8ZUoAmiH2r7r3+2bTHiMn3xC4oJlOgVor5ZTIC/OQmEY0YZe+dN6lUjwaZPs= X-MS-TrafficTypeDiagnostic: HE1EUR04HT116: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Aq/Ud4aPybJ6qMgp5FzYv41eOl7gjdf+aZ1+3fSb1LYvON1MzuyGka45vUOj0u2DWngHgTfCTGApEb3wDYXkvN6amMJ7po7BwuifNyOT5hHoU32/BHjWnsb32KvdPxarbNBp03qNXBb5wu5lSeNkAfVwlXj9N1UQ1rJOqK4T4n45A3swBUl/DN9IqnYb07Gp0WA6OFnrHSL8MI/SfWv57oZKbzyQr9PAC8G9BMgs33uaMVOEGxIzTRxNjR2NsTgtYYUY10suF3bE92TcuAYZhOYlE1Wq/mXBwW/Sq5WBWniU/95D7LXrb6uZVImOf7r1aNR/WFBbdb5GIDYJOvFdoBF3Hi013br7lJOJyOXGlpTynz7IMNY08ry6akNyd/AbJQZiMpbz6JcAWiz1l5RGHA== X-MS-Exchange-AntiSpam-MessageData: SYrLx/ez2D6UbBiZa8aN0lytiTjqNy4W2FJVoEiFhPHJoA6WuLps8uIqm8QFhkLsuhtphNzAFm2SgvbAzoLk+6P/zvs0H8cHqCxVTs7uifMJ+ZMf4JJ8ApEMyUlcXvu0IkvYSkGa/CXW08arfnAMyA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dce45b68-4dd5-40af-75bf-08d931384300 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:16.4067 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT116 Subject: [FFmpeg-devel] [PATCH 16/41] avformat/pcmdec: Deduplicate AVClasses 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: 8pKA9jFvhVbe The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/pcmdec.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libavformat/pcmdec.c b/libavformat/pcmdec.c index 01447c2b7e..63539a47c0 100644 --- a/libavformat/pcmdec.c +++ b/libavformat/pcmdec.c @@ -99,15 +99,15 @@ static const AVOption pcm_options[] = { { "channels", "", offsetof(PCMAudioDemuxerContext, channels), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_DECODING_PARAM }, { NULL }, }; +static const AVClass pcm_demuxer_class = { + .class_name = "pcm demuxer", + .item_name = av_default_item_name, + .option = pcm_options, + .version = LIBAVUTIL_VERSION_INT, +}; #define PCMDEF_0(name_, long_name_, ext, codec, ...) #define PCMDEF_1(name_, long_name_, ext, codec, ...) \ -static const AVClass name_ ## _demuxer_class = { \ - .class_name = #name_ " demuxer", \ - .item_name = av_default_item_name, \ - .option = pcm_options, \ - .version = LIBAVUTIL_VERSION_INT, \ -}; \ const AVInputFormat ff_pcm_ ## name_ ## _demuxer = { \ .name = #name_, \ .long_name = NULL_IF_CONFIG_SMALL(long_name_), \ @@ -118,7 +118,7 @@ const AVInputFormat ff_pcm_ ## name_ ## _demuxer = { \ .flags = AVFMT_GENERIC_INDEX, \ .extensions = ext, \ .raw_codec_id = codec, \ - .priv_class = &name_ ## _demuxer_class, \ + .priv_class = &pcm_demuxer_class, \ __VA_ARGS__ \ }; #define PCMDEF_2(name, long_name, ext, codec, enabled, ...) \ From patchwork Thu Jun 17 02:31:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28457 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200552iol; Wed, 16 Jun 2021 19:34:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwnxzPAd4xlGAoxlePpCQx9JB3DB88ug2CXmOzn0UgPt5Zo6sztHR752pa1LUB6M/AOtss0 X-Received: by 2002:a17:906:14c9:: with SMTP id y9mr2713904ejc.192.1623897296389; Wed, 16 Jun 2021 19:34:56 -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 eb21si1944772ejc.42.2021.06.16.19.34.56; Wed, 16 Jun 2021 19:34:56 -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=RoTb+669; 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 E55AF689B62; Thu, 17 Jun 2021 05:33:27 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074043.outbound.protection.outlook.com [40.92.74.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1C4B26891E2 for ; Thu, 17 Jun 2021 05:33:18 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MeVE0RQasThC2M5yz7oKz2iadK5p+Rzzxdr0JbRJSlQJcTHendCgC0f6XFNcgNZ/ymEldgRg3PJtbqBHUnRzhXcC6xgYyku3J/cnYLPQtSq2r5nbHq/P7ZHdiY1AIFqoUaaoeEXtKuy6LeArrPa6Gn/Zxd6bUuOuQnY01TKb4o9PNCgAfc9o6CScAr0/Z4uyGWkYcGoQaaSxDaxTQLzhIDZukWPuDnt704c0qkJHm3/g8EpuNd2XUU+hXFxAzy5e2rCuwJIgr+xbj1t+StcnFVCA550yjz4aYDrRdGfNo41Hiv2Sc23cmYDvs8FUPrYIuKY3GqjlCWX7AQofG0N49g== 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-SenderADCheck; bh=WaKTjVWSTjEG4EASbZficsxH0C2rQVAFOKzvr88LwGA=; b=KBq+DpBXx1HV6cjfI+FGp1fBhmZ916bwRqNW1FKfaNzYHeXpwv9UTTHHkKgiVMM/vOJfIe0JwmSRBZ90n74gf2OBcQx2jUcvjZQtLfA8k/GXTUZoEIllEif1KqKY12yRCNLTgxfevz7yQtqDW2mVa58nrHLJXGO0DtL8MdePDFCw+QoiFrq4y++Ib4x2h2IsQBi0abT+cpAJc6D5OPp8IkoOiwGrsJ5Vx2nIe2PpfAdclMidAIFhvmdN4WOIcvLmwATVBmpj4ylIJBRCfqW4JV4BhOaMVcBg1Ye78PHEuEqti2kWeILWtVkd88HbIIQaP092cluY1IL4emvcA/10Fg== 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=WaKTjVWSTjEG4EASbZficsxH0C2rQVAFOKzvr88LwGA=; b=RoTb+6697uztRZBmTVr+z0pEaITORoZicHQSYi4EmHM1jv7sp7VfyaqfoWqEa+SFmQkae64NOgt4bzOYITxpOR98d5Z5V4rxzQOCOeWWuiblKJbw8lT19j++NCl5qRQlNLGGiuIp81dGvYmkccpu8O9YlAtpajTeTtua1PEwJAF7x9KieWw4P3ZxvfTOmEtdK/1HQI02lbpyXXLGzEi6ii8mDQlGNXfiDl2VdHYsh+QoBzqLQ6vzlspzfCZhFTF3+xcGYx8sUxymLjE2Lyu8DqqvIH4hhxjxMxV5QvxnYpX4Io1FNMwnkAsym90PcZYUgllqRJjpOuQqS4sZiDQzfA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::52) by HE1EUR04HT030.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::312) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:17 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:17 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:BEFF9FF46968E0ED9FD823602FFD1B7B8F6217184C3AD9E74B62FD8D945C2B01; UpperCasedChecksum:22125D4A895E8B5AA1AA8029C4198EF2AD144C39DAA525A73E1F516DFDEC83E3; SizeAsReceived:7608; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:17 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:38 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [38YACM1j4hSwU5w4dZpyS1x0OgpAPhNd] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-16-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:16 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 42084195-b779-41a9-1b73-08d93138435e X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOL1SPfpP1b0aJAtD2LnTfItBIBAp+IbgEuUaY+nKiRSO2RzQ36cT2x9jr7svQEGuVX6mg6HVBlthzeJf9W+NOYM2Y3dw3hik5D5L4BZj1OPtvZ7UrftXeG9IaXAy3MNdo1Johv6F7rl2QPCimeWSf06eu462TCVoZ8DNU0x+wKG6xyI+D59TXyh417EAxOMLszFXklaF1NP7JPPjrHBPAjJyJHb6UGbxyV2cYHEjp7l+fWBKCCUJG5KyxFDn4LMoDn1Sxu/KlD48l+2xSihEZY40Cqe3ZBGWsevMuxFb2aiH0S5OOLWToTo/Sj+SPLSwvyeqcysXeyKf/UVIkDGQebJm8NWnqjYCQOCavIoyAMzQnjTdRavJq61QUCwqMWeEBF7EvkAlGJIWyZhESF25McimjXB/XwWhZQI0qT1Y40jvvDkgZ24HnVyd2c3HvFPACk5SK9dVbTEITwfZN1Q58bTLD3FyMWHbC3Iz8tS0lCux/1t/nzOQ5Tzx7yqzgl6ATdw7YgAI6x2j1D3eGCsSra3F9LsRWDnyGZKv6mQTO+VhUIXyBe4LKL2Opc7cWVSmnLf9c4ULwJP9cdfe5ZDI+u9Svl/E59e+9lUssOhEm1n2nLoDd9Bh9Z02pWntOy8Rgva4jaEtN7zNgDQXGggKnC6IWNkL8G2rzwn8VRKrJ6J+x1caYj1AltVAJFioM8n/9+nc6GlorScw= X-MS-TrafficTypeDiagnostic: HE1EUR04HT030: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: g5+e0botY9W5Vt2x7nwO423AMijH4mw5dyxZZoUFGpzWSZVYRsKesAm6HmVbP74b6BGVRj7FpOpRq3qDnfSD+gcBZmXkGtdDtcY/BZa6ElP7vg1jVeY5SqAQmT2NFs1kU7wrgnB6jM6hyM0KE37cjmRz1BPSp5qbEieS9dirbMSBWAUMXXfvMPWN9R0Fd8OP3iWR2zONGCIaLRJY1p6Qkk3+/gUcupkkUF3lFkj6mgFsOrzuOW9tz4IlKKXkpFYrqvxE5VMzD/m7KMTLaKXVoEOGee0MG8u4FacIjlHoiPFCaAv5t2yhZznaht0lHvHDoSaxldwL2WuPYw8/avuvuQwGJMvzZqpi+nviHU0Ecq6wTwvKtHVjfn9cK0EBfvhRyIEKxB+RXBnanVHPkEa3/g== X-MS-Exchange-AntiSpam-MessageData: p5yhUrCHQ641Hv9Ayb7rxARJt9OopKF1tmfJGm+GwtaxYDmlqoXSfSTWCy0zWOzSdvXgpVX73MetIbK2D7uL/M/R4zHJlG7CRC1KNSOqvbjOrMK9CK6wfnddpFHoaEf8VrGa4li0hfRcQ9E7fmgXbA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 42084195-b779-41a9-1b73-08d93138435e X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:17.1084 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT030 Subject: [FFmpeg-devel] [PATCH 17/41] avformat/rawdec: Deduplicate AVClasses based upon ff_raw_options 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: tZLOgCDMol9n The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/ac3dec.c | 6 ++---- libavformat/acm.c | 3 +-- libavformat/dtsdec.c | 4 ++-- libavformat/flacdec.c | 3 +-- libavformat/g722.c | 4 ++-- libavformat/ipudec.c | 9 +-------- libavformat/loasdec.c | 3 +-- libavformat/mlpdec.c | 6 ++---- libavformat/rawdec.c | 13 +++++++++---- libavformat/rawdec.h | 21 ++------------------- libavformat/sbcdec.c | 3 +-- libavformat/shortendec.c | 3 +-- libavformat/takdec.c | 3 +-- libavformat/wsddec.c | 3 +-- 14 files changed, 27 insertions(+), 57 deletions(-) diff --git a/libavformat/ac3dec.c b/libavformat/ac3dec.c index 246c483671..ad9b65a9be 100644 --- a/libavformat/ac3dec.c +++ b/libavformat/ac3dec.c @@ -102,7 +102,6 @@ static int ac3_probe(const AVProbeData *p) return ac3_eac3_probe(p, AV_CODEC_ID_AC3); } -FF_RAW_DEMUXER_CLASS(ac3) const AVInputFormat ff_ac3_demuxer = { .name = "ac3", .long_name = NULL_IF_CONFIG_SMALL("raw AC-3"), @@ -113,7 +112,7 @@ const AVInputFormat ff_ac3_demuxer = { .extensions = "ac3", .raw_codec_id = AV_CODEC_ID_AC3, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ac3_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; #endif @@ -123,7 +122,6 @@ static int eac3_probe(const AVProbeData *p) return ac3_eac3_probe(p, AV_CODEC_ID_EAC3); } -FF_RAW_DEMUXER_CLASS(eac3) const AVInputFormat ff_eac3_demuxer = { .name = "eac3", .long_name = NULL_IF_CONFIG_SMALL("raw E-AC-3"), @@ -134,6 +132,6 @@ const AVInputFormat ff_eac3_demuxer = { .extensions = "eac3", .raw_codec_id = AV_CODEC_ID_EAC3, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &eac3_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/acm.c b/libavformat/acm.c index bc87b3fab9..ccd043ee32 100644 --- a/libavformat/acm.c +++ b/libavformat/acm.c @@ -60,7 +60,6 @@ static int acm_read_header(AVFormatContext *s) return 0; } -FF_RAW_DEMUXER_CLASS(acm) const AVInputFormat ff_acm_demuxer = { .name = "acm", .long_name = NULL_IF_CONFIG_SMALL("Interplay ACM"), @@ -71,5 +70,5 @@ const AVInputFormat ff_acm_demuxer = { .extensions = "acm", .raw_codec_id = AV_CODEC_ID_INTERPLAY_ACM, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &acm_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/dtsdec.c b/libavformat/dtsdec.c index 7f8f73fe05..ceedb2eb49 100644 --- a/libavformat/dtsdec.c +++ b/libavformat/dtsdec.c @@ -132,7 +132,6 @@ static int dts_probe(const AVProbeData *p) return 0; } -FF_RAW_DEMUXER_CLASS(dts) const AVInputFormat ff_dts_demuxer = { .name = "dts", .long_name = NULL_IF_CONFIG_SMALL("raw DTS"), @@ -143,4 +142,5 @@ const AVInputFormat ff_dts_demuxer = { .extensions = "dts", .raw_codec_id = AV_CODEC_ID_DTS, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &dts_demuxer_class,}; + .priv_class = &ff_raw_demuxer_class, +}; diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c index c841fdba01..bfa464c508 100644 --- a/libavformat/flacdec.c +++ b/libavformat/flacdec.c @@ -328,7 +328,6 @@ static int flac_seek(AVFormatContext *s, int stream_index, int64_t timestamp, in return -1; } -FF_RAW_DEMUXER_CLASS(flac) const AVInputFormat ff_flac_demuxer = { .name = "flac", .long_name = NULL_IF_CONFIG_SMALL("raw FLAC"), @@ -341,5 +340,5 @@ const AVInputFormat ff_flac_demuxer = { .extensions = "flac", .raw_codec_id = AV_CODEC_ID_FLAC, .priv_data_size = sizeof(FLACDecContext), - .priv_class = &flac_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/g722.c b/libavformat/g722.c index 360ced7172..3bfe05ea6f 100644 --- a/libavformat/g722.c +++ b/libavformat/g722.c @@ -46,7 +46,6 @@ static int g722_read_header(AVFormatContext *s) return 0; } -FF_RAW_DEMUXER_CLASS(g722) const AVInputFormat ff_g722_demuxer = { .name = "g722", .long_name = NULL_IF_CONFIG_SMALL("raw G.722"), @@ -56,4 +55,5 @@ const AVInputFormat ff_g722_demuxer = { .extensions = "g722,722", .raw_codec_id = AV_CODEC_ID_ADPCM_G722, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &g722_demuxer_class,}; + .priv_class = &ff_raw_demuxer_class, +}; diff --git a/libavformat/ipudec.c b/libavformat/ipudec.c index b76371b58c..27b6b59356 100644 --- a/libavformat/ipudec.c +++ b/libavformat/ipudec.c @@ -68,13 +68,6 @@ static int ipu_read_header(AVFormatContext *s) return 0; } -static const AVClass ipu_demuxer_class = { - .class_name = "ipu demuxer", - .item_name = av_default_item_name, - .option = ff_raw_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVInputFormat ff_ipu_demuxer = { .name = "ipu", .long_name = NULL_IF_CONFIG_SMALL("raw IPU Video"), @@ -85,5 +78,5 @@ const AVInputFormat ff_ipu_demuxer = { .flags = AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_IPU, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &ipu_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/loasdec.c b/libavformat/loasdec.c index 97fabefcd7..3c84d9f37e 100644 --- a/libavformat/loasdec.c +++ b/libavformat/loasdec.c @@ -83,7 +83,6 @@ static int loas_read_header(AVFormatContext *s) return 0; } -FF_RAW_DEMUXER_CLASS(loas) const AVInputFormat ff_loas_demuxer = { .name = "loas", .long_name = NULL_IF_CONFIG_SMALL("LOAS AudioSyncStream"), @@ -93,5 +92,5 @@ const AVInputFormat ff_loas_demuxer = { .flags= AVFMT_GENERIC_INDEX, .raw_codec_id = AV_CODEC_ID_AAC_LATM, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &loas_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/mlpdec.c b/libavformat/mlpdec.c index 6f2ba5d874..8f0aabb510 100644 --- a/libavformat/mlpdec.c +++ b/libavformat/mlpdec.c @@ -56,7 +56,6 @@ static int mlp_probe(const AVProbeData *p) return mlp_thd_probe(p, 0xf8726fbb); } -FF_RAW_DEMUXER_CLASS(mlp) const AVInputFormat ff_mlp_demuxer = { .name = "mlp", .long_name = NULL_IF_CONFIG_SMALL("raw MLP"), @@ -67,7 +66,7 @@ const AVInputFormat ff_mlp_demuxer = { .extensions = "mlp", .raw_codec_id = AV_CODEC_ID_MLP, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &mlp_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; #endif @@ -77,7 +76,6 @@ static int thd_probe(const AVProbeData *p) return mlp_thd_probe(p, 0xf8726fba); } -FF_RAW_DEMUXER_CLASS(truehd) const AVInputFormat ff_truehd_demuxer = { .name = "truehd", .long_name = NULL_IF_CONFIG_SMALL("raw TrueHD"), @@ -88,7 +86,7 @@ const AVInputFormat ff_truehd_demuxer = { .extensions = "thd", .raw_codec_id = AV_CODEC_ID_TRUEHD, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &truehd_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c index a1f593c66a..aa6eba4f39 100644 --- a/libavformat/rawdec.c +++ b/libavformat/rawdec.c @@ -125,14 +125,19 @@ const AVOption ff_rawvideo_options[] = { }; #undef OFFSET #define OFFSET(x) offsetof(FFRawDemuxerContext, x) -const AVOption ff_raw_options[] = { +static const AVOption raw_options[] = { { "raw_packet_size", "", OFFSET(raw_packet_size), AV_OPT_TYPE_INT, {.i64 = RAW_PACKET_SIZE }, 1, INT_MAX, DEC}, { NULL }, }; -#if CONFIG_DATA_DEMUXER -FF_RAW_DEMUXER_CLASS(raw_data) +const AVClass ff_raw_demuxer_class = { + .class_name = "generic raw demuxer", + .item_name = av_default_item_name, + .option = raw_options, + .version = LIBAVUTIL_VERSION_INT, +}; +#if CONFIG_DATA_DEMUXER const AVInputFormat ff_data_demuxer = { .name = "data", .long_name = NULL_IF_CONFIG_SMALL("raw data"), @@ -141,7 +146,7 @@ const AVInputFormat ff_data_demuxer = { .raw_codec_id = AV_CODEC_ID_NONE, .flags = AVFMT_NOTIMESTAMPS, .priv_data_size = sizeof(FFRawDemuxerContext),\ - .priv_class = &raw_data_demuxer_class,\ + .priv_class = &ff_raw_demuxer_class, }; #endif diff --git a/libavformat/rawdec.h b/libavformat/rawdec.h index e64ad8010c..3c05795762 100644 --- a/libavformat/rawdec.h +++ b/libavformat/rawdec.h @@ -40,7 +40,7 @@ typedef struct FFRawDemuxerContext { } FFRawDemuxerContext; extern const AVOption ff_rawvideo_options[]; -extern const AVOption ff_raw_options[]; +extern const AVClass ff_raw_demuxer_class; int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt); @@ -52,14 +52,6 @@ int ff_raw_subtitle_read_header(AVFormatContext *s); int ff_raw_data_read_header(AVFormatContext *s); -#define FF_RAW_DEMUXER_CLASS(name)\ -static const AVClass name ## _demuxer_class = {\ - .class_name = #name " demuxer",\ - .item_name = av_default_item_name,\ - .option = ff_raw_options,\ - .version = LIBAVUTIL_VERSION_INT,\ -}; - #define FF_RAWVIDEO_DEMUXER_CLASS(name)\ static const AVClass name ## _demuxer_class = {\ .class_name = #name " demuxer",\ @@ -86,16 +78,7 @@ const AVInputFormat ff_ ## shortname ## _demuxer = {\ #define FF_DEF_RAWVIDEO_DEMUXER(shortname, longname, probe, ext, id)\ FF_DEF_RAWVIDEO_DEMUXER2(shortname, longname, probe, ext, id, AVFMT_GENERIC_INDEX) -#define FF_RAWSUB_DEMUXER_CLASS(name)\ -static const AVClass name ## _demuxer_class = {\ - .class_name = #name " demuxer",\ - .item_name = av_default_item_name,\ - .option = ff_raw_options,\ - .version = LIBAVUTIL_VERSION_INT,\ -}; - #define FF_DEF_RAWSUB_DEMUXER(shortname, longname, probe, ext, id, flag)\ -FF_RAWSUB_DEMUXER_CLASS(shortname)\ const AVInputFormat ff_ ## shortname ## _demuxer = {\ .name = #shortname,\ .long_name = NULL_IF_CONFIG_SMALL(longname),\ @@ -106,7 +89,7 @@ const AVInputFormat ff_ ## shortname ## _demuxer = {\ .flags = flag,\ .raw_codec_id = id,\ .priv_data_size = sizeof(FFRawDemuxerContext),\ - .priv_class = &shortname ## _demuxer_class,\ + .priv_class = &ff_raw_demuxer_class,\ }; #endif /* AVFORMAT_RAWDEC_H */ diff --git a/libavformat/sbcdec.c b/libavformat/sbcdec.c index 4de29b37c5..c917743fa1 100644 --- a/libavformat/sbcdec.c +++ b/libavformat/sbcdec.c @@ -22,7 +22,6 @@ #include "avformat.h" #include "rawdec.h" -FF_RAW_DEMUXER_CLASS(sbc) const AVInputFormat ff_sbc_demuxer = { .name = "sbc", .long_name = NULL_IF_CONFIG_SMALL("raw SBC (low-complexity subband codec)"), @@ -32,5 +31,5 @@ const AVInputFormat ff_sbc_demuxer = { .read_packet = ff_raw_read_partial_packet, .flags = AVFMT_GENERIC_INDEX, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &sbc_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/shortendec.c b/libavformat/shortendec.c index 9209de4388..cd14b55d70 100644 --- a/libavformat/shortendec.c +++ b/libavformat/shortendec.c @@ -65,7 +65,6 @@ static int shn_probe(const AVProbeData *p) return AVPROBE_SCORE_EXTENSION + 1; } -FF_RAW_DEMUXER_CLASS(shorten) const AVInputFormat ff_shorten_demuxer = { .name = "shn", .long_name = NULL_IF_CONFIG_SMALL("raw Shorten"), @@ -76,5 +75,5 @@ const AVInputFormat ff_shorten_demuxer = { .extensions = "shn", .raw_codec_id = AV_CODEC_ID_SHORTEN, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &shorten_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/takdec.c b/libavformat/takdec.c index cf400ec04b..e3f611883b 100644 --- a/libavformat/takdec.c +++ b/libavformat/takdec.c @@ -212,7 +212,6 @@ static int raw_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -FF_RAW_DEMUXER_CLASS(tak) const AVInputFormat ff_tak_demuxer = { .name = "tak", .long_name = NULL_IF_CONFIG_SMALL("raw TAK"), @@ -223,5 +222,5 @@ const AVInputFormat ff_tak_demuxer = { .flags = AVFMT_GENERIC_INDEX, .extensions = "tak", .raw_codec_id = AV_CODEC_ID_TAK, - .priv_class = &tak_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; diff --git a/libavformat/wsddec.c b/libavformat/wsddec.c index 169a96c71f..a2fcdae2be 100644 --- a/libavformat/wsddec.c +++ b/libavformat/wsddec.c @@ -161,7 +161,6 @@ static int wsd_read_header(AVFormatContext *s) return avio_seek(pb, data_offset, SEEK_SET); } -FF_RAW_DEMUXER_CLASS(wsd) const AVInputFormat ff_wsd_demuxer = { .name = "wsd", .long_name = NULL_IF_CONFIG_SMALL("Wideband Single-bit Data (WSD)"), @@ -172,5 +171,5 @@ const AVInputFormat ff_wsd_demuxer = { .flags = AVFMT_GENERIC_INDEX | AVFMT_NO_BYTE_SEEK, .raw_codec_id = AV_CODEC_ID_DSD_MSBF, .priv_data_size = sizeof(FFRawDemuxerContext), - .priv_class = &wsd_demuxer_class, + .priv_class = &ff_raw_demuxer_class, }; From patchwork Thu Jun 17 02:31:39 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28455 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200187iol; Wed, 16 Jun 2021 19:34:25 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw7czu+YPmmdYBhwAVp9RY9A0lv4vXLApgJ3QYG/L+e94u2yxw7CDciYhHHSn/+sYwyfg0Z X-Received: by 2002:a05:6402:28a:: with SMTP id l10mr3329719edv.365.1623897265475; Wed, 16 Jun 2021 19:34:25 -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 r10si3745962edy.600.2021.06.16.19.34.25; Wed, 16 Jun 2021 19:34:25 -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=PS+fnsjC; 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 DD71D689721; Thu, 17 Jun 2021 05:33:24 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074040.outbound.protection.outlook.com [40.92.74.40]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 607606883DD for ; Thu, 17 Jun 2021 05:33:18 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DiRlWFM0PqN4k5QmPp4bO4RwB+lTzx7K35vYH2x4zMjQB4YDHdYJIQ1MSgykmU9dIHWUDkFVcJiZn3DQaVp8fjXDgY2KRY8QcxuQhC45qfRHs0vZFdiWiDrHfaYHCpC0uwux3hO3JXx1eXPW5Uqov5nN8NZh+KJVk8+Vh+DK++w1Skj0dyMocvboyrDWk4rwUOgQYK6j3H8DGqMk3gdrZvrWPMpPYoGdHo8mwsTO/9E8uSAGNRNjLhQ7a0GHF3+P7SOV8xfEnIHwoWORZxc2aA0SvatbfPSpS9WmnesoeYYMOPjVpEoE3KORqSanGtkPB9TCGEreNhYodRwXtTQ2xw== 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-SenderADCheck; bh=HDFKo4dHLNd6suWeiSBj9jburNqiMHhp3xN8UI0UT80=; b=baf/pnnOQNf4NlYjZmfrjiymOK6F/Nk8op5hYtfuzqV6Pvb7Bcg7B4XX4otMnr5NTDZn75rHxczxG1ZCcGRjXjtQkxHIaGL/lAbgL4cS5iXvo7PDWyTux3rUw7QJL94B1Xw+ftptTFMBUHugW8AkN7e0yy0U69JY2UTOlv1fSJp+ikcCFh6W7fgVL8MwPMRF00SW+BFkDld8GTJ8vkMglFH3C6ea8cIfOG6Do6JKkiLfbtH5R1EszzDsrheRvp1PyzRTHkxoFjRO0mMpBMj5RRw60oZcSetINHCnbAvfZSVIbVZOIoErez0ZQSQJnTda29Jt0mXULiULFIpwKSZWYw== 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=HDFKo4dHLNd6suWeiSBj9jburNqiMHhp3xN8UI0UT80=; b=PS+fnsjCqQ4+AN62P4thDVPCYAck+zzyRxRYibbLVniciEHH6xbL1Y6yuuCZhowclHFRZE6sd5awJaMlQ/mMzlzzzoQdpnR6TRSFFjo8rxwL2IfKB518wKBfGNKDahB/45Pbu3f03HHJMYUf08kN/wKS2hZ8jkkhHrC4S3WBCYWNMR7eZ2FXvy6UPE1nMGwiRe1e/PDjUJza9JT0YK9a5IlCDuxlpXnGM/GR8u3L8kWY7oKvdr9oQu5JDEMVnHTyK7zFOwr1LQiu0mz4XTispVNtr+HetJyRVbOuqcky+m2sI1h0wJNpQGvmknCySNDZ0qWU1l5ESbUWe82skOxKrg== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT116.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::356) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:17 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:17 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:74261ABA1722F970449EEE0318268CE5A8DC3D53D57B1700708A4CEB40BF0B8D; UpperCasedChecksum:25AEF949A267BA3077C8482B8E6C590534D4F94D9B123247E3975225F67067E0; SizeAsReceived:7602; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:17 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:39 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [7llRWhzMapnikO7aJ+jM/LUTgHJvhq41] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-17-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:17 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b411c5f6-dd61-4008-7b90-08d9313843c0 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOdgxUefZOMO/5/yH5cak6Ik7WoMCm0BmMjgWJHBF3OEgg06YMSvFLyVSQC59Tpp8CQtUC5qStdacGUarlzabLXQ1Ol2WTs/20NdiItPDbWoWr5/aIjnhgoVoEdZuQzWwBS85rrlCGBtVNhdgiTziRvOUbN7I3P6Vq3yHpgO6iM/z7g7mc8R/U81b3ykEGQ2g1sAKEfWXhqCeYUnHamp6MHN6seJmTBBjf4AOvUBO2iGSMRgf+iGwGRzcE0W+QRXQI2y5F36zWaKPhcRG71kDx2Ha2G22wp7uABEwbUTAqkaTktEufMt6AHFZV/zOHB3MJ/Y/gtWoL/2JXhWGadIXIr5zSW4EENL3AFeaIqmg3hC9sBptuOQjY2g2G2gZRzBuB8tdLB5p/hi3DOHYn1Mmn+e/JaWs7IzWkEuCDCZFj0X2LZ5iJadC0ZUO7+6Y9pOqHq4wbmSLyHrySnYetPHEDBZ2b5gyDh50tt3pajJaCX76dVGZlMoy5N7E7LFMIrrXYEP/BucL8VRs9K9U1Oi+aDj7i67GilCY+Di28yrv0V6ewZDhE3ppZaW0HE6mK/hiYu+3XZq86vdP2kfZsI8bsoPFOjQrjK6fFOTeOZDX1uDDnyawerJa+1cFobz/ZhUjCHsHIRp4+VgqjjWBtEk1Zs4CStSGrmlV/zxH6uhbQ7jezbj5L8ESxl07SBAaQ22GgUrWNQOE8YbU= X-MS-TrafficTypeDiagnostic: HE1EUR04HT116: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 746Cs7uoCUJicDU6wjwubsahCuq37Nfs3nyt+WrnC3JCNrDTdl1j97l352NNto1ZuM87Dno4OFhejVrpa69od7e4F+nxGxeeTpSnXF/8dlZoZLfeebngMIkqkjRkTTn9dZqPvIGxMDKDilbeXEpSGMpnnvXlGCAoeS+hhhq1qGRgA/+byKSygcWYlMCHD3+51nOBW7ITxcpRpka1v0M7VUPs1zIOZp55Q9hZiOa28neOlYTV4eU4PlWYGR1j4AKJimu3+0e4LBiZb1tDwi6QxROgfh/+VptJjfTlZ11T8gfQO94+nH6rF8t86STPWLR0s6T3bdc+s7d1Dc37h/ddiaM3rwT0rS37EF8Agf6iJTGiDpMhwL4O6Kc3lUalZlE/xmx2y6M44iKdKrZ+uDD5eg== X-MS-Exchange-AntiSpam-MessageData: lhEEXcArdfgjiO5frxJJUkN8sWzW019YkKeg4Gzy1FijZ28QgH1kcXWuAgNxOAu7UCBNKNsPyNGng/eFdjpw5OT786+ruT8+rqjEQxaeVi3Za+FBnOMYctrblxukd9A39vGcdSGGzxkEqqakB1MuYg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b411c5f6-dd61-4008-7b90-08d9313843c0 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:17.6232 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT116 Subject: [FFmpeg-devel] [PATCH 18/41] avformat/rawdec: Deduplicate AVClasses based upon ff_rawvideo_options 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: 3uW51KpGV734 The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/ingenientdec.c | 4 +--- libavformat/rawdec.c | 10 +++++++++- libavformat/rawdec.h | 14 ++------------ 3 files changed, 12 insertions(+), 16 deletions(-) diff --git a/libavformat/ingenientdec.c b/libavformat/ingenientdec.c index 9848e12e9e..7a9cce155f 100644 --- a/libavformat/ingenientdec.c +++ b/libavformat/ingenientdec.c @@ -61,8 +61,6 @@ static int ingenient_read_packet(AVFormatContext *s, AVPacket *pkt) return ret; } -FF_RAWVIDEO_DEMUXER_CLASS(ingenient) - const AVInputFormat ff_ingenient_demuxer = { .name = "ingenient", .long_name = NULL_IF_CONFIG_SMALL("raw Ingenient MJPEG"), @@ -73,5 +71,5 @@ const AVInputFormat ff_ingenient_demuxer = { .flags = AVFMT_GENERIC_INDEX, .extensions = "cgi", // FIXME .raw_codec_id = AV_CODEC_ID_MJPEG, - .priv_class = &ingenient_demuxer_class, + .priv_class = &ff_rawvideo_demuxer_class, }; diff --git a/libavformat/rawdec.c b/libavformat/rawdec.c index aa6eba4f39..cf5da8c21e 100644 --- a/libavformat/rawdec.c +++ b/libavformat/rawdec.c @@ -118,12 +118,20 @@ int ff_raw_data_read_header(AVFormatContext *s) #define OFFSET(x) offsetof(FFRawVideoDemuxerContext, x) #define DEC AV_OPT_FLAG_DECODING_PARAM -const AVOption ff_rawvideo_options[] = { +static const AVOption rawvideo_options[] = { { "framerate", "", OFFSET(framerate), AV_OPT_TYPE_VIDEO_RATE, {.str = "25"}, 0, INT_MAX, DEC}, { "raw_packet_size", "", OFFSET(raw_packet_size), AV_OPT_TYPE_INT, {.i64 = RAW_PACKET_SIZE }, 1, INT_MAX, DEC}, { NULL }, }; #undef OFFSET + +const AVClass ff_rawvideo_demuxer_class = { + .class_name = "generic raw video demuxer", + .item_name = av_default_item_name, + .option = rawvideo_options, + .version = LIBAVUTIL_VERSION_INT, +}; + #define OFFSET(x) offsetof(FFRawDemuxerContext, x) static const AVOption raw_options[] = { { "raw_packet_size", "", OFFSET(raw_packet_size), AV_OPT_TYPE_INT, {.i64 = RAW_PACKET_SIZE }, 1, INT_MAX, DEC}, diff --git a/libavformat/rawdec.h b/libavformat/rawdec.h index 3c05795762..18777db290 100644 --- a/libavformat/rawdec.h +++ b/libavformat/rawdec.h @@ -24,7 +24,6 @@ #include "avformat.h" #include "libavutil/log.h" -#include "libavutil/opt.h" typedef struct FFRawVideoDemuxerContext { const AVClass *class; /**< Class for private options. */ @@ -39,7 +38,7 @@ typedef struct FFRawDemuxerContext { int raw_packet_size; } FFRawDemuxerContext; -extern const AVOption ff_rawvideo_options[]; +extern const AVClass ff_rawvideo_demuxer_class; extern const AVClass ff_raw_demuxer_class; int ff_raw_read_partial_packet(AVFormatContext *s, AVPacket *pkt); @@ -52,16 +51,7 @@ int ff_raw_subtitle_read_header(AVFormatContext *s); int ff_raw_data_read_header(AVFormatContext *s); -#define FF_RAWVIDEO_DEMUXER_CLASS(name)\ -static const AVClass name ## _demuxer_class = {\ - .class_name = #name " demuxer",\ - .item_name = av_default_item_name,\ - .option = ff_rawvideo_options,\ - .version = LIBAVUTIL_VERSION_INT,\ -}; - #define FF_DEF_RAWVIDEO_DEMUXER2(shortname, longname, probe, ext, id, flag)\ -FF_RAWVIDEO_DEMUXER_CLASS(shortname)\ const AVInputFormat ff_ ## shortname ## _demuxer = {\ .name = #shortname,\ .long_name = NULL_IF_CONFIG_SMALL(longname),\ @@ -72,7 +62,7 @@ const AVInputFormat ff_ ## shortname ## _demuxer = {\ .flags = flag,\ .raw_codec_id = id,\ .priv_data_size = sizeof(FFRawVideoDemuxerContext),\ - .priv_class = &shortname ## _demuxer_class,\ + .priv_class = &ff_rawvideo_demuxer_class,\ }; #define FF_DEF_RAWVIDEO_DEMUXER(shortname, longname, probe, ext, id)\ From patchwork Thu Jun 17 02:31:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28442 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200775iol; Wed, 16 Jun 2021 19:35:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwdfw0lyUG1djTovVGMUE/m3TizxWwX4fblM8PqSLBvmZr8pybZkzX0A/OEIEKJJmYytkch X-Received: by 2002:aa7:c818:: with SMTP id a24mr3479551edt.53.1623897316621; Wed, 16 Jun 2021 19:35:16 -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 y8si3719057eda.198.2021.06.16.19.35.16; Wed, 16 Jun 2021 19:35:16 -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=Js9Ew3wU; 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 25A46689ADA; Thu, 17 Jun 2021 05:33:30 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075036.outbound.protection.outlook.com [40.92.75.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A6DF4689888 for ; Thu, 17 Jun 2021 05:33:19 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Runt6KkhqkcjuSlEBMoO1i9jA8uaBeATMpqa920XxinyuEK8ZMXhTsmxu3o29O8w18/KjPpgOcHYcIBsurrykq1zn/TogZI3kT9jAl5AoFzT7UBL6pKfm9EQD7ztQujW8VS3YzR74VRpDEgO8uzlP/asv7r8xXO/4d19oW27QXEQtnbKMH8eRSVZQWi7rlN/K23Bv58Grri8o/I70JiW+6WI6zmPujjYWou9HZmLjdv1Byzn5o4nwWFA+Ey1QU1HpkUKjW9mOR62xsgqecl04YRAywqhNML13pqXQE2HlvkcLKej7Agx67uqZHXtSE1HoYHEjFZaSw+OiDeTuPl8uQ== 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-SenderADCheck; bh=GbDYo9ORM6kqM54wdkgUqqV6vdyusQ/9FtW14BR6/Oc=; b=W5kxu7jAZRGypv0HoMXUqd51f4JRM2haK14EtypJe2jQKn7OnqD/gn2/WkDCFkq2mCcHpUAhH5Q897akFhCuyKjKKfqco2ymzQbyMIW1zsCb4HfVYyVUiJHpWmObhfnfasXz029Kde0DqOlnh+tBC80mB1+fqdXYgJHfR8cj+E3Ahd860AmNx+A21Cszs5+rxaTwBrx0bbhE4a9IcmrrDDaYuAzIRhP/jnovOpXPaxom3knelkZDFzrdrmt6nOxfpUqvaXrSJ7UArzXAVZc+TMv9Q60ApAimh62jBe0U8j422mkzFEmBcV9ohpWKKTjufT+954AvaBaf8fqXl6h1tg== 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=GbDYo9ORM6kqM54wdkgUqqV6vdyusQ/9FtW14BR6/Oc=; b=Js9Ew3wUiPc5N5cpOFu+WIUFFT2DwVpAvvz6ZvmW5d2CCzfcuyE8ZxYCVR3SFruhvyEDrlgqAx68OjYtDNTgXUqPGIVOR4EGaF64KQt585ch/siMgbPBa5oU7gU51HeYqxCh0awyAP1Ftl7qNYt5nNoOPvoEpdfHAXJGppFD5ZSV0Gdl2djwu2JOSv70TUF5q6Qy9Mg15qaSVAfam8HEoNDbtws6AEb5LU+Wrj03HrzSLMn0A1ZSl3h4nOLR2YYPwiRWhPVgdPQ0KWMBlffTqh39f33S8oAANeutLDb0JIwQUUxj97247t1IQ1vMtV2UIT1MLbXw1HYlkK6raob7/w== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4d) by HE1EUR04HT233.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::418) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:18 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:18 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4E7DF3AFFA5E661E1D341473B75D268784B90C6DCD002D5D0C3C12485777C009; UpperCasedChecksum:1E3DD0132A68C690C313D53498EE2FF9D4E9E326B85A8F8E52BCCA30FA406064; SizeAsReceived:7582; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:18 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:40 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [fRQVM+6sNiaXfTCrDzRV985bjS+M+dkb] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-18-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:17 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b05fb469-b6e5-42ac-fef8-08d931384412 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOa2cpHb4x1SdkQVBmXuOoORb5r9wyduwpVclp2ouqSc7MnZSP/FXYU0ikYM6rejNF2QVV5OzvkUjhTf2w/UxLQdtP5Bg51eOONFxb6PM4VFnwIOLAgRQHkOLhUohK2ETPlgC86lKJEH2qNfBluOop2S8lelFZxPqTe48R3NLAD7tJ2BFeafEzXvsHbNCUCNMXOjIWJMdw0i3nwDDs+NsFHA3yYhXShttINO3UGt9Qf8qx6Ak4Obxr4t4EeZuylzR/a9ga+1PO2SEuKwL1/+oUzjow2vMGEC3pFAQ7I0IQMnvyKA887mgJMzlyf3JGs95e9dxyFSY4qmxQ/JvFbVOT9ceXHlEGl+qYNqUiS8JVdy0HCkS6CvHCAzw7Zs8TVR4nZ0H7FnttAJM11UcNWCHad34+VlAzemLxE8X2QAYawchK+WwIiB3KT7/t5kSUWnNZsD+k/pXmPL6l/SkPSxWoGpWmav6pstCLtoGatXtLYHOk/hGnjYcbCyf/6LE+ZdG3DEwaozEPw8V6tAQPf/vBGjQMnjxcu0vmT7dqKAmxq7MiPCC0N+QqABFsOrQQwN4aqJqr+EYnDxxOBydv3tT6MZ/Bny/QadS3nVfVIgV/dOQ1u2F1oqOVHTMit8ITorYnITrBSMvwTy7mZiNEZ8+bS5ep6iLQ75hiO7P0FW3qiPxLdzfQToc9HI6X0C5xRT6lPnBDMbWN3J8= X-MS-TrafficTypeDiagnostic: HE1EUR04HT233: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: llSQtsaSyTb2PKG/FzkIO76u3K+6aYybaZMF9Bx+fWCT454+ZjDL3s1tK8Sbng/sBsJDnK4yh86SsWnZaVYkt0dLY8Pk6jY7zypLDzZGs28OSNOs8mgeLt6ImHZ/iDYtKNlp1obKvAtIR8ck8xHXHcimP9+jNZ6urqqx5vUsr7LZDYXxQjpK17je/CVeOaQQ56PJBn6UIuZUS2BXu+n6FxHE+yXaaWcd6MOAQnzNQ93O3x2vcdNS8rBY0PzSWtWzhEAF+6K1yBzXRenLqhCHPchsOYbJYJQhInZs9eKcQIDybnnTbs419vbblRRJvmDsdBfRgGZzr+VobfTrvhCwt7cZSnA4E5QdBc/Q9LeqH+ajo0QLTBuTtsstCgXtdNKJh0Pw0SVF2AX71QV8EPtOJQ== X-MS-Exchange-AntiSpam-MessageData: PjS5rR51Am5n28IZ0YBYBecLEfkt/bKZFY7ugD2hZPiAL4FLW0ppz09kHABHQJxIyAojEHi45JlhNDZbzbx01ptVmUJdu5u9U6z1SmwGwBbviyLHzxou59CTbnhUlLgqzYWmceruIT9Vb49pYA1giw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b05fb469-b6e5-42ac-fef8-08d931384412 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:18.1910 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT233 Subject: [FFmpeg-devel] [PATCH 19/41] avformat/segment: Deduplicate AVClasses 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: LPig6L4kG9Wm The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/segment.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/libavformat/segment.c b/libavformat/segment.c index 24490f1280..ed671353d0 100644 --- a/libavformat/segment.c +++ b/libavformat/segment.c @@ -1045,14 +1045,14 @@ static const AVOption options[] = { { NULL }, }; -#if CONFIG_SEGMENT_MUXER static const AVClass seg_class = { - .class_name = "segment muxer", + .class_name = "(stream) segment muxer", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_SEGMENT_MUXER const AVOutputFormat ff_segment_muxer = { .name = "segment", .long_name = NULL_IF_CONFIG_SMALL("segment"), @@ -1069,13 +1069,6 @@ const AVOutputFormat ff_segment_muxer = { #endif #if CONFIG_STREAM_SEGMENT_MUXER -static const AVClass sseg_class = { - .class_name = "stream_segment muxer", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVOutputFormat ff_stream_segment_muxer = { .name = "stream_segment,ssegment", .long_name = NULL_IF_CONFIG_SMALL("streaming segment muxer"), @@ -1087,6 +1080,6 @@ const AVOutputFormat ff_stream_segment_muxer = { .write_trailer = seg_write_trailer, .deinit = seg_free, .check_bitstream = seg_check_bitstream, - .priv_class = &sseg_class, + .priv_class = &seg_class, }; #endif From patchwork Thu Jun 17 02:31:41 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28446 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp200893iol; Wed, 16 Jun 2021 19:35:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy3U8mDVXfZX+mslgqKigzu6QZ9s+2nwJTkTgEvBIcr6nRGT3bWDQbNMuPtc0P1TeqAb0y0 X-Received: by 2002:a17:906:1c4d:: with SMTP id l13mr2566269ejg.531.1623897327334; Wed, 16 Jun 2021 19:35:27 -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 i14si4037370ejy.705.2021.06.16.19.35.26; Wed, 16 Jun 2021 19:35:27 -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=hSIY2S5O; 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 2F8B4689AEE; Thu, 17 Jun 2021 05:33:31 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075038.outbound.protection.outlook.com [40.92.75.38]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1D3DB689888 for ; Thu, 17 Jun 2021 05:33:19 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XUH730L5noEINOifSLrfuHbyESO4nxabLh5OLcTvbJK7wUDbshc0mjFpWBZox9UV2kK61Tcd4bIJ1X7dL1+fqB19BMxlsLPaj52i52WMa3cl2bH1r3w4zaJRdO5kCpP/neAjZPoHdX+OFZjj+/QSW0tvJb5CPjrd2H7R9mlyyNgMjm4sE2twcLL7GvRdWGZz7EX4Ql8Ncd+WgUDaWcY2gk2076xvyzKP0WxPB8EumNb+ThH6UjGFb3Zu0hhvJP8GvX4yAHDp2SEpQpMkeQVSGTJ+0SR2AtXob9QHW1DAP/qgcrAnZr2sLt1ArlBYeniHx/8b3WgW+ffyLkuVgMNcUQ== 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-SenderADCheck; bh=7YGUvakmu5tWfj8/hEd/qqrniqGLB3tvPMx6DjKo2/Q=; b=TTR+lJ6yh5pg9tjGyJic/KvfJ6Oxn+PEp396oHNbXAf8eSkqvtUnAp7/8cEBlB+wJCzqw341JGZ+a9NtQ1aSCJ3mF2kyQtuLzEf25jSYIi8OyZlNjpFSUBvGmOP9gHaU2081f0EVhlCxCq38MyE/eVVVtosnhUv5B6Jlr+tRn42GrZwxMIWEE8M6UG+YU4kG0biWV23x9Sq8EU7mYHEFzsei/EsT+JFEeAysI8n/X4WStFrKOXYQFbfgqULJq0DQ3LFa9qMRIM3Km5Hcvq8A0KAOJI7NfAzmyFcEtnxoqudCoadN54QrZbMyAE6l6uCaCoax3O9xt+ORIwGnuPW9OA== 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=7YGUvakmu5tWfj8/hEd/qqrniqGLB3tvPMx6DjKo2/Q=; b=hSIY2S5OgWDbbgaioJHVkYoOOl7hcp+Upp3pFWxeSqI7ADUfHoRQidIUtJNPbmMZoazQKORtEJX+yU6jgSonsGH5F4DaSMHvVPXxEfpAuT1Qtsx+yAs2SBuDxMmm2qwcUDFrjETw/g2/Rqblv1s6Olg2g4OSA9I51ArWcEZ6bDDZPyE9zJ9ArUw2dOxlFSQVDBZTM6MtbC3oiy+z59WyXtKUWjAi8ydGYcfJGXTMicAe+JGM/6hPwrJjJbAgAInDaqYzi4WdwVH5LS6bo9HXgYGsPztiWrTMGHdr2W1VkjG8EPjuiR8Kh5wMPYZEXAtksSxZ0tkyRlgf93x75tLgoQ== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::43) by HE1EUR04HT007.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::88) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:18 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:18 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:072446AC39C085525DFEE1840548A362D32C5BB26C34DAD4B8D6B1E8341B3A43; UpperCasedChecksum:6FFDD0E954791B6ED33A4EA2C01FC0CACA9144354E415B77BA4739F230A8A930; SizeAsReceived:7569; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:18 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:41 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [1/PZwoHc5iSZsHpHXmreW/m2YdJTx025] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-19-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:18 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: d9fb935d-e9d4-4625-08d5-08d931384467 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWugpcKt7VXzKEobsEte6KqGVjPtKcqMTBdqoCR7xFA267m1dwKSkKwaFCVnDm4iKFWst0So3woQfJJBCHQcw7mIVC4cdrZ6sgA1CKyXIuE3A1AOytsX02UkIHbJCN75BkCzHgvqbfpbhF/y3U725rzDLWzyGelTs708m7rz5DOTrvRm0A6ek4nmeVKIEraTP+v0OZL7nbPX3+y0jVCyfk5sqAI6zGQoGRx5nYVn/ZXYsZUaealcz8Ob7NzFfDNnj2NrvZGjsZ/NaB28wc12JB9if5EaRJ3tOmN5/MbLbXG6OoxvbHGStyYlQzwYqn/cG9ZqVnczL438OSNU8RehjPrCZweCNmqOZsRm4p1Cx1HBvI1sckW+CLByiLyKyZtNCcqQIcqUjRHgZ+ZrVxYxXv3BYA8TtYSMPFlQ50wB2+gRLUJw/AV/BIbTGCmc4u8buIpX4Efees9UV5yyz3vkFzkavi9pTHNPFd6xKuUWwwLgKr+oskAcM2igWd37NRux/KEverbapM6/2au53cLamzFZ65/dHjePcizP3ro4YpK+6JDwXtScBDV1rcLX0zH04IwkZjytchCAUaUtG8l4iTJ3GjBu84fqVroASEsNx7HR/OWb7hKyOm7RunY69YcLqKU5gGb3hkz50F5cIHHu8xcw+wBRQprd4E2itb1sFvxeZD2rXYdvGk3ijyyjBC7UXonkH0YQq41ID9vL0HA3k+7lj+idzpyOypLaQXSIm2Dmw= X-MS-TrafficTypeDiagnostic: HE1EUR04HT007: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UkbOWlqHcAzbKFRitXfAU6J0i+CxZwYipBBX+jX+HYQFaeVUXI/ZaBX01V8u47VF2Yf+aYyBiHdi99shg16fYNYF5wmfsJFxgigYdIjGh0gunJRKDWb5wJweuFdqLTlvYSs6Aoe9uyE16iF2i5bSXoFiD63JZEBSsGUsP/1KfPuF2bWOe4CscSm41Fub5oadDoQJl+ANODdhsg43Ao9tBH/0cl2NnZSa8x3HbDxJHSP5oHizLWTtiiRUwLWLIxL+QOIyMhATYWPL8YqmtSGLzCvv8WOA6e4Gd+MCbr/EgmloMLl6V7KgJzbcS54J7BKBw0kbLnes0iHGln1k/uhzPm/k0lea1jdNuOEcjR7rbDPrblRsLnZZTcpKW/5vRX7K7jsYteTPRr2pzK1aoyZpbw== X-MS-Exchange-AntiSpam-MessageData: xIuoUt0/Jpej+CQ8Pi5UJEjbzAP1ayqK5EUV9dWnY/Ml7Gy0mJm6bFio/Si3VFbIl2dlM9pLbQ7YB1l47j+bFGoO0bXQdyhq9yNDY7Ci62BDZL5uLY+jjHyAE0QCRTp13WU11AA/5LNpWwEjGGlFgw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9fb935d-e9d4-4625-08d5-08d931384467 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:18.7387 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT007 Subject: [FFmpeg-devel] [PATCH 20/41] avformat/v210: Deduplicate AVClasses 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: 3hkE39DAjZ/o The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavformat/v210.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/libavformat/v210.c b/libavformat/v210.c index 361fd2a625..24f71d4014 100644 --- a/libavformat/v210.c +++ b/libavformat/v210.c @@ -87,14 +87,14 @@ static const AVOption v210_options[] = { { NULL }, }; -#if CONFIG_V210_DEMUXER static const AVClass v210_demuxer_class = { - .class_name = "v210 demuxer", + .class_name = "v210(x) demuxer", .item_name = av_default_item_name, .option = v210_options, .version = LIBAVUTIL_VERSION_INT, }; +#if CONFIG_V210_DEMUXER const AVInputFormat ff_v210_demuxer = { .name = "v210", .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), @@ -109,13 +109,6 @@ const AVInputFormat ff_v210_demuxer = { #endif // CONFIG_V210_DEMUXER #if CONFIG_V210X_DEMUXER -static const AVClass v210x_demuxer_class = { - .class_name = "v210x demuxer", - .item_name = av_default_item_name, - .option = v210_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVInputFormat ff_v210x_demuxer = { .name = "v210x", .long_name = NULL_IF_CONFIG_SMALL("Uncompressed 4:2:2 10-bit"), @@ -125,6 +118,6 @@ const AVInputFormat ff_v210x_demuxer = { .flags = AVFMT_GENERIC_INDEX, .extensions = "yuv10", .raw_codec_id = AV_CODEC_ID_V210X, - .priv_class = &v210x_demuxer_class, + .priv_class = &v210_demuxer_class, }; #endif // CONFIG_V210X_DEMUXER From patchwork Thu Jun 17 02:31:42 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28432 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201022iol; Wed, 16 Jun 2021 19:35:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz1uCmvRJvboaGQk5XIb2+oqrNkV35wJmr5xFYmwYjgqYCtaqQl4E6Ted2K8+um0H/VS623 X-Received: by 2002:aa7:c1da:: with SMTP id d26mr3398255edp.92.1623897338256; Wed, 16 Jun 2021 19:35:38 -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 j29si4215136ejo.664.2021.06.16.19.35.38; Wed, 16 Jun 2021 19:35:38 -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=cwPF9SCO; 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 3A9D6689CDD; Thu, 17 Jun 2021 05:33:32 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075067.outbound.protection.outlook.com [40.92.75.67]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AB1FD6891F1 for ; Thu, 17 Jun 2021 05:33:20 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q1Ke0uACGbtmvyRZdOgr8ZAvTbC03PLescxH4ABpcg+drYZalSSEOVldq9jEkqYAXea7AC3e2fFEe6KwoUevZsJgSgDagcRvBa3zMMbQp/6Lpw7ALNoKYgbEVt12ad3OWUPpq8lJN5bgEDjlkD1cMJI1JYMAS8b6o0VOIVXx1/NjieQ+ph9FjGk2fQQe2sNYVSsvLPXaRu3Cb8pZM26dZF0pqGOC2FlXYhOaZlBqzy1zLUn2DMXKker4AvztZZZM6aAxfs1a0GuuJssU5gYRc3OLVP2ctLkjJndRGw7VEBDzhjuCXjDoetACMEFlwty4n0EO52VtOAkK2MCVg2mscQ== 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-SenderADCheck; bh=E/hKSsA6+IT9jF+ivPG8wS7ONZV5Mo2Ro7AJhcckOFE=; b=XnsbFxwwt4Fa04hQIJMek9ku2e4eQmG2T+7OuILvPpiSPoZ9dsqQWSLRTb385uuTvSbPJV9BOXxahhkXMnxmvJQTociOVA2zcc8+a+w/PbwDkou5ddf5L9V1Y+xFu13+vJ5O0i3oJDwdy4b62i4KdWkUHztZEzCQsHQaZyvBhUEmcFmWroTmjDWe4D/0hl42xe9jhb4k2dKbhPHu8FFksnaeGlcweMNI2jg3AXajJeL7s0SzzedMihVbxib6Dhj+5vmBRA2amHnb4RPC/KN/hjsEZ0klzTrkOlesYCgOUEfIZZuK3AZtUaontuihxEB+bqAhOTxrAbSx0v7XsjD8ww== 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=E/hKSsA6+IT9jF+ivPG8wS7ONZV5Mo2Ro7AJhcckOFE=; b=cwPF9SCOc3KVAd0kjlYCefsl3M2Bf5vonrnnIBCFwafOPlmIrBNYbycroo2tdyL/vo9GIxgtIc2/QWRhzY0ctWpM11rRjPZkXuwzPdnAzg4LFZ/fmqor5hwDEiIWQKSb4MQyUebL9B2BfWx7szIRGzzSRJbnmCYszkCoK2azTaRJ44YrFnvKQdZibXqcN3kK0AGgGETWrl73901JmqJOjXdDxKaCAeW9mwPzNK2o2QNj7M4iv41eue6+AxxFj/CVUKwCqOapO2UnHf36H7Ow9yXa+Jm8IIGuLzZC533Rs6o/exKhqRMqzsdueOhM5xHPXqSl1DRiJ8C8tIa8qrCl4w== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4d) by HE1EUR04HT233.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::418) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:19 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:19 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:21B16FC544A8BDBE1CB386933165C27DF38B4A2368A947AC99F6171B2036CD85; UpperCasedChecksum:B6839F835CFE285F2ED11ECC16CF8370C8A5789006745F5125417750AD87AD60; SizeAsReceived:7602; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:19 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:42 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [/X04CES8X8CrWkovi+P7COqUIjTlUtat] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-20-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:18 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: ed398bb6-0159-4f60-0e50-08d9313844bd X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1OKuf1rAMrvrfWrqbysqoE0b0ooN3vPfMoFtf9PGDT1ULKLKD65NCgIuYA3MsrJo6L/KF4/GymCE8VSVM+G7quvOpcyYe7MeyYQNonP9BPBLBcPePJ3SWtYQakQ3jvYn06lX0S/MU9gWhKM7O7cB6rXzzPJSBL2X//y0BDdF+RqDSc3zs7r4jMx+Nc6U1PNWUMO2AjXU25nB/y2AFPevr89GwfjQ/A7pvdHn3+FAS4qhxfdPDD4hIdTc5T+bukgzFvI99/i/zlzef6G7J74OJc/8NlYM5fSM3AHw/YCmcb5uBQPQYf6zgKfgaUHBbheCukQyyHsi5Il1XwC6wdAkjmbglw/FFc0A23izfHLOW+K55o5gr7X7fxQ3DkSqQdx9SIcKj0WTaLs06fyfLjEr+mkHaafQBOcAhim1fEUidda3XJIb1Vwuth84PN764zDh/J0CtqPB9gBbB1jZAukhaW08jGbNVoEMJvA0PIeiFpyJfzw/+6GVnCjUW2MsvmoumHSQD7MD9D0HkiNnuGnIzutQQaZJVdUrFYTEuT+aLELHcIwk7oIQwoRuyZ9xEcFNNBQzSLMj4TEq8APKPZP7L7BmiOp60kEjHSvX+94itPaJ6cnBftMxFkHejPGjoAeY8eGHEXV2TtluC99etOXF01i0YjwW58NMuHk2OGB5xjrHOUGtmhSHMaGddEaSXoy44oWoABzWG3QgHYJZ3MwtuhCK7s+l4gjCGeu4j+knMB5oWy2mL6wRyuDfU5IT1qzNnx X-MS-TrafficTypeDiagnostic: HE1EUR04HT233: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mkQihXzwBh6yAXZtpOzdE7pmAdpUWwTBmwt6dUMd4t8Q5TUwQ9jaIXBa+5qu5SAV25rryXuEnO66m84DRWg0PbalvjsnGm9bV5EJUuaFSAYK6IDEcbJbi8F0rZhsXnHGPV1KopW0K9QeaVYaaR/IMIppP7eFX0gebmZpeweq5WhnG2R5KOXnUio20LXBLf1+t5TtaBNtEpVEzco3SUzfMP6VyzMFUXP28UZbfOqBJNmneZLmquZzp4i/aY0GCWwNZSiMoH1vGYZpZ67PB0nQM9pqcVQsCzDgX1hrQOpMMSHKamu8hib0tT7vAmx92WMtytNgKaoRi88Qe2ZSaIuePk77DUny72UrztdAUhsC+mcTSkWhvZ4iRJ6pL4R5sKYWpu2ug8Tb0dthmAPCzUZdag== X-MS-Exchange-AntiSpam-MessageData: kfidhswJqRjEpFpA7lSLyJAE46UOTw4N/aMDULkd85xkdrNh4qj+xTmAeWuwAeQYJY5o3nPhVNXQTcjvAnC95wYZTZMwQMVkdYJSlBGmcRF+Oc7/abAGlEv6WeVvCEFz6yQ1N5qH+A4q4B00WaG9DA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ed398bb6-0159-4f60-0e50-08d9313844bd X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:19.3225 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT233 Subject: [FFmpeg-devel] [PATCH 21/41] avcodec/Makefile: Fix standalone build of adpcm_argo encoder 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: LIn+tyimU3gR Said encoder uses a function in adpcm.c and while it does not use anything from adpcm_data.c, other parts of both adpcm.c and adpcmenc.c need it, so adpcm_data.c needs to be enabled anyway. Signed-off-by: Andreas Rheinhardt --- libavcodec/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/Makefile b/libavcodec/Makefile index 04f28c6c1c..be64c82c66 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -854,7 +854,7 @@ OBJS-$(CONFIG_ADPCM_AFC_DECODER) += adpcm.o adpcm_data.o OBJS-$(CONFIG_ADPCM_AGM_DECODER) += adpcm.o adpcm_data.o OBJS-$(CONFIG_ADPCM_AICA_DECODER) += adpcm.o adpcm_data.o OBJS-$(CONFIG_ADPCM_ARGO_DECODER) += adpcm.o adpcm_data.o -OBJS-$(CONFIG_ADPCM_ARGO_ENCODER) += adpcm.o adpcmenc.o +OBJS-$(CONFIG_ADPCM_ARGO_ENCODER) += adpcm.o adpcm_data.o adpcmenc.o OBJS-$(CONFIG_ADPCM_CT_DECODER) += adpcm.o adpcm_data.o OBJS-$(CONFIG_ADPCM_DTK_DECODER) += adpcm.o adpcm_data.o OBJS-$(CONFIG_ADPCM_EA_DECODER) += adpcm.o adpcm_data.o From patchwork Thu Jun 17 02:31:43 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28441 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201293iol; Wed, 16 Jun 2021 19:36:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzNPQhVOZkx8+cNE9qonjy5LqWNurMNWXgxf+6aTsy29YHXLYbHU3RFRbz9Q268PVOztXL3 X-Received: by 2002:a05:6402:cb1:: with SMTP id cn17mr3454054edb.42.1623897362873; Wed, 16 Jun 2021 19:36:02 -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 ha20si4105668ejb.103.2021.06.16.19.36.02; Wed, 16 Jun 2021 19:36:02 -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="AOzWv/qL"; 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 577186899A7; Thu, 17 Jun 2021 05:33:34 +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-oln040092073052.outbound.protection.outlook.com [40.92.73.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BC5F2689A1E for ; Thu, 17 Jun 2021 05:33:21 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YumIMTgvchTFD2uerHFKNVXjPe1OlX+y6ZZSviA9sivdtyLJmvMMBK2Tu6fZdwKxhwAyHTyEMTKcMMnqqva4xK95FfX7cF3nofHg2EqNMTjtolszfdBQqWkKJ3jrjjq7uah/BUTABZKaimxaSnCy43K7bJsSlxlPiYelqYMvCJA5XBWvlro+/2VRHNjMzTq5MPpOSWNTUIQLup0JAurSbgglt9rsudRt3LJB8OiagnWpdunOLes2PgJj3ru1830kCXYnM2336bWvpZOlOVn0SSTzmFl6wwl5fx39vYAFzGmX0zAL3b20gZKAfzOHjo4RuCOS9+3NtOGaEqBdHdlfwQ== 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-SenderADCheck; bh=ws9Hte1gW+pScIJ0wf6SaXVuT/rZvwuMdN+yD84gnYs=; b=mcnqfJlHCS8G52xIbWU9T+hj20Zgq4OKHJKynU8REWjxzzvINzVgWG0GTRibfKWzjZE9DIa/fIIFdbrJ+M0Nqkyp1FMSccg1xAXbNUZ1uxWatP8fEfr5N8PmTXb1cB9Jdo2qX8Dd3FW7dAb4Oe/nokfXym2C7KKkDuqhcIgwyD74xQu+XpEW7Y328VEpR4g75y+no0GRudjdIWk7rV7SYMW6FrCI4DTVH5vAlX4rbsgPFajxHNJ5BSyfcm0gH6n0vI39L1jg0lV/Ez22p39+vcxiLbG3TJG8/PUqVl3PGCsxpGX1ROzjtAuL3nEPq5079nDBsYxoEUYbCGKyb9bkoQ== 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=ws9Hte1gW+pScIJ0wf6SaXVuT/rZvwuMdN+yD84gnYs=; b=AOzWv/qLhribPCCPODP07vOtwslCkYUlqV2d2r8Gu+PrCOhf3DtYH+fIyihyxR6lvp8MpauV/fNDke1tZ/VB2tzGfOIfFNKvUkr5LMzIiQH3d2bn85xAjHFym8hhcrr8KnKSx0GMr6fVUcCe3+MOnMUsCwi5JJUaJhFugXWHXZ8PN40LT6TH0+ebHt0dVqQ2eoIzlBmYaopKjITKGUInNKFm0rz62K3LY2Izq6iJBdjBnsqfmfFzCBq7mLDtD+q4UGM7U9pKHVe665t8sY1xO4EFteSEQg7wJBT/5uUUD1XhzuKsdPoWk/s6GoABoKZ+e1iICsFibE38r16ylb6a2g== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4a) by HE1EUR04HT004.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:20 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:20 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:604E13AA5E46809774CF84311672442343903C82B07853B60DA074BDB351340B; UpperCasedChecksum:B9702E3FF489E306C49C658A884FC69D4760C8B25610537A6342D8EA9486EF83; SizeAsReceived:7586; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:19 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:43 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [59WnfWMExR25oicTssvAYPra+7DWk7oO] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-21-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:19 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 9d47bace-44d6-46dc-7791-08d931384512 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOvl1X5h0rQuGvRxCJ6aGg5WfUx4lOBb+P9BTC1/KHjvw869BelsmaVTd3yX7jGoINT9BOlNOtPippAkGu1FjxLqQssmyms/FzlgLYblgQn3dMI9kyQPx3I+dxUVx+fFJ55cOZ9wng9HEz5KV2pY8LJICwe9z38J60p+5peo3LRRDaFtLjc9HBZkRLhGwD+dZRoKlU/B/ouEf2eUfE74BBz2cef5ub/unLPOHcmoB2QOn38JKWtWZMPyfq6cd6tctL2JbH2Ayo2wwNNVpP7bM39sOdBoN26/kO/DtzbVhDNOM3P0b/yDJ7xv1QIhZH22UiGPP5S5iQaFHd4L2gs+2vawgMoqt60vwI81G89ZetYQw2695qsNg0N9YXcXXk5KyT/6NiLainu0LwX8ERzwUiZ1Z1k5mxkv42CPEZVZs4kPifr1Bc2X9YvVrW/cu9onJhOLY2jFa1VUlrlsCHGQuoY4puJkaeDyo5NGUhnXPtJd3mA0V+jPZw3lfGNrLXeZYtnAwPYSvGptdvF3L6KKNgUj2hSXfuXlNqTqqRM5lImHJ9Jp57rF8f8fcBv9bwxXIBhb5mIu60tXsXiynGBRTJ+TbrGqvl0zl2XZvSPnE+tNhl6ZOoVwl/XQYXUbKGlErzAldMOKkQw2x0uj7bq5Cq9568+9TJibLNwPvfgKURFSZubvh1pXvfYExTjNlMPkKFktZ4Rwm17fc= X-MS-TrafficTypeDiagnostic: HE1EUR04HT004: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wHb/9Q/pzlA5T7w14PZKI9ioaGNACvEL/YOcekzlbnEmAKrlm8YhWMd5s8euyFp7Zt77VJjwdazr+ntxD3OcrYvZFV6JcYiR5xe1cLgFZPZae6au3kj9KCx/uB8I0KrRjMnmR7NyYNDkxcCtUksW/uN1vK3cYP1AOf6w7mqmWZaHZArPgCXLhzBx+fp1GypiUu4KRtS33AxAYdyjmivOraR3UTXQNSC9OZzxiAufgZ8RnzYtlFtmehnmHXJMNbxfZlsBj4wkeXqZFkHPED2XEMXUP3Tat91yk2QsmsW3h5bl39rEaAIaY9MoBgrbU4U4Of//rByZZV2Bsjuueitt8sHoSdzTfHeyF/W0g0+TGSxVvXKqnVAqx58MXiAMJPqvLWSXd3VEwmqCSvUxVswomA== X-MS-Exchange-AntiSpam-MessageData: fZ86zSiFqGvUM7z7ggLA8qMLGl4QiQel8Ja2i3+V69pRDuOIVhNtfkFdej4yuz3oK9Q3XfMe/+N8+dUhQN4iLiXOhWyA9G7F+V/qM2ySXtIucv7bA5wFyVVBbnNykQkl8Vw3xMZIIYc9KRVtQFxLVQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9d47bace-44d6-46dc-7791-08d931384512 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:19.8452 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT004 Subject: [FFmpeg-devel] [PATCH 22/41] avcodec/ac3dec_float: Deduplicate AVClasses 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: oBk4+jDkE+1C The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/ac3dec_float.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/libavcodec/ac3dec_float.c b/libavcodec/ac3dec_float.c index 3aa6482b1a..573fbe75b6 100644 --- a/libavcodec/ac3dec_float.c +++ b/libavcodec/ac3dec_float.c @@ -46,8 +46,8 @@ static const AVOption options[] = { { NULL}, }; -static const AVClass ac3_decoder_class = { - .class_name = "AC3 decoder", +static const AVClass ac3_eac3_decoder_class = { + .class_name = "(E-)AC3 decoder", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, @@ -66,18 +66,11 @@ const AVCodec ff_ac3_decoder = { .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52A (AC-3)"), .sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_NONE }, - .priv_class = &ac3_decoder_class, + .priv_class = &ac3_eac3_decoder_class, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, }; #if CONFIG_EAC3_DECODER -static const AVClass eac3_decoder_class = { - .class_name = "E-AC3 decoder", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_eac3_decoder = { .name = "eac3", .type = AVMEDIA_TYPE_AUDIO, @@ -91,7 +84,7 @@ const AVCodec ff_eac3_decoder = { .long_name = NULL_IF_CONFIG_SMALL("ATSC A/52B (AC-3, E-AC-3)"), .sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_NONE }, - .priv_class = &eac3_decoder_class, + .priv_class = &ac3_eac3_decoder_class, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, }; #endif From patchwork Thu Jun 17 02:31:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28445 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201636iol; Wed, 16 Jun 2021 19:36:31 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy62TL+LKyfCtoI7lds3ewLUOILW4w2X/yo8ODovrD2icKc8yvxQt42NqkX3rYaNbB6bPo/ X-Received: by 2002:a17:906:7d0:: with SMTP id m16mr2622937ejc.319.1623897391055; Wed, 16 Jun 2021 19:36:31 -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 e19si3565325ejy.254.2021.06.16.19.36.30; Wed, 16 Jun 2021 19:36:31 -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=jDNCVP71; 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 295D8689D84; Thu, 17 Jun 2021 05:33:36 +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-oln040092073068.outbound.protection.outlook.com [40.92.73.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6AB83689A29 for ; Thu, 17 Jun 2021 05:33:22 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MVkb+EHHHNvMnaXDTGkNLMpLCw617ZgrbxCRWAuo4xkeUGc0CmKO5YFOJ7XqSLGI/zuwJwkA2ZePSSkyyJBv11DSQqWTajDOP5YrAzgz0Walp9t2e7ohdDS2xc+PBW0NKLaJxP2kimrXv+bJEh06ge8OmCwLaAZjptj5BFso8qsQUExITySNUZhjSiq/DJ6QJIJjVyZEx4D61EsM8cCClDl28unwiiOhM0BcduDm/CFl5ZWOnujQ7K+bY5RSDdO+awlOFRaPO6D709x3iHDPANBm3RsU2qbX4ewsR2XPUtvgXCJSyOCpDmWB/M0c/OV8lxOswgbJ4SRvyz2Z31U+oA== 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-SenderADCheck; bh=bQc/4Pw3nxd402LMqB3IiTsaTjccnPo11jQJJpPIdZ8=; b=CL9b8xkbJ3blMnBvgJWm48OfsT4Ehz0lyCJgOW3/uOwO+p3sU+MtjkS7EZoB+lfda3pwxh3GKGFkkGTV6g6HtYPMZ3XqnvTyWsCmvUcRPWwgmV/UZdPR8QO1itTJJAYZGxHfX7FfrGnQH6TnZMB6g5PruvLWUkf2G6tXV6abIUV0gKkyunOqTBg2Ez6lyV6jft7FUi1PxPzVOIXRHvwLAxF5YCc+PqPWT/QrvYWsfubUA04N4cl2y4lyCzBm57H/lBBAik1T8A6+6qesNEYZg7fhjodDCsW3b8fe65ETmW/0jHj410TJXxNwcWrIdtVtSRaeJrzg41Vb+ACdfsVwdQ== 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=bQc/4Pw3nxd402LMqB3IiTsaTjccnPo11jQJJpPIdZ8=; b=jDNCVP71ilPfeBVVbDoP2dHll1Zi/DeffUaAtGb816TneYJiwMp9zL0FsrFbQlPfHKFaq4J0A/33ymE4IhJISK73oDB7YlCazwy8bR6uu7WhFGdhsOaJREyIKh6aM/UWNQIOjFjMficLH2R7yfQpym5sgXPg59RdOofoyjopO4E33I5CU58b6Vv+eVbT1GmRo1NfCTEjt36giJkJU/XhDYq8griK21vx5Xrwgq3SRnbbOcNITazMBBHT8kdUygonMwvGTy0IVnb+JWZH1B6WW0+CKjFEAmDe6bpINvNVQ1JIN+CYPyscjzh2R84f0QWp2QRtjkDFY6FiqykJnAD6QA== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4e) by HE1EUR04HT088.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::342) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:20 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:20 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4487B6C561EDAB43DB92C5E3F5B20A9534FA3BB1754E2F413D72C6B0DBC7E8C2; UpperCasedChecksum:CE03BED452CA4CBCC2070486FC442CFDCD62EE8B2885C8736FD67BFD792A3943; SizeAsReceived:7578; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:20 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:44 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [MlR0tL8ftEmUVt2VWI4ymQgkqpwIHER6] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-22-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:19 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 112d6c74-c552-481a-e9a1-08d931384563 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOtpMk4ZZjMF9xeoJXzVRRaX4FhlKOpjtEFJnEtXhcYgUBX/k1yUqTj1s5EW4vGBXH2kG3ODXnuF52ZPZYyR8nmzDmNitohmx0FOBe3VBwg/fkwgSwJu0yjWtg2EGzVrdDES0q716YOz6HX8Z0MF7/pCucjUp6Ic5BUh4PAg9ltE3JjggTI9pEEyxbUX8opDpktYZ+ZwhH2QzzzcrwFEN/pLVIp8KC36b229KFoU2Iwz2SBoaO1wE9l/Jg3NuuCQ3OC82Bd17AUhO7mqoj05JuwNnhk7bvELuLHi9nQotsNAAYlw2oHtVzeuxk7W/pdcKgT7X3e/dzp+93Ndl8f8eL9q2lgEUC4etfVvOHBcNnstZ153Uw4vmMKGszdDXRrTo7laxhTVU9rCHe55LGw1O2l2K5rwYFLT1N8ctAmElAODSS1wzRXHvcLQvxIJ2jH3xJbShCeouvq4gEJki77q4E1Tg4MTDX9xcwd+VqeBpsgPNkdGR2Tvjk/UsRfZm/3bcXxz7d/5HwqjgVkyuqJJi7XtSSn7c06QOu+JxiLFAGFksFg8cmwWaQBPMg8s3vdfuCp3/A+CMeh1anIXKIiLE1zskmXIXTaMKhFQf5E5HGXZ8BP246JSReisoNg58/hLax0gJ8Ak2cvev2RMcwKjpF4ihl0/Ai8iqyKP2P44+L/9sz6xdDEBnytUaNCveiCn/OKn/IrE/G2P4= X-MS-TrafficTypeDiagnostic: HE1EUR04HT088: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rRKAJQKGwSJwcIzZ0sakqHkwp0gCUTKRm4PQFHo0PAGPDGjpljavwc2ekf68x3SvDZhJcyPDFgjXUNnv4yDMxatAl1ZoJ5RgzcuLubHjLfuqW4kbKer3NvVwMfuPoCG8X8QRu+/FpoM6mm2P6NFVQdtD6QYWayb9k377tkZ4BW9HMSj50CPnkyWCer7TKsp37zjFCsLOfz23rdccxoyWaqudrZIuWYivT7GqNDhYwaso7soFt/84rhbPqlLn+gKmkZ9KxX7UJSl6I+v3fH8kvT+TpTjLt8TuTFrv0lVK11D+aLkrW9QrarxnI79sQcqraVC5uhCKIlSGKYPJAydJp40cATD6L7tlZPVafHu8zsYW88m9iGzmXzI2hiCscjqPgLfaM5fFvvzxsj3Z4+smeA== X-MS-Exchange-AntiSpam-MessageData: vJXnZUu+bp5Uk222SLuAz/ouWtNbimBwR8W72g4uqdjVfmS5MbG8X3IRNQyQC/J0e1+gD7+AngrGfkDLDwsecxaUEe21roQdttyOxZKjTDAEgW2WPtSs7jOyjJcmJae2o0mUc2ZTrmYEz/z+QlsAbQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 112d6c74-c552-481a-e9a1-08d931384563 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:20.3790 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT088 Subject: [FFmpeg-devel] [PATCH 23/41] avcodec/ac3enc: Deduplicate AVClasses 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: Tk+CmkwC2SDJ The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/ac3enc.c | 7 +++++++ libavcodec/ac3enc.h | 1 + libavcodec/ac3enc_fixed.c | 9 +-------- libavcodec/ac3enc_float.c | 10 +--------- 4 files changed, 10 insertions(+), 17 deletions(-) diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index 0036f7d8bc..034aa0beb9 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -125,6 +125,13 @@ const AVOption ff_ac3_enc_options[] = { {NULL} }; +const AVClass ff_ac3enc_class = { + .class_name = "AC-3 Encoder", + .item_name = av_default_item_name, + .option = ff_ac3_enc_options, + .version = LIBAVUTIL_VERSION_INT, +}; + const AVCodecDefault ff_ac3_enc_defaults[] = { { "b", "0" }, { NULL } diff --git a/libavcodec/ac3enc.h b/libavcodec/ac3enc.h index c064ba4d63..6d424fdbf6 100644 --- a/libavcodec/ac3enc.h +++ b/libavcodec/ac3enc.h @@ -267,6 +267,7 @@ typedef struct AC3EncodeContext { extern const uint64_t ff_ac3_channel_layouts[19]; extern const AVOption ff_ac3_enc_options[]; +extern const AVClass ff_ac3enc_class; extern const AVCodecDefault ff_ac3_enc_defaults[]; int ff_ac3_encode_init(AVCodecContext *avctx); diff --git a/libavcodec/ac3enc_fixed.c b/libavcodec/ac3enc_fixed.c index 58decc594e..c7632d78e1 100644 --- a/libavcodec/ac3enc_fixed.c +++ b/libavcodec/ac3enc_fixed.c @@ -35,13 +35,6 @@ #include "eac3enc.h" #include "kbdwin.h" -static const AVClass ac3enc_class = { - .class_name = "Fixed-Point AC-3 Encoder", - .item_name = av_default_item_name, - .option = ff_ac3_enc_options, - .version = LIBAVUTIL_VERSION_INT, -}; - static void sum_square_butterfly(AC3EncodeContext *s, int64_t sum[4], const int32_t *coef0, const int32_t *coef1, int len) @@ -139,7 +132,7 @@ const AVCodec ff_ac3_fixed_encoder = { .close = ff_ac3_encode_close, .sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S32P, AV_SAMPLE_FMT_NONE }, - .priv_class = &ac3enc_class, + .priv_class = &ff_ac3enc_class, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .supported_samplerates = ff_ac3_sample_rate_tab, .channel_layouts = ff_ac3_channel_layouts, diff --git a/libavcodec/ac3enc_float.c b/libavcodec/ac3enc_float.c index f9759bd2cf..e4a3794dd8 100644 --- a/libavcodec/ac3enc_float.c +++ b/libavcodec/ac3enc_float.c @@ -34,14 +34,6 @@ #include "kbdwin.h" -static const AVClass ac3enc_class = { - .class_name = "AC-3 Encoder", - .item_name = av_default_item_name, - .option = ff_ac3_enc_options, - .version = LIBAVUTIL_VERSION_INT, -}; - - /* * Scale MDCT coefficients from float to 24-bit fixed-point. */ @@ -143,7 +135,7 @@ const AVCodec ff_ac3_encoder = { .close = ff_ac3_encode_close, .sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_FLTP, AV_SAMPLE_FMT_NONE }, - .priv_class = &ac3enc_class, + .priv_class = &ff_ac3enc_class, .supported_samplerates = ff_ac3_sample_rate_tab, .channel_layouts = ff_ac3_channel_layouts, .defaults = ff_ac3_enc_defaults, From patchwork Thu Jun 17 02:31:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28456 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201447iol; Wed, 16 Jun 2021 19:36:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzBnqF8KDpj1Bn6bol+WoCZtppKWIZ2cEz51pL4/r+VgZF+6A0vlZ5QI3JE5bvJJd9UBkWk X-Received: by 2002:a17:906:5053:: with SMTP id e19mr2636338ejk.251.1623897377079; Wed, 16 Jun 2021 19:36:17 -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 z15si3430577edd.488.2021.06.16.19.36.16; Wed, 16 Jun 2021 19:36:17 -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=gjB7FXPr; 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 43CFB689D53; Thu, 17 Jun 2021 05:33:35 +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-oln040092073052.outbound.protection.outlook.com [40.92.73.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DC6CE689A61 for ; Thu, 17 Jun 2021 05:33:21 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fgwCkzbpu4dKwajilqbHDjH3GZyQxuG2CaN5411RLibLpnTAveKFqz/Zz/WCQdWiYztmcfjVSwvWDCfnPYwKvkEFNcCr/7NeMKNTziHmNQp/qjAztNOjUE84YdHd3UfewELvz7FlF1vpl+K6vlysqRsiJCTm75NAKI673vHipZ1t3CXhGBVfeXJLgw6qwMkbdYo/gtpcrgaQqH0dBogO8SLrNUpSSa66YcR2fqv/mqZJ27MvzQgAyd7iuWTNbys5lJKfQiUI+da9M1dfD2o1tT4sD+rNHWSl/Jx3XAkWjkHEbutXc9hNwYvBwi66d4t06g7EB5ay05C2wTkRHilSTA== 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-SenderADCheck; bh=9MTzDN8emSAJfibnjY3mDFXUb1ko4XSyucNj6YUiF3A=; b=Pma9ipio6mcgB84ychUWQfrb3gUTYxeIKuUfOV+cmomkgQcQnrQB/GW29JxzsLHTihg11edj/CyK4YSi4uSfIr2Gb5qRYYbTuQQsPlBCtihZP08mnqZwmWmiHtKY0iCFf15/AdQMxUK3PblBLuarZlF+EOkkLHQmk/lr57s2Oa+9U4iboUW2N8M/eAfqiRHantxTWokuT15rCSJadq4bhB0leBAxqSb4PwpQub/RoCLEkY+1aWd1xQdFips0IDwAhSSiSPyHBRFlShPlVrvMojgEaBJSPR8keZ7HNqxuJmgtv0uzWZyYWmWd30oGRLGvBoWM2c1V8mLVlMHDmMQFIw== 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=9MTzDN8emSAJfibnjY3mDFXUb1ko4XSyucNj6YUiF3A=; b=gjB7FXPrKaa3wQ8SX7sv6UBhSEZ1PWCF3TyN8FHrbDweV2aaGVi67tWQG5NDdnHfDh0X3etmNZ+r8s/f1/w9En/qa+GxHd/IVJq0G+EsyCp+mCWuOWztfVlluoWHtdqqePW5OI/8b7V1pBnHWs50vpECOhHT9JXDXdtidKiXa/k0L5qsZjEvFepBv1VCsaeG0ZfqWUYhngqYiaTfwuuBtuL0xpHYa5oeqGEXul/BxUN6DeM3kJbSmxz9G2DnJrCBXG2BPWdTYfO9ChTK5+NSUHjap9FltQNxOfIs75OFCiHJ/jA4S4aW08A08s/pVU9ZsS9KMQXs8m3LEzo1ksklcQ== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4a) by HE1EUR04HT004.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:21 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:20 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:6A9CAF460785C048790A825B6A390CED4A6785BAF51F54B76506D14CF8F39686; UpperCasedChecksum:CDF5CC70873E594383B61F0E29B15993D4BD71E9BD5A595420AF70266DB300AE; SizeAsReceived:7597; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:20 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:45 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [CzBRAcgIggM7YcjjvRJ5S6KaCptTe8HJ] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-23-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:20 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: abb7b9bc-6b0d-470b-602f-08d9313845b3 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWEHzfetLs7TP5Yj0qMh+OvffQAAoJClamqRIExBP+aqPjeEsG6Z6jH29LQeVRfrcCfFUAVevy4WvUedNJyLssxawlIMZRcHrHymZdhUfWr705NIEY6uQ6/HumIqt3U53rlQNk+Tzi+7S0fPLuVE4iloTtVwR1ezCkPXiXIZTSX2QDP46YN4jzLX84IZ3QPg7R0xbyfSkFYT/YTN/whI024vg8zqRTmkmTi+jrpsUG61xqIF+2SG4LPQZx8iM6VgswSrPZpUpEL7RFHL32vWE/uKz5QyzOwMy7jvb6iUKv2GQoMQZyY6GOCDvWKXwAgk5nk6b07jKuwArwZ34fFyjLFG1afl0HaoiTi+94bZT960FlbIHvhz2qYlrNX/mPNeASWCQvBdMzb+exOnvbQVzRHUrmFkyQ8scWHlamQyylDyD878M7oyeoGb4vmF9Yaqoyyho7iOuYuvMbnFJdQttzg/g8HDsM6WLjzOX4tTcvqz7l3OLRhgSk2+wJ2AJY2J68+/b0uPUxYz74F0FqCwSlJAob6X2CHeKPtIzJRlPIRI/F3cIRrIm9DKl8+K5HKZXgzteA68U18YdvS3ucgzV8/OLDZg9GyRh2ZZCNWY7YWRN1WI3pAdQ5J4SJGiDW5pDPwuILTmMs7ar+zbPsuvpsDFvxX6u2i8jWWHCK8LKVm2B8njjZZKAe7UX5X+raNFbZesH0i3ALAMi3VeqPWzSVKUssYQBR09sWGEyj7GavYdo= X-MS-TrafficTypeDiagnostic: HE1EUR04HT004: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Nd/5EX9c579px55O57qy4nbrIZJkxmOJ0FBQOlf0TTMUQHCBJ7e9I3f7aisy5F+s6HPc64GJ7th9gbBsMM/GHgFoHeDyF+8f4G+kHICdAg1zOHcrNU7dtC2b9Kt+u44V3cvsyqgI+NXRf+XK2saSP4n2TmnxguoDjqSVbleWL3kpuSdydo5hGvyRhUZlOYvZ7Dgy2bxoewB3f+RWvo/If3TbISFt+ogvl9oG+IzsuDgWQIALuAybMEKD+/U8ab7jxNwz50Ktamr++vL344YjPKJf2FeogXWORcD+3w4iJIo+aHiDJ8alYZzsfQdd2rFLrDdSJOfREuLF5JjA2Mh+k8Epni/T9VIS3KQ4Kan/BZsrnKK0OYKV+jITPB+hsDoXSjBlB6FlCt/QVKkp1Yx3+Q== X-MS-Exchange-AntiSpam-MessageData: w/LPKStbIKU2ldPjdUKJRTg1P6rjHa0+dtbCyIl7EmMCprNRmd+BadaBBmmRRjAX6qm/wE9Y+ZxuASLTkT+ZT0C1Hr/LjIBDcAaaJd+T/XAjINyLQstuBPQrrYn3gwrRXlO3b0S/SRaSmnW79fSBVw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: abb7b9bc-6b0d-470b-602f-08d9313845b3 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:20.9277 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT004 Subject: [FFmpeg-devel] [PATCH 24/41] avcodec/adpcmenc: Use smaller scope for some variables 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: ycryxkVuarYv This is to avoid unused variables warnings if the code for disabled encoders is #if'ed away which will happen in a subsequent commit. In case of buf it also avoids shadowing. Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcmenc.c | 105 ++++++++++++++++++++++-------------------- 1 file changed, 54 insertions(+), 51 deletions(-) diff --git a/libavcodec/adpcmenc.c b/libavcodec/adpcmenc.c index 2b5a606699..b95a9822e5 100644 --- a/libavcodec/adpcmenc.c +++ b/libavcodec/adpcmenc.c @@ -67,8 +67,6 @@ typedef struct ADPCMEncodeContext { static av_cold int adpcm_encode_init(AVCodecContext *avctx) { ADPCMEncodeContext *s = avctx->priv_data; - uint8_t *extradata; - int i; if (avctx->channels > 2) { av_log(avctx, AV_LOG_ERROR, "only stereo or mono is supported\n"); @@ -132,6 +130,8 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) avctx->block_align = 34 * avctx->channels; break; case AV_CODEC_ID_ADPCM_MS: + { + uint8_t *extradata; /* each 16 bits sample gives one nibble and we have 7 bytes per channel overhead */ avctx->frame_size = (s->block_size - 7 * avctx->channels) * 2 / avctx->channels + 2; @@ -143,11 +143,12 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) extradata = avctx->extradata; bytestream_put_le16(&extradata, avctx->frame_size); bytestream_put_le16(&extradata, 7); /* wNumCoef */ - for (i = 0; i < 7; i++) { + for (int i = 0; i < 7; i++) { bytestream_put_le16(&extradata, ff_adpcm_AdaptCoeff1[i] * 4); bytestream_put_le16(&extradata, ff_adpcm_AdaptCoeff2[i] * 4); } break; + } case AV_CODEC_ID_ADPCM_YAMAHA: avctx->frame_size = s->block_size * 2 / avctx->channels; avctx->block_align = s->block_size; @@ -588,12 +589,11 @@ static int64_t adpcm_argo_compress_block(ADPCMChannelStatus *cs, PutBitContext * static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr) { - int n, i, ch, st, pkt_size, ret; + int st, pkt_size, ret; const int16_t *samples; int16_t **samples_p; uint8_t *dst; ADPCMEncodeContext *c = avctx->priv_data; - uint8_t *buf; samples = (const int16_t *)frame->data[0]; samples_p = (int16_t **)frame->extended_data; @@ -613,11 +613,9 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, switch(avctx->codec->id) { case AV_CODEC_ID_ADPCM_IMA_WAV: { - int blocks, j; - - blocks = (frame->nb_samples - 1) / 8; + int blocks = (frame->nb_samples - 1) / 8; - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { ADPCMChannelStatus *status = &c->status[ch]; status->prev_sample = samples_p[ch][0]; /* status->step_index = 0; @@ -629,27 +627,28 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, /* stereo: 4 bytes (8 samples) for left, 4 bytes for right */ if (avctx->trellis > 0) { + uint8_t *buf; if (!FF_ALLOC_TYPED_ARRAY(buf, avctx->channels * blocks * 8)) return AVERROR(ENOMEM); - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { adpcm_compress_trellis(avctx, &samples_p[ch][1], buf + ch * blocks * 8, &c->status[ch], blocks * 8, 1); } - for (i = 0; i < blocks; i++) { - for (ch = 0; ch < avctx->channels; ch++) { + for (int i = 0; i < blocks; i++) { + for (int ch = 0; ch < avctx->channels; ch++) { uint8_t *buf1 = buf + ch * blocks * 8 + i * 8; - for (j = 0; j < 8; j += 2) + for (int j = 0; j < 8; j += 2) *dst++ = buf1[j] | (buf1[j + 1] << 4); } } av_free(buf); } else { - for (i = 0; i < blocks; i++) { - for (ch = 0; ch < avctx->channels; ch++) { + for (int i = 0; i < blocks; i++) { + for (int ch = 0; ch < avctx->channels; ch++) { ADPCMChannelStatus *status = &c->status[ch]; const int16_t *smp = &samples_p[ch][1 + i * 8]; - for (j = 0; j < 8; j += 2) { + for (int j = 0; j < 8; j += 2) { uint8_t v = adpcm_ima_compress_sample(status, smp[j ]); v |= adpcm_ima_compress_sample(status, smp[j + 1]) << 4; *dst++ = v; @@ -664,7 +663,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { ADPCMChannelStatus *status = &c->status[ch]; put_bits(&pb, 9, (status->prev_sample & 0xFFFF) >> 7); put_bits(&pb, 7, status->step_index); @@ -672,11 +671,11 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, uint8_t buf[64]; adpcm_compress_trellis(avctx, &samples_p[ch][0], buf, status, 64, 1); - for (i = 0; i < 64; i++) + for (int i = 0; i < 64; i++) put_bits(&pb, 4, buf[i ^ 1]); status->prev_sample = status->predictor; } else { - for (i = 0; i < 64; i += 2) { + for (int i = 0; i < 64; i += 2) { int t1, t2; t1 = adpcm_ima_qt_compress_sample(status, samples_p[ch][i ]); t2 = adpcm_ima_qt_compress_sample(status, samples_p[ch][i + 1]); @@ -696,8 +695,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, av_assert0(avctx->trellis == 0); - for (i = 0; i < frame->nb_samples; i++) { - for (ch = 0; ch < avctx->channels; ch++) { + for (int i = 0; i < frame->nb_samples; i++) { + for (int ch = 0; ch < avctx->channels; ch++) { put_bits(&pb, 4, adpcm_ima_qt_compress_sample(c->status + ch, *samples++)); } } @@ -712,8 +711,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, av_assert0(avctx->trellis == 0); - for (n = frame->nb_samples / 2; n > 0; n--) { - for (ch = 0; ch < avctx->channels; ch++) { + for (int n = frame->nb_samples / 2; n > 0; n--) { + for (int ch = 0; ch < avctx->channels; ch++) { put_bits(&pb, 4, adpcm_ima_alp_compress_sample(c->status + ch, *samples++)); put_bits(&pb, 4, adpcm_ima_alp_compress_sample(c->status + ch, samples[st])); } @@ -725,11 +724,10 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } case AV_CODEC_ID_ADPCM_SWF: { + const int n = frame->nb_samples - 1; PutBitContext pb; init_put_bits(&pb, dst, pkt_size); - n = frame->nb_samples - 1; - /* NB: This is safe as we don't have AV_CODEC_CAP_SMALL_LAST_FRAME. */ av_assert0(n == 4095); @@ -737,7 +735,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, put_bits(&pb, 2, 2); // set 4-bit flash adpcm format // init the encoder state - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { // clip step so it fits 6 bits c->status[i].step_index = av_clip_uintp2(c->status[i].step_index, 6); put_sbits(&pb, 16, samples[i]); @@ -753,13 +751,13 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, adpcm_compress_trellis(avctx, samples + avctx->channels + 1, buf + n, &c->status[1], n, avctx->channels); - for (i = 0; i < n; i++) { + for (int i = 0; i < n; i++) { put_bits(&pb, 4, buf[i]); if (avctx->channels == 2) put_bits(&pb, 4, buf[n + i]); } } else { - for (i = 1; i < frame->nb_samples; i++) { + for (int i = 1; i < frame->nb_samples; i++) { put_bits(&pb, 4, adpcm_ima_compress_sample(&c->status[0], samples[avctx->channels * i])); if (avctx->channels == 2) @@ -771,46 +769,47 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, break; } case AV_CODEC_ID_ADPCM_MS: - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { int predictor = 0; *dst++ = predictor; c->status[i].coeff1 = ff_adpcm_AdaptCoeff1[predictor]; c->status[i].coeff2 = ff_adpcm_AdaptCoeff2[predictor]; } - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { if (c->status[i].idelta < 16) c->status[i].idelta = 16; bytestream_put_le16(&dst, c->status[i].idelta); } - for (i = 0; i < avctx->channels; i++) + for (int i = 0; i < avctx->channels; i++) c->status[i].sample2= *samples++; - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { c->status[i].sample1 = *samples++; bytestream_put_le16(&dst, c->status[i].sample1); } - for (i = 0; i < avctx->channels; i++) + for (int i = 0; i < avctx->channels; i++) bytestream_put_le16(&dst, c->status[i].sample2); if (avctx->trellis > 0) { - n = avctx->block_align - 7 * avctx->channels; - if (!(buf = av_malloc(2 * n))) + const int n = avctx->block_align - 7 * avctx->channels; + uint8_t *buf = av_malloc(2 * n); + if (!buf) return AVERROR(ENOMEM); if (avctx->channels == 1) { adpcm_compress_trellis(avctx, samples, buf, &c->status[0], n, avctx->channels); - for (i = 0; i < n; i += 2) + for (int i = 0; i < n; i += 2) *dst++ = (buf[i] << 4) | buf[i + 1]; } else { adpcm_compress_trellis(avctx, samples, buf, &c->status[0], n, avctx->channels); adpcm_compress_trellis(avctx, samples + 1, buf + n, &c->status[1], n, avctx->channels); - for (i = 0; i < n; i++) + for (int i = 0; i < n; i++) *dst++ = (buf[i] << 4) | buf[n + i]; } av_free(buf); } else { - for (i = 7 * avctx->channels; i < avctx->block_align; i++) { + for (int i = 7 * avctx->channels; i < avctx->block_align; i++) { int nibble; nibble = adpcm_ms_compress_sample(&c->status[ 0], *samples++) << 4; nibble |= adpcm_ms_compress_sample(&c->status[st], *samples++); @@ -819,22 +818,24 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } break; case AV_CODEC_ID_ADPCM_YAMAHA: - n = frame->nb_samples / 2; + { + int n = frame->nb_samples / 2; if (avctx->trellis > 0) { - if (!(buf = av_malloc(2 * n * 2))) + uint8_t *buf = av_malloc(2 * n * 2); + if (!buf) return AVERROR(ENOMEM); n *= 2; if (avctx->channels == 1) { adpcm_compress_trellis(avctx, samples, buf, &c->status[0], n, avctx->channels); - for (i = 0; i < n; i += 2) + for (int i = 0; i < n; i += 2) *dst++ = buf[i] | (buf[i + 1] << 4); } else { adpcm_compress_trellis(avctx, samples, buf, &c->status[0], n, avctx->channels); adpcm_compress_trellis(avctx, samples + 1, buf + n, &c->status[1], n, avctx->channels); - for (i = 0; i < n; i++) + for (int i = 0; i < n; i++) *dst++ = buf[i] | (buf[n + i] << 4); } av_free(buf); @@ -846,6 +847,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, *dst++ = nibble; } break; + } case AV_CODEC_ID_ADPCM_IMA_APM: { PutBitContext pb; @@ -853,8 +855,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, av_assert0(avctx->trellis == 0); - for (n = frame->nb_samples / 2; n > 0; n--) { - for (ch = 0; ch < avctx->channels; ch++) { + for (int n = frame->nb_samples / 2; n > 0; n--) { + for (int ch = 0; ch < avctx->channels; ch++) { put_bits(&pb, 4, adpcm_ima_qt_compress_sample(c->status + ch, *samples++)); put_bits(&pb, 4, adpcm_ima_qt_compress_sample(c->status + ch, samples[st])); } @@ -875,18 +877,19 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, bytestream_put_le32(&dst, avctx->frame_size); if (avctx->trellis > 0) { - n = frame->nb_samples >> 1; + const int n = frame->nb_samples >> 1; + uint8_t *buf = av_malloc(2 * n); - if (!(buf = av_malloc(2 * n))) + if (!buf) return AVERROR(ENOMEM); adpcm_compress_trellis(avctx, samples, buf, &c->status[0], 2 * n, avctx->channels); - for (i = 0; i < n; i++) + for (int i = 0; i < n; i++) bytestream_put_byte(&dst, (buf[2 * i] << 4) | buf[2 * i + 1]); samples += 2 * n; av_free(buf); - } else for (n = frame->nb_samples >> 1; n > 0; n--) { + } else for (int n = frame->nb_samples >> 1; n > 0; n--) { int nibble; nibble = adpcm_ima_compress_sample(&c->status[0], *samples++) << 4; nibble |= adpcm_ima_compress_sample(&c->status[0], *samples++) & 0x0F; @@ -906,7 +909,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, av_assert0(frame->nb_samples == 32); - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { int64_t error = INT64_MAX, tmperr = INT64_MAX; int shift = 2, flag = 0; int saved1 = c->status[ch].sample1; @@ -943,9 +946,9 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, init_put_bits(&pb, dst, pkt_size); av_assert0(avctx->trellis == 0); - for (n = frame->nb_samples / 2; n > 0; n--) { + for (int n = frame->nb_samples / 2; n > 0; n--) { /* stereo: 1 byte (2 samples) for left, 1 byte for right */ - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { int t1, t2; t1 = adpcm_ima_compress_sample(&c->status[ch], *samples++); t2 = adpcm_ima_compress_sample(&c->status[ch], samples[st]); From patchwork Thu Jun 17 02:31:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28449 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201841iol; Wed, 16 Jun 2021 19:36:53 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyvahtlhGlzIlRLKixxrzsxTRFEzxox2CAlVFT7t1cr5CHwjN9tZQBz9FIUQqAeCQ+kA/a4 X-Received: by 2002:a05:6402:19b9:: with SMTP id o25mr3362993edz.192.1623897413694; Wed, 16 Jun 2021 19:36:53 -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 c27si4082716ejj.609.2021.06.16.19.36.52; Wed, 16 Jun 2021 19:36:53 -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=K3G1z9vZ; 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 07CA6689E05; Thu, 17 Jun 2021 05:33:38 +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-oln040092073012.outbound.protection.outlook.com [40.92.73.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 35258689986 for ; Thu, 17 Jun 2021 05:33:22 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N7nWsRuR4DaWhgy9Xa2EANhmkgYgQp2LVNOr/XZAWNd619vW5AEj032U+Djzd3sBNnkgOKApPplU9UYUDrEK/F+/qm0rSrgaBU1mKc7dq+6GkWTVWB1M0CCi/szURUDBxNVUQcgEX4jXKZf/kGlx9ZtcpKc0aVHap4caxMvFcnNvz9cBczzRACkJ58w0/fS1Vv5knZrmLClCqkyEj/unCwk+tgpKP+CRG10xYWhT6IIN8LoPt1dPfe/aNTk8kwBNUrEzC+zC851luio/w58qyB/E3yWDuq+dNLtZ7HyM50powEHGVtxb1O9cGpPqoD+BaAt1jk7OCeGfrgEu4am5EQ== 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-SenderADCheck; bh=T5046WMDjOVwRtW9QfwiC0tLzWIRp8d+NE0aznfUong=; b=CwvBBM4e2nQuXG8h2blxAmDPxn2WlgKC7BDfsCU0n4uOX1fl8jX1gD3VPVsXN1Blb8/G98PdSO9B9klCrA+NC1y2fj3qX0rXxaNExiJcGCCfIi+VUf3MFJ+QD1ejOG18oH+E1mGc7cDd/XiUuj6NztiYvKclgs/rjdjrEymc132pPUcY9Yiw+j5ziGvUVc79FPooy/mPvuoT+MxXri7bvSXCyhU5NANyKLdWmdC5guGtenv75OLlAg+Xw18bz6U3dAF+uwxLAk9aFJdm5FbTNoAxPJt/SLj/HfC/7QzlulOT5KsE4FjIfrVdkR9m/kG+baaPsOUdC+DZkbbkSJ8naw== 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=T5046WMDjOVwRtW9QfwiC0tLzWIRp8d+NE0aznfUong=; b=K3G1z9vZveXAIIxcvG3fNsDnd89szY9K44NQX8uTn4AXIS3MyQoA+X1CrULD+0j/fxjYIj8KMUecIzaQiJ7FezVn2mS96YnAERaIz1aOc8ncyLV6uFo5C5GGFclB8qTYfphAnlZvsYEeK9vDTwp1WwPgubFbplhWJUNc4baPHzvoPj/8azWP+yDk+e6GLnfmXZGsUPyLVVeWR1qkJE/ZW0wZ91eaM8ZClcZaWfhyei0LHvUFVB/zI6C93bgffPC0mDdkMaJeWTLnSpLSex4sCD9ixj5RN6hOI5mKDW92SkYqpHIWl6hNjuHv74uGmdG57gBhemgSmop8RbwdPkyIOw== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::43) by HE1EUR04HT090.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::344) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:21 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:21 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:64C7D98BA59EB2642A901C839E4C347DD14FDEEF4C911F41C394D0618821766A; UpperCasedChecksum:84F9EC9A5F9DDB20006EAB2646FD5A5EACE8CE03D67EF0E09AF76F0F7CC18DEA; SizeAsReceived:7605; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:21 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:46 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [YxNJeISUKMq6hJOkMRDllISi/1UXv8SU] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-24-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:21 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 9799a243-a51e-4d9d-01d0-08d93138460a X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1ON5gC7jyoSWPBvq6oNx8ZTZ47rCzTHnHZcyPJFyrv7lxnBm4NuScXnZO2XHer5it/XFycltlPmBP24afjlfaIywfw/DCoX5Bx6DOX/gZN4Od1x/JrpwMUfx2bYS85FZkoUBmahn8Jw3ru/DpNDkgJrvHIBPQUfp+WEaUN5XQsdL+jf96BxK0rg8Lwo8PcpnoNdAqRDSPNahRNftEMiH1XFZrks2+i8pZXexEM95IXrAQ/+zhR003jZthleBvGkyV8AqRoeCLjKZIIZp4JXfKIQ3e/ZtsWczulia3tEiE7GfkRz/fpSZt1Ly7vI6rtjwrKU4CIFP7yVGQFTZb4KsQLnOQbYNhpOc4f9aQZAeXkw4cK5ZIya6l2wWykIBTPg46Ry1qaTVZRTjRwpkWSrWmTMtsf5298rB/e/OM2fpN76GSPQnkrCoWVUpjEGxqUUXybHpKKBaYI5aXUObax00NiMOHgyuCOIeuABLuHvuM0reQlF6tJpPoRt5Xz5QpvT605HQf5KuauMFJhwa3MzHb7gYmREslMVJPK42ybu/aAEA8GdEAJrU9kwU1XQXHoYHZGhECIhW72a0p2/bEAPC4ttMUhp5mqKb46vysSrJdhvO8cGEJMR8b3u0jdZsqM19I/kbHVb8lYig8Me9UiB8B7Bkv9Mc3oQ842AweJfTGlrP3or3JZvywzt0EJaT116cqTbZxLrW/XyZ9uQRi7V6ZsZ9jfff4uvyuzc71eaLv8wlD7HFbEfoqgw6S1WKaFfLqT X-MS-TrafficTypeDiagnostic: HE1EUR04HT090: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 71hUcxJcArD3bX9vKeYFPVQBaN6Ys2LdroimX0ByjTlHnWOBzF/IdmueOupfZeaKXWPc5/AkXwlmOMuPOj5l9xrvZFpO/SarAG/40lVNQuRf4NVi8rz56JBf5BkMs8h2BPAYJZQwGq4WEXIVlZmlByjhY+oCBmAblAMzVYPwNsbluCEhcIzqZQaC7oUL2a0Z1c57jhj3SDAYfvL6KyBStGse3FmFFnDD7Tku2QJlVHvNyqmJvDt8cwOptDr4NovvCsDarU7HWikMGj9NMCd4wlM/AvWl5yJtkUhGxhJNIJQTIFv8wzEEooPmjZts0DyjRiKLUv19pvpc8AwBwawKUFSm5/Scui2AbAORHa0/v4MUSoCIQCxyKVE2tV6N2GA38OBXetUipDOfRv9KT8QbMQ== X-MS-Exchange-AntiSpam-MessageData: lnIQKzcI/8YK+Hw8ejYpxwTikAwExown0V9nNVDIpK4x45vBfno5cDxwku2ZheALwMaY0A1ZyZ+IccO5PyHXIBLf+RgbGqT+JDoHFqQ2LudZ2Uo4hWb9n+e4CaZzkldDU2PQ7z94QDRQHC53od14Yw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9799a243-a51e-4d9d-01d0-08d93138460a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:21.5035 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT090 Subject: [FFmpeg-devel] [PATCH 25/41] avcodec/adpcmenc: #if disabled code away, fix build without ADPCM_ARGO 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: Rc+almMZruJB The adpcm_argo encoder does not use the data from adpcm_data.c directly; instead it shares a function with the adpcm_argo decoder that is in adpcm.c. When all the ADPCM decoders and the adpcm_argo encoder are disabled, adpcm.c is not compiled; yet the code in adpcmenc.c calling said function from adpcm.c is still present, leading to link errors. Fix this by disabling the code belonging to disabled codecs in adpcmenc.c. Signed-off-by: Andreas Rheinhardt --- Does someone have an idea for a macro that also works when multiple cases share the same code? libavcodec/adpcmenc.c | 116 ++++++++++++++++++++---------------------- 1 file changed, 54 insertions(+), 62 deletions(-) diff --git a/libavcodec/adpcmenc.c b/libavcodec/adpcmenc.c index b95a9822e5..244a562d41 100644 --- a/libavcodec/adpcmenc.c +++ b/libavcodec/adpcmenc.c @@ -38,6 +38,18 @@ * See ADPCM decoder reference documents for codec information. */ +#define CASE_0(codec_id, ...) +#define CASE_1(codec_id, ...) \ + case codec_id: \ + { __VA_ARGS__ } \ + break; +#define CASE_2(enabled, codec_id, ...) \ + CASE_ ## enabled(codec_id, __VA_ARGS__) +#define CASE_3(config, codec_id, ...) \ + CASE_2(config, codec_id, __VA_ARGS__) +#define CASE(codec, ...) \ + CASE_3(CONFIG_ ## codec ## _ENCODER, AV_CODEC_ID_ ## codec, __VA_ARGS__) + typedef struct TrellisPath { int nibble; int prev; @@ -115,7 +127,7 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) avctx->bits_per_coded_sample = av_get_bits_per_sample(avctx->codec->id); switch (avctx->codec->id) { - case AV_CODEC_ID_ADPCM_IMA_WAV: + CASE(ADPCM_IMA_WAV, /* each 16 bits sample gives one nibble and we have 4 bytes per channel overhead */ avctx->frame_size = (s->block_size - 4 * avctx->channels) * 8 / @@ -124,13 +136,12 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) have to buffer the samples :-( */ avctx->block_align = s->block_size; avctx->bits_per_coded_sample = 4; - break; - case AV_CODEC_ID_ADPCM_IMA_QT: + ) /* End of CASE */ + CASE(ADPCM_IMA_QT, avctx->frame_size = 64; avctx->block_align = 34 * avctx->channels; - break; - case AV_CODEC_ID_ADPCM_MS: - { + ) /* End of CASE */ + CASE(ADPCM_MS, uint8_t *extradata; /* each 16 bits sample gives one nibble and we have 7 bytes per channel overhead */ @@ -147,13 +158,12 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) bytestream_put_le16(&extradata, ff_adpcm_AdaptCoeff1[i] * 4); bytestream_put_le16(&extradata, ff_adpcm_AdaptCoeff2[i] * 4); } - break; - } - case AV_CODEC_ID_ADPCM_YAMAHA: + ) /* End of CASE */ + CASE(ADPCM_YAMAHA, avctx->frame_size = s->block_size * 2 / avctx->channels; avctx->block_align = s->block_size; - break; - case AV_CODEC_ID_ADPCM_SWF: + ) /* End of CASE */ + CASE(ADPCM_SWF, if (avctx->sample_rate != 11025 && avctx->sample_rate != 22050 && avctx->sample_rate != 44100) { @@ -163,13 +173,13 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) } avctx->frame_size = 4096; /* Hardcoded according to the SWF spec. */ avctx->block_align = (2 + avctx->channels * (22 + 4 * (avctx->frame_size - 1)) + 7) / 8; - break; + ) /* End of CASE */ case AV_CODEC_ID_ADPCM_IMA_SSI: case AV_CODEC_ID_ADPCM_IMA_ALP: avctx->frame_size = s->block_size * 2 / avctx->channels; avctx->block_align = s->block_size; break; - case AV_CODEC_ID_ADPCM_IMA_AMV: + CASE(ADPCM_IMA_AMV, if (avctx->sample_rate != 22050) { av_log(avctx, AV_LOG_ERROR, "Sample rate must be 22050\n"); return AVERROR(EINVAL); @@ -182,24 +192,24 @@ static av_cold int adpcm_encode_init(AVCodecContext *avctx) avctx->frame_size = s->block_size; avctx->block_align = 8 + (FFALIGN(avctx->frame_size, 2) / 2); - break; - case AV_CODEC_ID_ADPCM_IMA_APM: + ) /* End of CASE */ + CASE(ADPCM_IMA_APM, avctx->frame_size = s->block_size * 2 / avctx->channels; avctx->block_align = s->block_size; if (!(avctx->extradata = av_mallocz(28 + AV_INPUT_BUFFER_PADDING_SIZE))) return AVERROR(ENOMEM); avctx->extradata_size = 28; - break; - case AV_CODEC_ID_ADPCM_ARGO: + ) /* End of CASE */ + CASE(ADPCM_ARGO, avctx->frame_size = 32; avctx->block_align = 17 * avctx->channels; - break; - case AV_CODEC_ID_ADPCM_IMA_WS: + ) /* End of CASE */ + CASE(ADPCM_IMA_WS, /* each 16 bits sample gives one nibble */ avctx->frame_size = s->block_size * 2 / avctx->channels; avctx->block_align = s->block_size; - break; + ) /* End of CASE */ default: return AVERROR(EINVAL); } @@ -546,6 +556,7 @@ static void adpcm_compress_trellis(AVCodecContext *avctx, c->idelta = nodes[0]->step; } +#if CONFIG_ADPCM_ARGO_ENCODER static inline int adpcm_argo_compress_nibble(const ADPCMChannelStatus *cs, int16_t s, int shift, int flag) { @@ -585,6 +596,7 @@ static int64_t adpcm_argo_compress_block(ADPCMChannelStatus *cs, PutBitContext * return error; } +#endif static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr) @@ -611,8 +623,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, dst = avpkt->data; switch(avctx->codec->id) { - case AV_CODEC_ID_ADPCM_IMA_WAV: - { + CASE(ADPCM_IMA_WAV, int blocks = (frame->nb_samples - 1) / 8; for (int ch = 0; ch < avctx->channels; ch++) { @@ -656,10 +667,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } } } - break; - } - case AV_CODEC_ID_ADPCM_IMA_QT: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_QT, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -686,10 +695,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_IMA_SSI: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_SSI, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -702,10 +709,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_IMA_ALP: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_ALP, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -720,10 +725,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_SWF: - { + ) /* End of CASE */ + CASE(ADPCM_SWF, const int n = frame->nb_samples - 1; PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -766,9 +769,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_MS: + ) /* End of CASE */ + CASE(ADPCM_MS, for (int i = 0; i < avctx->channels; i++) { int predictor = 0; *dst++ = predictor; @@ -816,9 +818,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, *dst++ = nibble; } } - break; - case AV_CODEC_ID_ADPCM_YAMAHA: - { + ) /* End of CASE */ + CASE(ADPCM_YAMAHA, int n = frame->nb_samples / 2; if (avctx->trellis > 0) { uint8_t *buf = av_malloc(2 * n * 2); @@ -846,10 +847,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, nibble |= adpcm_yamaha_compress_sample(&c->status[st], *samples++) << 4; *dst++ = nibble; } - break; - } - case AV_CODEC_ID_ADPCM_IMA_APM: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_APM, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -864,10 +863,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_IMA_AMV: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_AMV, av_assert0(avctx->channels == 1); c->status[0].prev_sample = *samples; @@ -900,10 +897,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, int nibble = adpcm_ima_compress_sample(&c->status[0], *samples++) << 4; bytestream_put_byte(&dst, nibble); } - break; - } - case AV_CODEC_ID_ADPCM_ARGO: - { + ) /* End of CASE */ + CASE(ADPCM_ARGO, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -938,10 +933,8 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, } flush_put_bits(&pb); - break; - } - case AV_CODEC_ID_ADPCM_IMA_WS: - { + ) /* End of CASE */ + CASE(ADPCM_IMA_WS, PutBitContext pb; init_put_bits(&pb, dst, pkt_size); @@ -958,8 +951,7 @@ static int adpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, samples += avctx->channels; } flush_put_bits(&pb); - break; - } + ) /* End of CASE */ default: return AVERROR(EINVAL); } From patchwork Thu Jun 17 02:31:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28454 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201764iol; Wed, 16 Jun 2021 19:36:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyYkT4EI4Q9X2y+Gzf/GdJi64Sp0+r+1QdVZ6MB+I5uwckpYqPMntRvWGy+J594YE4/GeVm X-Received: by 2002:a05:6402:946:: with SMTP id h6mr3362373edz.261.1623897404584; Wed, 16 Jun 2021 19:36:44 -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 l18si3818451edb.254.2021.06.16.19.36.44; Wed, 16 Jun 2021 19:36:44 -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=sTHzWGEQ; 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 06D12689DC8; Thu, 17 Jun 2021 05:33:37 +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-oln040092073068.outbound.protection.outlook.com [40.92.73.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B615F689ABD for ; Thu, 17 Jun 2021 05:33:22 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZlmfgVjK3JpetHM6z9OsJ5jmqunllGQbBafUCIl5ev61GVNdQG4QRwL/tJmtvMhhoJYGid7SGvVJrRDsSKwlXduMT1TEhfjVnff/lh5b2QHAsXDYWNj3xz207ZLoLMJcuuXCbJDf7i8a3DB9GfdO/bIm6i6/pZHfBjLOj3IG49KADLfgMGkKwGjYhFLtM9i2G6/fn0+Q7DePGI+in1J3T04H1SFc9NpyNEw+9MZhU/5VAzRcP3GLlVV4OLnsEFTb7LYpwh9DhLmhs/xgW/CKJhcSVew86v/I/tMnzOgAyWAeLqcZb89/gIFrR6cvcph0pYIHGT2Yfsf+cisCX/IyeQ== 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-SenderADCheck; bh=yQKJVRVpVHcGzXlOFuq16Vb+q4uCeVX2+m2tA56GlKo=; b=QrTTeota+j27u7XBmHEJQIByt0TZmVKKYWHOtosWRTuK05Kc/Vao3lbdkGXssFwV4Pwc6z6mX4xsUfT095onzYBAUiraaxvzBjVZVXil853PZk7em9DbhcnnU22BBqUql7MRlb4mHVtdBiuUxUbmM0Gl9pTDqPDbuuYDt6oOFyccUOA4peIchuVHrKdkFmIXUT/RH/sCgLMjPq6v1CBVjr1QZ7g55+LNJCWFKU8nPL29PVmwnF2VO03Mmfll1ZGbnPH4mKC+rgfTjYsxylP7I4k+1r31jHa3H0hLCEoBeMDCQvuh9dBwFOwMywHoVXo8459wy4lU1iAvfF1Bha0FeA== 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=yQKJVRVpVHcGzXlOFuq16Vb+q4uCeVX2+m2tA56GlKo=; b=sTHzWGEQ4kNwOwQDMr6I3gAOAxwDe/dqV/3TZDjL8Nx9xMO4RFF8pjlMDu0k1YvQqV/5FUNQaLKd4qy4zzJn/JTIJI8s+4rqJKwNIJ1Xdd+H1Cwo0oQtWZ9Q6JsLKSWGn+rlJOjEn4cs1wxM6yCsozRvBOdTHJc5wOm21QnZIaJ0oOjGgiLGCB/Mjqh2rOqEBHc775SDkJ/NELHcKBoTJXyPWRYKVXOo5V8rv/iTpCf/1o+Q5D+5aj9yXVO57djbygb+8+PTTKWirZeygfKOZ9zt9R1IAXrnAO7zy6DzY/PAwIsj7kGqr/MSZV38102dubVDaKJcoi+16V98mmSJZQ== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4e) by HE1EUR04HT088.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::342) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:22 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:22 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:DFE5A98E970B05E64DBD1ADA29FD6ABEC6B53D3B4693235462584302F5A1C24F; UpperCasedChecksum:C62C3B24CF1B7EFF1A39D8261BC7499CE743AF2F5C9845B5892AFE9D966DE6BC; SizeAsReceived:7572; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:22 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:47 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [FPi8R83FNovmDTwOyu+S7no5BeGJFC3P] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-25-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:21 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 029693ea-f404-4013-3f9c-08d931384661 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCyEHH58u7PRtBd9cYO09x0aAzlozrUMYLX6832GQHYc/Hmer2ZuwGeROXv1T8ZAF4/g/UGTbzHy8441t4pF+j+1nphn5UrPh8Ww8jfCgyYy3T1W2nahgdu7g3exwExEYfu3UVsvv4ZIqd3mKgSIVqMzuHT8SEYagW6se+K/cq7g0s53o8od+deZjp35X2bv7wn2v+lD64DA5wOZrylOFUYpK5AmchdwE4DB2rXUqTxAVyELR6mZQGykLySdU6WZxYOFdDhdLgbLS0ms2gP03J3pc/ZUZqS9s+FphSCb24zmiVXF7UiiQKxM+knOmf66jChjXuhJdcBR4BHMKWcS8O4cTqL0rGc4DEDwRayozIWaDOWfXAJQ+kUfonw13GX0BiYWQ5rgV0BnL3L516J56MuJyhC3VfYFGLmFdnRQSXGCbAo5TkxDLNH9nqpFG7Do9VZusN3OCIQYp/+cC5ykW9lUavzz1qGf2VCEcG/1cg/x8rUv1ztheB2JLaIKQ8gCCmFN1T1PTNw3v2gCZ7TLEE7nnE55Jz5C2x7W2voXE9+Tv3yPHUf6aw+khDwQMFXPZKf1nb/iOM1lGqzST/noXfXfdQAXsaC/mmBT0vbn/MfNlxmwS/gOBosId8oJ7dz5rQK3R3Y9go9CG1mt5beaMKe2KvXCvm+ddrMnTIPejjKnm8JC7Tv0FwCw== X-MS-TrafficTypeDiagnostic: HE1EUR04HT088: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VbBcQRBuuVNoHo8DE3gDr0Gnv0WPYv+DAq1GKplR/q7+m4I/oih/lY1Yehd/TXo513KB9eLJCM4IJfpKguHGAZB/XZ0IJJKL+j5gSiXn1dQST4T16tZja4E3XVU2+fo/NXbNGp/HzBWwLZhHdx/nH326x9t6gPyIfCFcGYwwIbab+ZnoMsvdpJlEEq4FI6xIZt6bz5AXaMC5PU9/dt7lL8L/smJuoylVgXHP8vvU50y1zowKieF267hjGSnYHQg/CFSBTc9+gf/ln+uIs0pRh4CqniNkPtwbFcmzgOear2xq4w+7Iu2sGnGKQ6rOR2C8k4NAxnGQZwvRHbEykuYwEEBkrLC+BV0RKAt2A++uihzy97TGLWtJn6N/XuHQD/qRYavMvKKF+Inq9EoFBTy7Uw== X-MS-Exchange-AntiSpam-MessageData: 6oo7nMjidudyRvjIv2jLbaiueYmLs5s7cX2dbJoL0J2uOFCi2sFdlI4crU4F38nZwpAT3bkKUhy/ltivhhofGIEdR1TZdncSNX4y9WFxGsIYXrFuom0wN2xf8JBNCraCY847xPrXs3TyGGt+3JF/Fw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 029693ea-f404-4013-3f9c-08d931384661 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:22.0682 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT088 Subject: [FFmpeg-devel] [PATCH 26/41] avcodec/adpcmenc: Deduplicate AVClasses 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: ININaw4jWQmu The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcmenc.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/libavcodec/adpcmenc.c b/libavcodec/adpcmenc.c index 244a562d41..ea9f76ab2b 100644 --- a/libavcodec/adpcmenc.c +++ b/libavcodec/adpcmenc.c @@ -982,14 +982,14 @@ static const AVOption options[] = { { NULL } }; +static const AVClass adpcm_encoder_class = { + .class_name = "ADPCM encoder", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, +}; + #define ADPCM_ENCODER(id_, name_, sample_fmts_, capabilities_, long_name_) \ -static const AVClass name_ ## _encoder_class = { \ - .class_name = #name_, \ - .item_name = av_default_item_name, \ - .option = options, \ - .version = LIBAVUTIL_VERSION_INT, \ -}; \ - \ const AVCodec ff_ ## name_ ## _encoder = { \ .name = #name_, \ .long_name = NULL_IF_CONFIG_SMALL(long_name_), \ @@ -1002,7 +1002,7 @@ const AVCodec ff_ ## name_ ## _encoder = { \ .sample_fmts = sample_fmts_, \ .capabilities = capabilities_ | AV_CODEC_CAP_DR1, \ .caps_internal = FF_CODEC_CAP_INIT_CLEANUP | FF_CODEC_CAP_INIT_THREADSAFE, \ - .priv_class = &name_ ## _encoder_class, \ + .priv_class = &adpcm_encoder_class, \ } ADPCM_ENCODER(AV_CODEC_ID_ADPCM_ARGO, adpcm_argo, sample_fmts_p, 0, "ADPCM Argonaut Games"); From patchwork Thu Jun 17 02:31:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28436 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp201928iol; Wed, 16 Jun 2021 19:37:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxFdX57zpHlTG6//+v4xU8Y+HTVoIXTRCAEvclZV8pKprtEWsAWzbE5ixytub58Ccgg7VkI X-Received: by 2002:a17:906:81da:: with SMTP id e26mr2567088ejx.370.1623897422831; Wed, 16 Jun 2021 19:37:02 -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 ce29si4024302ejc.92.2021.06.16.19.37.02; Wed, 16 Jun 2021 19:37:02 -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=C+bNlqpz; 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 F3D18689E3B; Thu, 17 Jun 2021 05:33:38 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075061.outbound.protection.outlook.com [40.92.75.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 685AC68981E for ; Thu, 17 Jun 2021 05:33:24 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G26H41EjNXZKUrCKlTdxNe+bNPVyxvCf728lY11P51rqiaP7HUC845Gi/BjZKQ6SAtTA6NJ2Cvv//jJEVdaKVK25CzssJxzy9NaAco+PlakTGG9ucMDrZKaZREGWYv/MW9XGv++IasXhm1ndk5sJP27mnnexVZjvK6yVtzGflkS524GoQ+jHwGezDWj3iYvXR2ZFreYiBz1uq9Zx0z6LXeWz2Ox/LGJBqv0o5elDCvefW47HcMxFSetyLOepmZzT6TJnLAWLWG0BNJXZsm+0XMNECv0waL9RDn+akinrqtMIufOHqzqiPJImU0so0lACsfRwNBkz1y7kAbUTxrpiGA== 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-SenderADCheck; bh=KpyDFhu8j26YXQ+kRL7hId4ePLnEL4cuWF/VSwy9EV0=; b=XcyHp2RshT1ll37wmozdHA8SzCOTxGKHKCsmCHKVjll9MFDXlkYEmDeLxNq4lRaX/ik+dww9qvxi9dfSJle7QXTl85XSJfAckN6q1uVBq85WzFQlM9EVheCCa8QMyAG0ryOm3YZpwn/tcR259zCRC+PKjTYpgzVlZ04QdgyAKJmMokaNTzZKuvc3hWZKYz2TYtZJfgFOiZpwAFhqkGasSL/hXVRtJgmSXtRz7FSK2XaMetGZxpu0dKj2RHXd5J9jRdMAc5Of6WLe93PK3lvqCb6Ha3+9zrqsuuHVQzU/lvaaRfiRXbnFjRmNc4tah5/cf6RBpnxO3ZuR9U6EnQ1izA== 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=KpyDFhu8j26YXQ+kRL7hId4ePLnEL4cuWF/VSwy9EV0=; b=C+bNlqpzcoA6Lxc+3eRInMrfJrRY00VMyFkecw+MV8T0h/vY7aet59V7JLeCbKGVo+5ZMKK8ihOUuOlFD91Ch+hLsK2fsowt1kWfKhuIzCB4YViw1Qpr/RzJa/RQUiTm7nm/WQXFBjGftQz3aQ4qHddu3UTARzS44yLWpf6IcrQI9/qPTxebw1Pz7jiSogFKymqTyEyuR7B0hTt235KIHeCJM6orX5vlelP5kDYjxHrRfGWAJRvdVgO1e/DRT8LMgoN1qz6udY4+fCQ5xWQYGkXajcRWWRYPIF9X1MjDx3cQqPQwUyTWyqfpvKgjAtUC/uNSLtWlBMhJKiCie4F2pA== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::49) by HE1EUR04HT139.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:22 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:22 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:DA87D048092F040E971CB2B6F3856A1B1A445D0AD7FCDAD4DD3293924D169500; UpperCasedChecksum:08733301C6AA8DFAC8F19916BDE061C8ECE53FA62AA35A4BCFE4016398C5765D; SizeAsReceived:7591; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:22 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:48 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [7mXyxvw0rLeg3z2VOJVCmFfKuQUvL15x] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-26-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:22 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 079d752c-2373-4b78-fb0d-08d9313846bd X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWpRx+0t+lRmrHHYpzrl40YJy/RGAwUtepFEXZMe10ntwWNQoX4yLYHzKfyJuZN9A6hAbxu/1qyMdpMBxA9dINCRSFl0gZ31juhxHZAXdaJl38LJsnwb/ur1BNf2hI/5GxgfeErpp3CEFDivFMpTnWAUWZ7SDPHE8hQSIElUX87RrLWqfAfhPMHdgmjKv+rDHn3MaHi5OjlW69lnaHF0EvFCcVirjbQ/ngbICWowKagP+LQmuNbxHkk9fIp4dzXA3UwwiI4mUDnRR4Cg1e2P2/M6VbKZQywpYYbFDGQyLTSigAUi4uzzbnPROogwKjH3ERewcsTckW54+ZlmQEOK6PI2suIh1mzWIGP0Pe+0iochHugSZvgOAzfYRnLPLVUavFS+v6GyH/r0GfQZmP2bSM6FcoBKY4eoMnSoKZjm3DorgL/n6TsJ/ZzNcUvNos4xlHV13N9XOnwWAAzS5LsMRJk4ASpqp+Xhf9KAjwtlcGV7XEmxQINgBgIDJoshiqpabgF2iQDtPHWR5pzeGswt4PVxO/EZMKs3+6/yZ4gJTwxLdtgmhkdD6V1IP1AEYuWzQ4IrG9dznisQ+jTyXs9Yyc+IVlabLAvJOIzjv6ne7/NGLfuDZpQIpraBrkTItbT+TaUtr8JrPqlhv5cWkZUOG7EBpI4oAq8WFckgWe8hK9g3Sgw4Cyk/z4xbYdJ3LAXnPkcM7q/YMDHRgr9wjwf/IROW8z++C7zcoWWXi1UwNlLnU= X-MS-TrafficTypeDiagnostic: HE1EUR04HT139: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ji2eubm7Hp8zRckIkJLdup13+FPzV9bsxPlwebHm3dtECOPf3znR4MF/qM6n3ivzAh2yFK33SqlIejMVJk3gL7B2qtGA0ZLHjW9LCSF3F9SU7aYpzMvxXCmnGJpDm9H7CD48600kTdpjaGP8JLkdBb/fySV5ffP9Kn6afmrXlflhGFwmYidD0BOKKLcmoQ4ee0+PhzlaM1UGL00IzC9T14nJUWe/idLCmpH4O34JLPTI7c/cMQk5ABIrCBeMcq6/vh3xUaC6UrFo9SFTQtGfv6sISlds94Xhli/iDfzYLil0c7MWQUNBlJ9gjdWo2rUGGcf/Ow5KuwP2F6Ua7wH2XaqYQNX9nhAJ7UC6aF4TULcxe21GR+4HQzZU7ND+W0EuCZSx91areQC6WvLWgw31Tw== X-MS-Exchange-AntiSpam-MessageData: BVHYJOL3CO0sFLyyuGb9nLI2S6gHxgoulzYnn8eXXAXh+rMEVYR6N9LGuAYvuFPHSwLgJJinf2C/HYbK3gNbQNjz6p6Izjw03Lxh3HrcZfEfcmd+jpYTbz3+ZQipgU5ud6tfzhrorKa6QSmeWxWL1A== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 079d752c-2373-4b78-fb0d-08d9313846bd X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:22.6620 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT139 Subject: [FFmpeg-devel] [PATCH 27/41] avcodec/adpcmenc: Don't include disabled AVCodecs 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: sxfMwLqfPhPm Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcmenc.c | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/libavcodec/adpcmenc.c b/libavcodec/adpcmenc.c index ea9f76ab2b..c9b98caaf9 100644 --- a/libavcodec/adpcmenc.c +++ b/libavcodec/adpcmenc.c @@ -989,7 +989,8 @@ static const AVClass adpcm_encoder_class = { .version = LIBAVUTIL_VERSION_INT, }; -#define ADPCM_ENCODER(id_, name_, sample_fmts_, capabilities_, long_name_) \ +#define ADPCM_ENCODER_0(id_, name_, sample_fmts_, capabilities_, long_name_) +#define ADPCM_ENCODER_1(id_, name_, sample_fmts_, capabilities_, long_name_) \ const AVCodec ff_ ## name_ ## _encoder = { \ .name = #name_, \ .long_name = NULL_IF_CONFIG_SMALL(long_name_), \ @@ -1004,15 +1005,22 @@ const AVCodec ff_ ## name_ ## _encoder = { \ .caps_internal = FF_CODEC_CAP_INIT_CLEANUP | FF_CODEC_CAP_INIT_THREADSAFE, \ .priv_class = &adpcm_encoder_class, \ } - -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_ARGO, adpcm_argo, sample_fmts_p, 0, "ADPCM Argonaut Games"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_AMV, adpcm_ima_amv, sample_fmts, 0, "ADPCM IMA AMV"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_APM, adpcm_ima_apm, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Ubisoft APM"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_ALP, adpcm_ima_alp, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA High Voltage Software ALP"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_QT, adpcm_ima_qt, sample_fmts_p, 0, "ADPCM IMA QuickTime"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_SSI, adpcm_ima_ssi, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Simon & Schuster Interactive"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_WAV, adpcm_ima_wav, sample_fmts_p, 0, "ADPCM IMA WAV"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_IMA_WS, adpcm_ima_ws, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Westwood"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_MS, adpcm_ms, sample_fmts, 0, "ADPCM Microsoft"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_SWF, adpcm_swf, sample_fmts, 0, "ADPCM Shockwave Flash"); -ADPCM_ENCODER(AV_CODEC_ID_ADPCM_YAMAHA, adpcm_yamaha, sample_fmts, 0, "ADPCM Yamaha"); +#define ADPCM_ENCODER_2(enabled, codec_id, name, sample_fmts, capabilities, long_name) \ + ADPCM_ENCODER_ ## enabled(codec_id, name, sample_fmts, capabilities, long_name) +#define ADPCM_ENCODER_3(config, codec_id, name, sample_fmts, capabilities, long_name) \ + ADPCM_ENCODER_2(config, codec_id, name, sample_fmts, capabilities, long_name) +#define ADPCM_ENCODER(codec, name, sample_fmts, capabilities, long_name) \ + ADPCM_ENCODER_3(CONFIG_ ## codec ## _ENCODER, AV_CODEC_ID_ ## codec, \ + name, sample_fmts, capabilities, long_name) + +ADPCM_ENCODER(ADPCM_ARGO, adpcm_argo, sample_fmts_p, 0, "ADPCM Argonaut Games"); +ADPCM_ENCODER(ADPCM_IMA_AMV, adpcm_ima_amv, sample_fmts, 0, "ADPCM IMA AMV"); +ADPCM_ENCODER(ADPCM_IMA_APM, adpcm_ima_apm, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Ubisoft APM"); +ADPCM_ENCODER(ADPCM_IMA_ALP, adpcm_ima_alp, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA High Voltage Software ALP"); +ADPCM_ENCODER(ADPCM_IMA_QT, adpcm_ima_qt, sample_fmts_p, 0, "ADPCM IMA QuickTime"); +ADPCM_ENCODER(ADPCM_IMA_SSI, adpcm_ima_ssi, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Simon & Schuster Interactive"); +ADPCM_ENCODER(ADPCM_IMA_WAV, adpcm_ima_wav, sample_fmts_p, 0, "ADPCM IMA WAV"); +ADPCM_ENCODER(ADPCM_IMA_WS, adpcm_ima_ws, sample_fmts, AV_CODEC_CAP_SMALL_LAST_FRAME, "ADPCM IMA Westwood"); +ADPCM_ENCODER(ADPCM_MS, adpcm_ms, sample_fmts, 0, "ADPCM Microsoft"); +ADPCM_ENCODER(ADPCM_SWF, adpcm_swf, sample_fmts, 0, "ADPCM Shockwave Flash"); +ADPCM_ENCODER(ADPCM_YAMAHA, adpcm_yamaha, sample_fmts, 0, "ADPCM Yamaha"); From patchwork Thu Jun 17 02:31:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28433 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202045iol; Wed, 16 Jun 2021 19:37:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyPz71ZBWzsKpo3OThZuX7QRpXn0TaWphWWpfCYP3aUotehmvOeAoflN25BWxtcgGltxl62 X-Received: by 2002:a17:906:7950:: with SMTP id l16mr2622939ejo.120.1623897434344; Wed, 16 Jun 2021 19:37:14 -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 my32si235795ejc.728.2021.06.16.19.37.12; Wed, 16 Jun 2021 19:37:14 -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=B1hBLkAw; 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 E764A689E5B; Thu, 17 Jun 2021 05:33:39 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075061.outbound.protection.outlook.com [40.92.75.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 87FF4689ADE for ; Thu, 17 Jun 2021 05:33:24 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=atuoEZDFonCAeiB+TLG8omokjErXsQYTzG2PeZTrndHbUauPdkMWSxoxHgl9bXjxEXfIdLrOJlFB2ix3arC7tohJ1GWTU+r7YBXCyTNDwHHkRaJQcw4RkZlPHPwoRLjmV4KiGoIuvcycR2ZvKV6uL2sHRoUdAldaVRn5+eHHtcGl9eCwlE9N+j4KhA29SiWR2w9+jiGVbSmSVUmoHqnM2+1I3V9qIZ4qaI+oGcIOmyuLcvKHrHXv1AkiRv8IYpEJI8qye1OzkQxcQ3n1/HrrbTYpKGq/9jLp2Cufv2XVKSRXIzste6oW8A/zp0aoG3XXJ9QQ6Rg3NiTtQW1KTs/cZA== 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-SenderADCheck; bh=nmBO3EVGam6tI00i+wbiSIcg8GQaHXudRjs96elyffk=; b=ICevEO1uPb1/IT9O2Z7uHI1NKoDF/zyUji4cJMZ7SCjbqG+aVlxdSrUetBXqeqs9gw6BCT9jo9Uuz45xQQdgc2+F3SNoaz78QjQQepBD1Ldcjvw1pd1NeYxZe4rMzDLLhPLPmJfeOl90wkn6Brqj9pJb8zwpDNznqz7dDKA4bDwR0jlwjHkVb6XhI2KeDMIw2H2YAeohLMjbTYbr8YC5ZdPamPBGnuLHY3tsLRzz7D/Vu/6wGJRixicK6Lft1aLZrzgkhtW82HDaCstcBN4KgwR28dJlMEjH1GPoUMX5dGdWBgwT8RjazpZaVLsn+fc8IXukQmxqZoDk3ejUH6gBIw== 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=nmBO3EVGam6tI00i+wbiSIcg8GQaHXudRjs96elyffk=; b=B1hBLkAwvy5pvCzQztg+fezdkxyU0tHmkhU8tGz/2SHOHbeAvVYrsDiJZGrTnIhFYt/leGjz7fwUFq3dm13ka18L7rYRkkNW21/6Q0eaZsBeCFbqZkEYDYId6Xfa9xvhQD2dLa4x1vhXnZxM2fFipH4yRaHWSMa+RRq3fPNOTO4fMl/MJgeS3OYJIw9t24xomB1oItmWBwlrG3lnoEDom+8w0M1figiNh2FzNFsPntXQexsIXF7MgDZdZyPSrBeandsnEEC8FwKhZhfKBMHRQ/5lWqL/gL3JhvJuLF7QTO3YEMTZT06Sci7jUnpLrN6woESz2Plx598D2gH05fM4fA== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::49) by HE1EUR04HT139.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:23 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:23 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:3247F0881920647A0AC6F057F4E502199677E26B543EC3318EB4E96CB82434D4; UpperCasedChecksum:ECEFD0B698073A9104FF4B122F9949FE00CB2D1123A27D56988F5F2F0E1FE39A; SizeAsReceived:7595; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:23 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:49 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [2KizXb2zh4sKUfy0CiB+eU20pbDlxsJf] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-27-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:22 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 1b7621bf-a7c2-414c-9848-08d931384716 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWDcszYxGVRghFWb/D14adFnVt22TDVnO1Xg9zs//O30OkEBOFxCONHyH3wVtDGXkALEaJ4i6gDk5iYl9oor8PGh/dPt7nPsVRoYc2JifCnolmV+yXoVRWFd246qEgcX0b87BpSOKY+xsvpmlv6mi7XkKHCj9Aje3kmGOl7qRfsuedhYYIH35WkmoNSsfDlb4EwPfeR72Ni8NmJ+cp9pr1zFw7t8vxGGl2pVLc75U4nFdirsSvD5UNyQe3ZF7QaFsBpa9HqZI4mjma4EAEM8S986YS5FfuBIEh+NqcEFdZO1WeXAA52UzqWUB2GOFAVNz+A4P9CjF+Q59Pvon+Tz0SfVFvkcYXMkXEFPZbp3tsrz+u6MSm0mwtFxBByz3gXEtJVP4UJrTYsycAksTGauc/iiWaFIv3gTzpcxuhi+/U/aJaVo7xCLFs0BnyPMf98zK6O7Hq0BPq87vwOr6Xhkk8/DB6OWXkF6Cvv3+aSsoEUOwvSortmv0EJ2YfbRdD7PlWyNkQQIWHPLmhg+B+fjVBeymIoye9NCCYXMDQ9LjlbwZN8MbNS1keSKpLpcf5Vkjy+/GQHrf6wv47cMhf8gRzRCf/+dj+L5XfOg/QQJlNC+3+bx+ii+bKug4syKE1kTpb9vVZg3CWyAMJwOBvkusScOiTBrsZ5rqphDqQcZ+o7tOtjpWkSItvxqFyQIrcVNKLRwYNKdcL+Vwl4uOQTd3zhJ7xJP0sricXcnKqWZZwGTM= X-MS-TrafficTypeDiagnostic: HE1EUR04HT139: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Enu7eChhSsTCgms1CtvXFU4M3/t/KTcGZo4ezD8olkHJrawDIM0fwHglVvd9XLH2yY5/7XgeONLC5j0cPAYrWY1MYiz7Oe/wD8Gu15h/BNlp1egkfiFwsZs76XrHndogdNl45yTn4Lm1/Pbrqz0wpVxDwJ8x9WRZzpcuqgXkXWjQeN3Ar1UD0CSTOkVQrI+eCSiaT3bPsgcgDSAwCti6axTnHpb+pvsJMwdYXxcRhz2UwfCuYdKxNLKZEjQ7rpxKaSHui/WfIpyKeHH+uj9ZRj9WLmNuhLld2b5ZN9grr69LrYJ+YoYow8WYPsbqWO4elqJdfJ20hVtzubHutLp6M9KebzfVHTqyJObmJHKl8ZIYInR04cYS9Qf+4iBSVfG7UGLRKsR35kHuUOPrTZllGw== X-MS-Exchange-AntiSpam-MessageData: xIvUEEa1eCTGkYMKzsF2BWsMYmRCmbaUQjhcoYRQQxlvBvRe/GRUBGc9IFmPTwVns/Z2OrcRowlpeocR5I1NqneRapgq7oRNINF9ZLbFPL3uh5cA3jiaG5uu8m2nyAftemPnFcjPXxf7uxOHIqsn8g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1b7621bf-a7c2-414c-9848-08d931384716 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:23.3507 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT139 Subject: [FFmpeg-devel] [PATCH 28/41] avcodec/adpcm: Use smaller scope for some variables 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: xhnHe1O1ocLm This is to avoid unused variables warnings after the code for the disabled encoders has been #if'ed away which will happen in a subsequent commit. Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm.c | 241 ++++++++++++++++++++++----------------------- 1 file changed, 118 insertions(+), 123 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index 94e1fade28..f9e092af2d 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -924,12 +924,9 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, const uint8_t *buf = avpkt->data; int buf_size = avpkt->size; ADPCMDecodeContext *c = avctx->priv_data; - ADPCMChannelStatus *cs; - int n, m, channel, i; int16_t *samples; int16_t **samples_p; int st; /* stereo */ - int count1, count2; int nb_samples, coded_samples, approx_nb_samples, ret; GetByteContext gb; @@ -961,10 +958,10 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, case AV_CODEC_ID_ADPCM_IMA_QT: /* In QuickTime, IMA is encoded by chunks of 34 bytes (=64 samples). Channel data is interleaved per-chunk. */ - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &(c->status[channel]); int predictor; int step_index; - cs = &(c->status[channel]); /* (pppppp) (piiiiiii) */ /* Bits 15-7 are the _top_ 9 bits of the 16-bit initial predictor value */ @@ -992,7 +989,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, samples = samples_p[channel]; - for (m = 0; m < 64; m += 2) { + for (int m = 0; m < 64; m += 2) { int byte = bytestream2_get_byteu(&gb); samples[m ] = adpcm_ima_qt_expand_nibble(cs, byte & 0x0F); samples[m + 1] = adpcm_ima_qt_expand_nibble(cs, byte >> 4 ); @@ -1000,8 +997,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_WAV: - for(i=0; ichannels; i++){ - cs = &(c->status[i]); + for (int i = 0; i < avctx->channels; i++) { + ADPCMChannelStatus *cs = &(c->status[i]); cs->predictor = samples_p[i][0] = sign_extend(bytestream2_get_le16u(&gb), 16); cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1018,20 +1015,18 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, uint8_t temp[20 + AV_INPUT_BUFFER_PADDING_SIZE] = { 0 }; GetBitContext g; - for (n = 0; n < (nb_samples - 1) / samples_per_block; n++) { - for (i = 0; i < avctx->channels; i++) { - int j; - - cs = &c->status[i]; + for (int n = 0; n < (nb_samples - 1) / samples_per_block; n++) { + for (int i = 0; i < avctx->channels; i++) { + ADPCMChannelStatus *cs = &c->status[i]; samples = &samples_p[i][1 + n * samples_per_block]; - for (j = 0; j < block_size; j++) { + for (int j = 0; j < block_size; j++) { temp[j] = buf[4 * avctx->channels + block_size * n * avctx->channels + (j % 4) + (j / 4) * (avctx->channels * 4) + i * 4]; } ret = init_get_bits8(&g, (const uint8_t *)&temp, block_size); if (ret < 0) return ret; - for (m = 0; m < samples_per_block; m++) { + for (int m = 0; m < samples_per_block; m++) { samples[m] = adpcm_ima_wav_expand_nibble(cs, &g, avctx->bits_per_coded_sample); } @@ -1039,11 +1034,11 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } bytestream2_skip(&gb, avctx->block_align - avctx->channels * 4); } else { - for (n = 0; n < (nb_samples - 1) / 8; n++) { - for (i = 0; i < avctx->channels; i++) { - cs = &c->status[i]; + for (int n = 0; n < (nb_samples - 1) / 8; n++) { + for (int i = 0; i < avctx->channels; i++) { + ADPCMChannelStatus *cs = &c->status[i]; samples = &samples_p[i][1 + n * 8]; - for (m = 0; m < 8; m += 2) { + for (int m = 0; m < 8; m += 2) { int v = bytestream2_get_byteu(&gb); samples[m ] = adpcm_ima_expand_nibble(cs, v & 0x0F, 3); samples[m + 1] = adpcm_ima_expand_nibble(cs, v >> 4 , 3); @@ -1053,10 +1048,10 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_4XM: - for (i = 0; i < avctx->channels; i++) + for (int i = 0; i < avctx->channels; i++) c->status[i].predictor = sign_extend(bytestream2_get_le16u(&gb), 16); - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { c->status[i].step_index = sign_extend(bytestream2_get_le16u(&gb), 16); if (c->status[i].step_index > 88u) { av_log(avctx, AV_LOG_ERROR, "ERROR: step_index[%d] = %i\n", @@ -1065,10 +1060,10 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { + ADPCMChannelStatus *cs = &c->status[i]; samples = (int16_t *)frame->data[i]; - cs = &c->status[i]; - for (n = nb_samples >> 1; n > 0; n--) { + for (int n = nb_samples >> 1; n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(cs, v & 0x0F, 4); *samples++ = adpcm_ima_expand_nibble(cs, v >> 4 , 4); @@ -1076,12 +1071,12 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_AGM: - for (i = 0; i < avctx->channels; i++) + for (int i = 0; i < avctx->channels; i++) c->status[i].predictor = sign_extend(bytestream2_get_le16u(&gb), 16); - for (i = 0; i < avctx->channels; i++) + for (int i = 0; i < avctx->channels; i++) c->status[i].step = sign_extend(bytestream2_get_le16u(&gb), 16); - for (n = 0; n < nb_samples >> (1 - st); n++) { + for (int n = 0; n < nb_samples >> (1 - st); n++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_agm_expand_nibble(&c->status[0], v & 0xF); *samples++ = adpcm_agm_expand_nibble(&c->status[st], v >> 4 ); @@ -1092,7 +1087,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, int block_predictor; if (avctx->channels > 2) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel]; block_predictor = bytestream2_get_byteu(&gb); if (block_predictor > 6) { @@ -1107,7 +1102,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, c->status[channel].sample2 = sign_extend(bytestream2_get_le16u(&gb), 16); *samples++ = c->status[channel].sample2; *samples++ = c->status[channel].sample1; - for(n = (nb_samples - 2) >> 1; n > 0; n--) { + for (int n = (nb_samples - 2) >> 1; n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ms_expand_nibble(&c->status[channel], byte >> 4 ); *samples++ = adpcm_ms_expand_nibble(&c->status[channel], byte & 0x0F); @@ -1146,7 +1141,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, if (st) *samples++ = c->status[1].sample2; *samples++ = c->status[0].sample1; if (st) *samples++ = c->status[1].sample1; - for(n = (nb_samples - 2) >> (1 - st); n > 0; n--) { + for (int n = (nb_samples - 2) >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ms_expand_nibble(&c->status[0 ], byte >> 4 ); *samples++ = adpcm_ms_expand_nibble(&c->status[st], byte & 0x0F); @@ -1155,7 +1150,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, break; } case AV_CODEC_ID_ADPCM_MTAF: - for (channel = 0; channel < avctx->channels; channel+=2) { + for (int channel = 0; channel < avctx->channels; channel += 2) { bytestream2_skipu(&gb, 4); c->status[channel ].step = bytestream2_get_le16u(&gb) & 0x1f; c->status[channel + 1].step = bytestream2_get_le16u(&gb) & 0x1f; @@ -1163,12 +1158,12 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, bytestream2_skipu(&gb, 2); c->status[channel + 1].predictor = sign_extend(bytestream2_get_le16u(&gb), 16); bytestream2_skipu(&gb, 2); - for (n = 0; n < nb_samples; n+=2) { + for (int n = 0; n < nb_samples; n += 2) { int v = bytestream2_get_byteu(&gb); samples_p[channel][n ] = adpcm_mtaf_expand_nibble(&c->status[channel], v & 0x0F); samples_p[channel][n + 1] = adpcm_mtaf_expand_nibble(&c->status[channel], v >> 4 ); } - for (n = 0; n < nb_samples; n+=2) { + for (int n = 0; n < nb_samples; n += 2) { int v = bytestream2_get_byteu(&gb); samples_p[channel + 1][n ] = adpcm_mtaf_expand_nibble(&c->status[channel + 1], v & 0x0F); samples_p[channel + 1][n + 1] = adpcm_mtaf_expand_nibble(&c->status[channel + 1], v >> 4 ); @@ -1176,8 +1171,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_DK4: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = *samples++ = sign_extend(bytestream2_get_le16u(&gb), 16); cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); if (cs->step_index > 88u){ @@ -1186,7 +1181,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } } - for (n = (nb_samples - 1) >> (1 - st); n > 0; n--) { + for (int n = (nb_samples - 1) >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0 ], v >> 4 , 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], v & 0x0F, 3); @@ -1257,8 +1252,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, break; } case AV_CODEC_ID_ADPCM_IMA_ISS: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); if (cs->step_index > 88u){ @@ -1268,7 +1263,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v1, v2; int v = bytestream2_get_byteu(&gb); /* nibbles are swapped for mono */ @@ -1284,8 +1279,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_MOFLEX: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); if (cs->step_index > 88u){ @@ -1296,9 +1291,9 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } for (int subframe = 0; subframe < nb_samples / 256; subframe++) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel] + 256 * subframe; - for (n = 0; n < 256; n += 2) { + for (int n = 0; n < 256; n += 2) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3); @@ -1307,11 +1302,11 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_DAT4: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; samples = samples_p[channel]; bytestream2_skip(&gb, 4); - for (n = 0; n < nb_samples; n += 2) { + for (int n = 0; n < nb_samples; n += 2) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(cs, v >> 4 , 3); *samples++ = adpcm_ima_expand_nibble(cs, v & 0x0F, 3); @@ -1319,22 +1314,22 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_APC: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], v >> 4 , 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], v & 0x0F, 3); } break; case AV_CODEC_ID_ADPCM_IMA_SSI: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[0], v >> 4 ); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[st], v & 0x0F); } break; case AV_CODEC_ID_ADPCM_IMA_APM: - for (n = nb_samples / 2; n > 0; n--) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int n = nb_samples / 2; n > 0; n--) { + for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[channel], v >> 4 ); samples[st] = adpcm_ima_qt_expand_nibble(&c->status[channel], v & 0x0F); @@ -1343,8 +1338,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_ALP: - for (n = nb_samples / 2; n > 0; n--) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int n = nb_samples / 2; n > 0; n--) { + for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_alp_expand_nibble(&c->status[channel], v >> 4 , 2); samples[st] = adpcm_ima_alp_expand_nibble(&c->status[channel], v & 0x0F, 2); @@ -1353,9 +1348,9 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_CUNNING: - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { int16_t *smp = samples_p[channel]; - for (n = 0; n < nb_samples / 2; n++) { + for (int n = 0; n < nb_samples / 2; n++) { int v = bytestream2_get_byteu(&gb); *smp++ = adpcm_ima_cunning_expand_nibble(&c->status[channel], v & 0x0F); *smp++ = adpcm_ima_cunning_expand_nibble(&c->status[channel], v >> 4); @@ -1363,15 +1358,15 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_OKI: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_oki_expand_nibble(&c->status[0], v >> 4 ); *samples++ = adpcm_ima_oki_expand_nibble(&c->status[st], v & 0x0F); } break; case AV_CODEC_ID_ADPCM_IMA_RAD: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); if (cs->step_index > 88u){ @@ -1380,34 +1375,34 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } } - for (n = 0; n < nb_samples / 2; n++) { + for (int n = 0; n < nb_samples / 2; n++) { int byte[2]; byte[0] = bytestream2_get_byteu(&gb); if (st) byte[1] = bytestream2_get_byteu(&gb); - for(channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { *samples++ = adpcm_ima_expand_nibble(&c->status[channel], byte[channel] & 0x0F, 3); } - for(channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { *samples++ = adpcm_ima_expand_nibble(&c->status[channel], byte[channel] >> 4 , 3); } } break; case AV_CODEC_ID_ADPCM_IMA_WS: if (c->vqa_version == 3) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { int16_t *smp = samples_p[channel]; - for (n = nb_samples / 2; n > 0; n--) { + for (int n = nb_samples / 2; n > 0; n--) { int v = bytestream2_get_byteu(&gb); *smp++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3); *smp++ = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3); } } } else { - for (n = nb_samples / 2; n > 0; n--) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int n = nb_samples / 2; n > 0; n--) { + for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[channel], v & 0x0F, 3); samples[st] = adpcm_ima_expand_nibble(&c->status[channel], v >> 4 , 3); @@ -1441,7 +1436,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, break; } case AV_CODEC_ID_ADPCM_IMA_EA_EACS: - for (i=0; i<=st; i++) { + for (int i = 0; i <= st; i++) { c->status[i].step_index = bytestream2_get_le32u(&gb); if (c->status[i].step_index > 88u) { av_log(avctx, AV_LOG_ERROR, "ERROR: step_index[%d] = %i\n", @@ -1449,20 +1444,20 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } } - for (i=0; i<=st; i++) { + for (int i = 0; i <= st; i++) { c->status[i].predictor = bytestream2_get_le32u(&gb); if (FFABS((int64_t)c->status[i].predictor) > (1<<16)) return AVERROR_INVALIDDATA; } - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte >> 4, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte & 0x0F, 3); } break; case AV_CODEC_ID_ADPCM_IMA_EA_SEAD: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte >> 4, 6); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte & 0x0F, 6); @@ -1487,7 +1482,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, current_right_sample = sign_extend(bytestream2_get_le16u(&gb), 16); previous_right_sample = sign_extend(bytestream2_get_le16u(&gb), 16); - for (count1 = 0; count1 < nb_samples / 28; count1++) { + for (int count1 = 0; count1 < nb_samples / 28; count1++) { int byte = bytestream2_get_byteu(&gb); coeff1l = ea_adpcm_table[ byte >> 4 ]; coeff2l = ea_adpcm_table[(byte >> 4 ) + 4]; @@ -1498,7 +1493,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, shift_left = 20 - (byte >> 4); shift_right = 20 - (byte & 0x0F); - for (count2 = 0; count2 < 28; count2++) { + for (int count2 = 0; count2 < 28; count2++) { byte = bytestream2_get_byteu(&gb); next_left_sample = sign_extend(byte >> 4, 4) * (1 << shift_left); next_right_sample = sign_extend(byte, 4) * (1 << shift_right); @@ -1527,19 +1522,19 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, { int coeff[2][2], shift[2]; - for(channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { int byte = bytestream2_get_byteu(&gb); - for (i=0; i<2; i++) + for (int i = 0; i < 2; i++) coeff[channel][i] = ea_adpcm_table[(byte >> 4) + 4*i]; shift[channel] = 20 - (byte & 0x0F); } - for (count1 = 0; count1 < nb_samples / 2; count1++) { + for (int count1 = 0; count1 < nb_samples / 2; count1++) { int byte[2]; byte[0] = bytestream2_get_byteu(&gb); if (st) byte[1] = bytestream2_get_byteu(&gb); - for(i = 4; i >= 0; i-=4) { /* Pairwise samples LL RR (st) or LL LL (mono) */ - for(channel = 0; channel < avctx->channels; channel++) { + for (int i = 4; i >= 0; i-=4) { /* Pairwise samples LL RR (st) or LL LL (mono) */ + for (int channel = 0; channel < avctx->channels; channel++) { int sample = sign_extend(byte[channel] >> i, 4) * (1 << shift[channel]); sample = (sample + c->status[channel].sample1 * coeff[channel][0] + @@ -1564,17 +1559,18 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, int previous_sample, current_sample, next_sample; int coeff1, coeff2; int shift; - unsigned int channel; uint16_t *samplesC; int count = 0; int offsets[6]; - for (channel=0; channelchannels; channel++) + for (unsigned channel = 0; channel < avctx->channels; channel++) offsets[channel] = (big_endian ? bytestream2_get_be32(&gb) : bytestream2_get_le32(&gb)) + (avctx->channels + 1) * 4; - for (channel=0; channelchannels; channel++) { + for (unsigned channel = 0; channel < avctx->channels; channel++) { + int count1; + bytestream2_seek(&gb, offsets[channel], SEEK_SET); samplesC = samples_p[channel]; @@ -1592,14 +1588,14 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, current_sample = sign_extend(bytestream2_get_be16(&gb), 16); previous_sample = sign_extend(bytestream2_get_be16(&gb), 16); - for (count2=0; count2<28; count2++) + for (int count2 = 0; count2 < 28; count2++) *samplesC++ = sign_extend(bytestream2_get_be16(&gb), 16); } else { coeff1 = ea_adpcm_table[ byte >> 4 ]; coeff2 = ea_adpcm_table[(byte >> 4) + 4]; shift = 20 - (byte & 0x0F); - for (count2=0; count2<28; count2++) { + for (int count2 = 0; count2 < 28; count2++) { if (count2 & 1) next_sample = (unsigned)sign_extend(byte, 4) << shift; else { @@ -1635,12 +1631,12 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, break; } case AV_CODEC_ID_ADPCM_EA_XAS: - for (channel=0; channelchannels; channel++) { + for (int channel=0; channel < avctx->channels; channel++) { int coeff[2][4], shift[4]; int16_t *s = samples_p[channel]; - for (n = 0; n < 4; n++, s += 32) { + for (int n = 0; n < 4; n++, s += 32) { int val = sign_extend(bytestream2_get_le16u(&gb), 16); - for (i=0; i<2; i++) + for (int i = 0; i < 2; i++) coeff[i][n] = ea_adpcm_table[(val&0x0F)+4*i]; s[0] = val & ~0x0F; @@ -1649,9 +1645,9 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, s[1] = val & ~0x0F; } - for (m=2; m<32; m+=2) { + for (int m = 2; m < 32; m += 2) { s = &samples_p[channel][m]; - for (n = 0; n < 4; n++, s += 32) { + for (int n = 0; n < 4; n++, s += 32) { int level, pred; int byte = bytestream2_get_byteu(&gb); @@ -1667,8 +1663,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_ACORN: - for (channel = 0; channel < avctx->channels; channel++) { - cs = &c->status[channel]; + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); cs->step_index = bytestream2_get_le16u(&gb) & 0xFF; if (cs->step_index > 88u){ @@ -1677,7 +1673,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } } - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte & 0x0F, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte >> 4, 3); @@ -1705,7 +1701,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, return AVERROR_INVALIDDATA; } - for (n = nb_samples >> 1; n > 0; n--) { + for (int n = nb_samples >> 1; n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], v >> 4, 3); @@ -1724,7 +1720,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_IMA_SMJPEG: - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { c->status[i].predictor = sign_extend(bytestream2_get_be16u(&gb), 16); c->status[i].step_index = bytestream2_get_byteu(&gb); bytestream2_skipu(&gb, 1); @@ -1735,7 +1731,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[0 ], v >> 4 ); @@ -1743,7 +1739,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_CT: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ct_expand_nibble(&c->status[0 ], v >> 4 ); *samples++ = adpcm_ct_expand_nibble(&c->status[st], v & 0x0F); @@ -1761,7 +1757,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, nb_samples--; } if (avctx->codec->id == AV_CODEC_ID_ADPCM_SBPRO_4) { - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_sbpro_expand_nibble(&c->status[0], byte >> 4, 4, 0); @@ -1769,7 +1765,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, byte & 0x0F, 4, 0); } } else if (avctx->codec->id == AV_CODEC_ID_ADPCM_SBPRO_3) { - for (n = (nb_samples< 0; n--) { + for (int n = (nb_samples< 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_sbpro_expand_nibble(&c->status[0], byte >> 5 , 3, 0); @@ -1779,7 +1775,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, byte & 0x03, 2, 0); } } else { - for (n = nb_samples >> (2 - st); n > 0; n--) { + for (int n = nb_samples >> (2 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_sbpro_expand_nibble(&c->status[0], byte >> 6 , 2, 2); @@ -1797,16 +1793,16 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, bytestream2_seek(&gb, 0, SEEK_END); break; case AV_CODEC_ID_ADPCM_YAMAHA: - for (n = nb_samples >> (1 - st); n > 0; n--) { + for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_yamaha_expand_nibble(&c->status[0 ], v & 0x0F); *samples++ = adpcm_yamaha_expand_nibble(&c->status[st], v >> 4 ); } break; case AV_CODEC_ID_ADPCM_AICA: - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel]; - for (n = nb_samples >> 1; n > 0; n--) { + for (int n = nb_samples >> 1; n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_yamaha_expand_nibble(&c->status[channel], v & 0x0F); *samples++ = adpcm_yamaha_expand_nibble(&c->status[channel], v >> 4 ); @@ -1826,14 +1822,14 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, blocks = 1; } - for (m = 0; m < blocks; m++) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int m = 0; m < blocks; m++) { + for (int channel = 0; channel < avctx->channels; channel++) { int prev1 = c->status[channel].sample1; int prev2 = c->status[channel].sample2; samples = samples_p[channel] + m * 16; /* Read in every sample for this channel. */ - for (i = 0; i < samples_per_block; i++) { + for (int i = 0; i < samples_per_block; i++) { int byte = bytestream2_get_byteu(&gb); int scale = 1 << (byte >> 4); int index = byte & 0xf; @@ -1841,7 +1837,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, int factor2 = ff_adpcm_afc_coeffs[1][index]; /* Decode 16 samples. */ - for (n = 0; n < 16; n++) { + for (int n = 0; n < 16; n++) { int32_t sampledat; if (n & 1) { @@ -1870,7 +1866,6 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, case AV_CODEC_ID_ADPCM_THP_LE: { int table[14][16]; - int ch; #define THP_GET16(g) \ sign_extend( \ @@ -1886,17 +1881,17 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } bytestream2_init(&tb, avctx->extradata, avctx->extradata_size); - for (i = 0; i < avctx->channels; i++) - for (n = 0; n < 16; n++) + for (int i = 0; i < avctx->channels; i++) + for (int n = 0; n < 16; n++) table[i][n] = THP_GET16(tb); } else { - for (i = 0; i < avctx->channels; i++) - for (n = 0; n < 16; n++) + for (int i = 0; i < avctx->channels; i++) + for (int n = 0; n < 16; n++) table[i][n] = THP_GET16(gb); if (!c->has_status) { /* Initialize the previous sample. */ - for (i = 0; i < avctx->channels; i++) { + for (int i = 0; i < avctx->channels; i++) { c->status[i].sample1 = THP_GET16(gb); c->status[i].sample2 = THP_GET16(gb); } @@ -1906,11 +1901,11 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } - for (ch = 0; ch < avctx->channels; ch++) { + for (int ch = 0; ch < avctx->channels; ch++) { samples = samples_p[ch]; /* Read in every sample for this channel. */ - for (i = 0; i < (nb_samples + 13) / 14; i++) { + for (int i = 0; i < (nb_samples + 13) / 14; i++) { int byte = bytestream2_get_byteu(&gb); int index = (byte >> 4) & 7; unsigned int exp = byte & 0x0F; @@ -1918,7 +1913,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, int64_t factor2 = table[ch][index * 2 + 1]; /* Decode 14 samples. */ - for (n = 0; n < 14 && (i * 14 + n < nb_samples); n++) { + for (int n = 0; n < 14 && (i * 14 + n < nb_samples); n++) { int32_t sampledat; if (n & 1) { @@ -1939,11 +1934,11 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, break; } case AV_CODEC_ID_ADPCM_DTK: - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel]; /* Read in every sample for this channel. */ - for (i = 0; i < nb_samples / 28; i++) { + for (int i = 0; i < nb_samples / 28; i++) { int byte, header; if (channel) bytestream2_skipu(&gb, 1); @@ -1951,7 +1946,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, bytestream2_skipu(&gb, 3 - channel); /* Decode 28 samples. */ - for (n = 0; n < 28; n++) { + for (int n = 0; n < 28; n++) { int32_t sampledat, prev; switch (header >> 4) { @@ -1989,12 +1984,12 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, case AV_CODEC_ID_ADPCM_PSX: for (int block = 0; block < avpkt->size / FFMAX(avctx->block_align, 16 * avctx->channels); block++) { int nb_samples_per_block = 28 * FFMAX(avctx->block_align, 16 * avctx->channels) / (16 * avctx->channels); - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel] + block * nb_samples_per_block; av_assert0((block + 1) * nb_samples_per_block <= nb_samples); /* Read in every sample for this channel. */ - for (i = 0; i < nb_samples_per_block / 28; i++) { + for (int i = 0; i < nb_samples_per_block / 28; i++) { int filter, shift, flag, byte; filter = bytestream2_get_byteu(&gb); @@ -2005,7 +2000,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, flag = bytestream2_get_byteu(&gb) & 0x7; /* Decode 28 samples. */ - for (n = 0; n < 28; n++) { + for (int n = 0; n < 28; n++) { int sample = 0, scale; if (n & 1) { @@ -2046,17 +2041,17 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, * They should be 0 initially. */ for (int block = 0; block < avpkt->size / avctx->block_align; block++) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int channel = 0; channel < avctx->channels; channel++) { + ADPCMChannelStatus *cs = c->status + channel; int control, shift; samples = samples_p[channel] + block * 32; - cs = c->status + channel; /* Get the control byte and decode the samples, 2 at a time. */ control = bytestream2_get_byteu(&gb); shift = (control >> 4) + 2; - for (n = 0; n < 16; n++) { + for (int n = 0; n < 16; n++) { int sample = bytestream2_get_byteu(&gb); *samples++ = ff_adpcm_argo_expand_nibble(cs, sample >> 4, shift, control & 0x04); *samples++ = ff_adpcm_argo_expand_nibble(cs, sample >> 0, shift, control & 0x04); @@ -2065,14 +2060,14 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; case AV_CODEC_ID_ADPCM_ZORK: - for (n = 0; n < nb_samples * avctx->channels; n++) { + for (int n = 0; n < nb_samples * avctx->channels; n++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_zork_expand_nibble(&c->status[n % avctx->channels], v); } break; case AV_CODEC_ID_ADPCM_IMA_MTF: - for (n = nb_samples / 2; n > 0; n--) { - for (channel = 0; channel < avctx->channels; channel++) { + for (int n = nb_samples / 2; n > 0; n--) { + for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_mtf_expand_nibble(&c->status[channel], v >> 4); samples[st] = adpcm_ima_mtf_expand_nibble(&c->status[channel], v & 0x0F); From patchwork Thu Jun 17 02:31:50 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28448 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202118iol; Wed, 16 Jun 2021 19:37:24 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyJMt7P5bgkUPMNW/BCCqpGRPNtT0NyPfS3z6lhti9EUq0LhzyCTk4HxYMKl5c1kY1iEv8S X-Received: by 2002:aa7:cdc8:: with SMTP id h8mr3323185edw.323.1623897444197; Wed, 16 Jun 2021 19:37:24 -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 bz5si3921253ejc.12.2021.06.16.19.37.23; Wed, 16 Jun 2021 19:37:24 -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=UUhmUw9K; 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 DECE9689E9A; Thu, 17 Jun 2021 05:33:40 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074061.outbound.protection.outlook.com [40.92.74.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id CF2C2689B19 for ; Thu, 17 Jun 2021 05:33:25 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aLWSMkBxGwgxBf0lXONs1XN1g9nKdQ2N0MLOTZWhhKZQIblxshBgP8JSoyb4AzO8CqyoVUZbvEKfH9qxKOaKPctJVLCBjqa+XBKFYB9vjZ51Hed6pcIt4MfsitHzrthGYbJO0k0Nifu5g1M+RliwgWapO+XMt9y8A5TbLFopMq2USmYHeI2lbzoxpVVNA1LwfsjqXLE/Ur/bIWcqEuKJMVzKkhUGAuYpSTQyE6acDWe+Ta5ue9SmeUYU547If8ynQVob6uBSsGnkNnR0CMhFBZs+7I0r8BnkLChvLuHKDgMxDr+43JSpfqSG5mOwA0jRdF7LtadL67r+reyBLbgClA== 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-SenderADCheck; bh=WiEajiDKGFQkCH52BPfRLwqByY77bOwcVhyaiE2JCLI=; b=KtiBWlvqc+pC7WWKYNyrFS55ius9y4ySekanHSl3iTEXLJLg9rAXhCp87bQF31htWIb3/Ee6D5yt80P7+gYamHkwAgyORg9kPi1KEoUWmi9DF+6AwaC/6AUwrvzq3pLrIf/id1ZKYtMBrlD3/iIsOfvgaxUuiQ1FhsbVS/bKAMki2/yc7pmYoZrdP6tQRvUpBMiVSTD9gMezbCBkv89eS3gg1jggaPfLOVo71FJrLUYiBLPQ389ZXQzfkNlY2gp+FGPk1E45F5m2EWyUWsMJ8a9abdNQdsU5HZ5JW8yLONlVp9h+GG+eUCEum5m6X66lHwv5AFUFyKeB4q7lWBJeZg== 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=WiEajiDKGFQkCH52BPfRLwqByY77bOwcVhyaiE2JCLI=; b=UUhmUw9KOF255z6MAc+GDZtZUr+ILVjxOOM7I+lEzKznO4MVoD6xeqpbuajY6+gA6UnIo1xtlS5iWz7+sHDPerMe/WwMYKaW+jVIiRIiqG/KPJXshXixA1k99RZu5mj5E5ltjndOCHKEVCY/m4lRrYcQLiVYA0WWYsCGEt32mJwufcqp7xaEG+TFg/p7MDYh8chYk404Af7AiLTvVcp10ALSXFmYmY6e8xwLxoc2V3NQXQHIbJwc01a9niMGGabfZASRX8P2lPBwXnMDlxIuKRhbW2cUl7eIO+sWCBOQguwR1UmYHpgeGx4bp4oFy9euCaYZLUnHQrlYkgYiUFEAfQ== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::42) by HE1EUR04HT098.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::156) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:24 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:24 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:F8344DA133C779D5114A9996B6155F2B7D9AE690ECFE67F1B985EA3EA5B795BE; UpperCasedChecksum:FFC1FEB53CF675AF02CCF9462700F9ABB4A15938E4F142A09B1F3A27DCE34207; SizeAsReceived:7571; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:23 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:50 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [WUdDvMsZ9KnXT0uBK/2wl32N+wyR2d/M] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-28-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:23 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: c095ca31-ad46-4009-57c9-08d93138477a X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCpUUvezLxCsLJsE5pUO9uNQpT8ChoX3J1E3EfG/o5S2im1zWlvwoVs2lfyCkgaoRNK7/5vsTEwqhpseR2YCVt2FSSLs0CfFL9GHGJhxK8nj1rAur3zWmULc2dPXXWmOMA15FD0J6CHwRwMrKWbOUI8bvqwX9vjU4/pU+PcjTPJjYxDgcjfBgUS25eil2ubuRwsAfvqVZP6I2b+CPJG9xDPSEhxoWqTdfQhiK/mQKrYcGcHiEj1ofOIw9OiupCTM16/MSgBg4sWvAKomxrLz+6bi0bEw1QwTB58LFnICggm2ObudtYoeu2Z7JV9i+6b0nnDWDVyPcdHKhmiB4ZeUuWkmSQZ5RYeMEYZ24mOaI1zU0PANd+YKvgLMBZS5mk9yPD7HIH7XPcuRcrLoSxHPx8Z6C+6DLIYcZGlBVrwJDhLFT6n86cERQJWmlPs7QLmD04FYFdudWJ85voJsMc4PCUGtE2OTXK/Gscqbj2cMpxPeOrW6LMlV/MwM220lpenAZDCk9uOoph/Sv5XT0HgjZN67yx6S4LuafKdNdsQbr08J/DzOQFpGUIdVpJUjnyf+46vXgbrO4SkXiJNMAeZNHXy20mQdauLnbSTY+pV2nbPZIFY4Kh/bBjkWnTE0EexPPxQfzqFn9qX2pMXRK+/Uyjm04nhxf03/yuvrq5Yq5Teo3ugo47nGAglw== X-MS-TrafficTypeDiagnostic: HE1EUR04HT098: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +uRkEtFOVvO+c4vHiB3zc6BXXooffSTXuzWWdQX+JAdx3sie8b44v5tq9MyuWRpxIDECqmeqtc1Hal+0QP/MgUBnRI7LQsBK/1iUlhcM3E+K9x4eKXV4XcZcKy/geZa/Gn4s0aZY5NlszEkTBQwMapStq7KRiioA8nnsY/XukJGXSVvh0bLTxbEvFmE8t5eQ2CVinFCTrfGjYbr4ZwGcfNUX14V6f+PyDGMwqbrfq8Kg0HFFTyQC9JqxqyFDwN+85lfYwo8ZoBpLADTgcBWvLpomcK7+A9MWVQjadBtP1ywBie2YePvX5W+Fkl3CPWIB6EtuR/KEh9mU3Y8YLMsR3owq9J4pNbgcoEGGObmxOwEg/X9zrzdLYK0NX3wiotlu8VrDyXeuGzRWhEd9KiOVWg== X-MS-Exchange-AntiSpam-MessageData: RXoGmkZMnEZ09VLVpyt/aNXdQ0rYTETC3vzPuk4dDPj68VXmrdLbT09vdM4qGln9OGlVebXhiD5ysmUe8UVZCFOeS2auYJHGy4wYMDiUthlxPVqQ0FNAilM5a23BDCJeK/rvvLrTIVWz1VYfGzBXvA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c095ca31-ad46-4009-57c9-08d93138477a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:23.9204 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT098 Subject: [FFmpeg-devel] [PATCH 29/41] avcodec/adpcm: Fix indentation 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: cpcJAbIgSugY Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm.c | 76 +++++++++++++++++++++++----------------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index f9e092af2d..15aea639dc 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -1034,18 +1034,18 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } bytestream2_skip(&gb, avctx->block_align - avctx->channels * 4); } else { - for (int n = 0; n < (nb_samples - 1) / 8; n++) { - for (int i = 0; i < avctx->channels; i++) { - ADPCMChannelStatus *cs = &c->status[i]; - samples = &samples_p[i][1 + n * 8]; - for (int m = 0; m < 8; m += 2) { - int v = bytestream2_get_byteu(&gb); - samples[m ] = adpcm_ima_expand_nibble(cs, v & 0x0F, 3); - samples[m + 1] = adpcm_ima_expand_nibble(cs, v >> 4 , 3); + for (int n = 0; n < (nb_samples - 1) / 8; n++) { + for (int i = 0; i < avctx->channels; i++) { + ADPCMChannelStatus *cs = &c->status[i]; + samples = &samples_p[i][1 + n * 8]; + for (int m = 0; m < 8; m += 2) { + int v = bytestream2_get_byteu(&gb); + samples[m ] = adpcm_ima_expand_nibble(cs, v & 0x0F, 3); + samples[m + 1] = adpcm_ima_expand_nibble(cs, v >> 4 , 3); + } } } } - } break; case AV_CODEC_ID_ADPCM_4XM: for (int i = 0; i < avctx->channels; i++) @@ -1823,41 +1823,41 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } for (int m = 0; m < blocks; m++) { - for (int channel = 0; channel < avctx->channels; channel++) { - int prev1 = c->status[channel].sample1; - int prev2 = c->status[channel].sample2; + for (int channel = 0; channel < avctx->channels; channel++) { + int prev1 = c->status[channel].sample1; + int prev2 = c->status[channel].sample2; - samples = samples_p[channel] + m * 16; - /* Read in every sample for this channel. */ - for (int i = 0; i < samples_per_block; i++) { - int byte = bytestream2_get_byteu(&gb); - int scale = 1 << (byte >> 4); - int index = byte & 0xf; - int factor1 = ff_adpcm_afc_coeffs[0][index]; - int factor2 = ff_adpcm_afc_coeffs[1][index]; + samples = samples_p[channel] + m * 16; + /* Read in every sample for this channel. */ + for (int i = 0; i < samples_per_block; i++) { + int byte = bytestream2_get_byteu(&gb); + int scale = 1 << (byte >> 4); + int index = byte & 0xf; + int factor1 = ff_adpcm_afc_coeffs[0][index]; + int factor2 = ff_adpcm_afc_coeffs[1][index]; - /* Decode 16 samples. */ - for (int n = 0; n < 16; n++) { - int32_t sampledat; + /* Decode 16 samples. */ + for (int n = 0; n < 16; n++) { + int32_t sampledat; - if (n & 1) { - sampledat = sign_extend(byte, 4); - } else { - byte = bytestream2_get_byteu(&gb); - sampledat = sign_extend(byte >> 4, 4); - } + if (n & 1) { + sampledat = sign_extend(byte, 4); + } else { + byte = bytestream2_get_byteu(&gb); + sampledat = sign_extend(byte >> 4, 4); + } - sampledat = ((prev1 * factor1 + prev2 * factor2) >> 11) + - sampledat * scale; - *samples = av_clip_int16(sampledat); - prev2 = prev1; - prev1 = *samples++; + sampledat = ((prev1 * factor1 + prev2 * factor2) >> 11) + + sampledat * scale; + *samples = av_clip_int16(sampledat); + prev2 = prev1; + prev1 = *samples++; + } } - } - c->status[channel].sample1 = prev1; - c->status[channel].sample2 = prev2; - } + c->status[channel].sample1 = prev1; + c->status[channel].sample2 = prev2; + } } bytestream2_seek(&gb, 0, SEEK_END); break; From patchwork Thu Jun 17 02:31:51 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28435 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202425iol; Wed, 16 Jun 2021 19:37:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzToahO+ziuP9/G4wlwGFl8xA5Rie7sF/YsC5o2Bgye8ZYyz+Vcf3BZkAkA2+++6DW2jRE0 X-Received: by 2002:a50:d64a:: with SMTP id c10mr3485699edj.199.1623897478323; Wed, 16 Jun 2021 19:37:58 -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 d24si3937767ejo.430.2021.06.16.19.37.58; Wed, 16 Jun 2021 19:37:58 -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=ndhsh0sj; 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 5DBAC689B8C; Thu, 17 Jun 2021 05:33:44 +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-oln040092073081.outbound.protection.outlook.com [40.92.73.81]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E8253689B7F for ; Thu, 17 Jun 2021 05:33:26 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nc6KxYK/6uuHbWDIW0QiYAZdbYKxskKGBWwzCwvPh4UQ7sPqWsFBSE7dB9mTtXsYU3/YMKGsREtOwSfFbq7BepKxE/Gl0gSOPhwCZMg3B0z1+bn2vbktAmnGJ8UvxC9TYIMoV53+USgbP5LQWFzGV5imVsFWTX1bs/E0kxG5OAiDYFdIOgIZBGN5/AeJMWtDMBm/j9OeTOhSPKBouLC3y8S0grJ/WLSDyU0tT9I+DZI0RKiXfdJiDBkK7OcxhxyB4gTR3k9xuGWhaFGRfbO/BwX7YIE6b/5e+0KmHlUQU3R1e8qnO+F1V8ZH4CpwsE0ZrMaOimGThtMSNl/f559I+A== 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-SenderADCheck; bh=UYWtTCkJCb18fhkHXqS1A1qW0j1CjY6UR3hCs9GLLzU=; b=lLXFV8MWxeL3W53EDEnoa7+RiOG9h0Yd/0pTKkBkT7XbphYGKDfdz9XgUyYmPky4VzqnFpMgBX9h/r9vMzxBHqy6YLLoM5ew71UM20xrGxAaEyK6auDJ928wq0BGFvy+35U1a4Mg7F7hrjIl4vUcg52Pzkng5BFETsHWIA8AswDiUYXhv6ocMVbseqBehnK/WpcXqdYICE4kIjZNVNTga5ipB1I1VGQYWPH5DHX12ExO5Nj+Otlz+Wdj0sjLa8cp+rRsbB5hBO3RZMKmsqHHBU86HsXrBwu1ahsYAPA/+oA3GgD7DvLjaZkL1mGNVHG50bAEDs7v7AVn5kAtMzlirQ== 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=UYWtTCkJCb18fhkHXqS1A1qW0j1CjY6UR3hCs9GLLzU=; b=ndhsh0sj5z/K4YQfaVL+oNfXRN+PE9gg4LsXJJ0nr6sWED89HuzzI+O7bvy7XcOFWzpTws5e3Jtu5BGmSADW+5iuyIN3lm/rxCVFJDxCYjiGLtVQVhfUzR7ty2+EEZQpQFINKZBp5N1xDbuhg6ax8UYzZYn1w0NzZXeR4ZV29u0HKpGXUTyHtDnRfVF7k+O66ZnI98Edz4ER5Q9kN4INDTRLNCU+PPleLZ69sEUpCSjvAhPAXCbj89bzI5LCT4LaSzlyJq0NiyaHoOJxgdYPnf3LlLK8MlSA0yfBCZzTbixmY7LiluxWxp8h1ZDbR2aRriP1YggA0pqWdVNhnmMliA== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4a) by HE1EUR04HT004.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:24 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:24 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:EDBADE0224003C63742009AC57D08AEFB7A0AE548341F714975F289C17E778C6; UpperCasedChecksum:5E3B31E8AFDA9DFFF638AAAF3C04C0CA640EAD8E1E8AB79C308579F09567951C; SizeAsReceived:7576; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:24 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:51 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [aEz7c6oFIxCD7PBFfuPrIKForlTWRR3y] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-29-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:24 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: c65525c4-d453-4dac-3eaa-08d9313847d5 X-MS-Exchange-SLBlob-MailProps: pt8ZUcDWjMV3HWGlskmlUsL8gpBzaNHih4rXU3LMvZ5RcZ76XNDTN04u7/RVD7cLEpeuTRq4iGyl3BpKKy2HgzwCPrYV2rp+Y2VYTPM+xhfL9HGuZa8+pXgUCw/RgdEx7VUiatqEdig4SBnPdhM9/HqPyV3JoLozFphUpieixH3f8pknh+V5hKUVbUilys1UYivVRQmc/ZAe3N7DyqcOx4ghXiIAChxSMiulKVjKlv+HTn2dly3vAawzA2nEw8f3xhjlD6etKfPZqqK9/E9tNKOnVhemZDG6clY4PVEh3lDJ6sort7ZGLW91aA7rCjEuATvJI8w3PYtqG3eOwfaBhjqQsHq1VX1S34e8u94e3yLBTnG70aqqDViapxLWQ8c4sMFpqITC3VsbLDpMlcRW1snentojBbCtnd7RlabNQuBJcpYNtEjTMrZa5vu7IeWorgWsQOmybktYrKn+cJqqsIt5AZ7QQVluoaj5qzPeBtEwMw2VXNxUx1J3unQpxcQr5sn/Yoc+u6jHPcxuDlnzTBmuK7INS4pp8xyPlMT/eOGqSrvr8jsBxBGL7t9Hbe87ceuJrEgCOFZ7jGLNXhKSWa2owYQZR4DXBhXQUMBnfgxBiCGMm175brjlCWsB93GOO1Ve8xCFDHjiZr89G+pXh8UeDq8U3kLrhR+gglHONiIVhDbPcZKA84ZZwyyZK9LvQkVkAzj6Z8cP/+f5WmJy63z1clg/uXMYejEB7kGxubj1m7A6Q9uTYjIGJMyB6E/o5Wn8FbaVtN3eS2AmKknlYsYBZAZLKbozenW898uT1+DOUoE5k+KyWMmWllk0uVvOPaNscVT5BxO/++ibigBjXvFpOEtYtZd9/j9vLdfWwxdLwKwN+kwoM7O9lQRT4es/vYw5elAaoGkGmEWUzl7n8BjFdsabc11ApwKziHIdumX4ATGRI/JYY63zqp1UnGqU X-MS-TrafficTypeDiagnostic: HE1EUR04HT004: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: E+P6Ma2vQNW4pvkXVB/SBjzDzs4yWps+m00TxePiXuOjSO7UNb5nLdE4CaBChcWmMmYnClXWi5MzDlUWG6wILbc1Cw75TM8TXZvFFlmikyzqjmcb0rAWkVnxFya7XcRR5Ft2kIb56hszcA+PcZKkqE1vs9ZUx0Pi4LCzOU18siw9bpnvjCsoD0KCdRv4achm8bdT9MPaiymlp3rIPusmWXukfkAkrtUbxkAmQHIV+N+zBtRYT6ibWVgu9Zr/CpMqjVT/tby8qx8quIoD91vGDU75NN1l0ieMLJ9dasdC/2/WHahLbLneZSNv+n/2AcIAfAovwjTwiChLPZoZh023U2KiulS4AKIJHrdbDpCN9mph8XPGiJe+5NXwW+Q+jnwp6pEFfq4G8RS5HhlXgVLmLH2Gp8ANtoVjqloF8pKDs0yBT9XDIOg21zPepew9PzGjjABFozNoySJKlNOmoK9aHA== X-MS-Exchange-AntiSpam-MessageData: y7MDm4x1ZceacD53iEd/PVMB/0sr2w8L63YB3wUTWr3kmzc79Pshk1QdYZdEWNEtur2ZPArpuORLOugQESeH4+zoRJNavXMgwR5ZJOF4Vjx3+WBOaeEDOtzVSdSeQGp/78F4h7j5ZxBlZz4gmOw+mA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c65525c4-d453-4dac-3eaa-08d9313847d5 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:24.5771 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT004 Subject: [FFmpeg-devel] [PATCH 30/41] avcodec/adpcm: Disable dead code 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: aGQArgObNnx3 This change ensures that the linker can drop adpcm_data.o if no decoder that actually uses anything from there is enabled. Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm.c | 212 +++++++++++++++++++++++---------------------- 1 file changed, 108 insertions(+), 104 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index 15aea639dc..171b059409 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -61,6 +61,18 @@ * readstr http://www.geocities.co.jp/Playtown/2004/ */ +#define CASE_0(codec_id, ...) +#define CASE_1(codec_id, ...) \ + case codec_id: \ + { __VA_ARGS__ } \ + break; +#define CASE_2(enabled, codec_id, ...) \ + CASE_ ## enabled(codec_id, __VA_ARGS__) +#define CASE_3(config, codec_id, ...) \ + CASE_2(config, codec_id, __VA_ARGS__) +#define CASE(codec, ...) \ + CASE_3(CONFIG_ ## codec ## _DECODER, AV_CODEC_ID_ ## codec, __VA_ARGS__) + /* These are for CD-ROM XA ADPCM */ static const int8_t xa_adpcm_table[5][2] = { { 0, 0 }, @@ -821,8 +833,7 @@ static int get_nb_samples(AVCodecContext *avctx, GetByteContext *gb, buf_size = FFMIN(buf_size, avctx->block_align); nb_samples = (buf_size - 4 * ch) * 2 / ch; break; - case AV_CODEC_ID_ADPCM_IMA_WAV: - { + CASE(ADPCM_IMA_WAV, int bsize = ff_adpcm_ima_block_sizes[avctx->bits_per_coded_sample - 2]; int bsamples = ff_adpcm_ima_block_samples[avctx->bits_per_coded_sample - 2]; if (avctx->block_align > 0) @@ -830,8 +841,7 @@ static int get_nb_samples(AVCodecContext *avctx, GetByteContext *gb, if (buf_size < 4 * ch) return AVERROR_INVALIDDATA; nb_samples = 1 + (buf_size - 4 * ch) / (bsize * ch) * bsamples; - break; - } + ) /* End of CASE */ case AV_CODEC_ID_ADPCM_MS: if (avctx->block_align > 0) buf_size = FFMIN(buf_size, avctx->block_align); @@ -955,7 +965,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, st = avctx->channels == 2 ? 1 : 0; switch(avctx->codec->id) { - case AV_CODEC_ID_ADPCM_IMA_QT: + CASE(ADPCM_IMA_QT, /* In QuickTime, IMA is encoded by chunks of 34 bytes (=64 samples). Channel data is interleaved per-chunk. */ for (int channel = 0; channel < avctx->channels; channel++) { @@ -995,8 +1005,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, samples[m + 1] = adpcm_ima_qt_expand_nibble(cs, byte >> 4 ); } } - break; - case AV_CODEC_ID_ADPCM_IMA_WAV: + ) /* End of CASE */ + CASE(ADPCM_IMA_WAV, for (int i = 0; i < avctx->channels; i++) { ADPCMChannelStatus *cs = &(c->status[i]); cs->predictor = samples_p[i][0] = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1046,8 +1056,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } } - break; - case AV_CODEC_ID_ADPCM_4XM: + ) /* End of CASE */ + CASE(ADPCM_4XM, for (int i = 0; i < avctx->channels; i++) c->status[i].predictor = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1069,8 +1079,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(cs, v >> 4 , 4); } } - break; - case AV_CODEC_ID_ADPCM_AGM: + ) /* End of CASE */ + CASE(ADPCM_AGM, for (int i = 0; i < avctx->channels; i++) c->status[i].predictor = sign_extend(bytestream2_get_le16u(&gb), 16); for (int i = 0; i < avctx->channels; i++) @@ -1081,9 +1091,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_agm_expand_nibble(&c->status[0], v & 0xF); *samples++ = adpcm_agm_expand_nibble(&c->status[st], v >> 4 ); } - break; - case AV_CODEC_ID_ADPCM_MS: - { + ) /* End of CASE */ + CASE(ADPCM_MS, int block_predictor; if (avctx->channels > 2) { @@ -1147,9 +1156,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ms_expand_nibble(&c->status[st], byte & 0x0F); } } - break; - } - case AV_CODEC_ID_ADPCM_MTAF: + ) /* End of CASE */ + CASE(ADPCM_MTAF, for (int channel = 0; channel < avctx->channels; channel += 2) { bytestream2_skipu(&gb, 4); c->status[channel ].step = bytestream2_get_le16u(&gb) & 0x1f; @@ -1169,8 +1177,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, samples_p[channel + 1][n + 1] = adpcm_mtaf_expand_nibble(&c->status[channel + 1], v >> 4 ); } } - break; - case AV_CODEC_ID_ADPCM_IMA_DK4: + ) /* End of CASE */ + CASE(ADPCM_IMA_DK4, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = *samples++ = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1186,9 +1194,19 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(&c->status[0 ], v >> 4 , 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], v & 0x0F, 3); } - break; - case AV_CODEC_ID_ADPCM_IMA_DK3: - { + ) /* End of CASE */ + + /* DK3 ADPCM support macro */ +#define DK3_GET_NEXT_NIBBLE() \ + if (decode_top_nibble_next) { \ + nibble = last_byte >> 4; \ + decode_top_nibble_next = 0; \ + } else { \ + last_byte = bytestream2_get_byteu(&gb); \ + nibble = last_byte & 0x0F; \ + decode_top_nibble_next = 1; \ + } + CASE(ADPCM_IMA_DK3, int last_byte = 0; int nibble; int decode_top_nibble_next = 0; @@ -1208,17 +1226,6 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, /* sign extend the predictors */ diff_channel = c->status[1].predictor; - /* DK3 ADPCM support macro */ -#define DK3_GET_NEXT_NIBBLE() \ - if (decode_top_nibble_next) { \ - nibble = last_byte >> 4; \ - decode_top_nibble_next = 0; \ - } else { \ - last_byte = bytestream2_get_byteu(&gb); \ - nibble = last_byte & 0x0F; \ - decode_top_nibble_next = 1; \ - } - while (samples < samples_end) { /* for this algorithm, c->status[0] is the sum channel and @@ -1249,9 +1256,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, if ((bytestream2_tell(&gb) & 1)) bytestream2_skip(&gb, 1); - break; - } - case AV_CODEC_ID_ADPCM_IMA_ISS: + ) /* End of CASE */ + CASE(ADPCM_IMA_ISS, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1277,8 +1283,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(&c->status[0 ], v1, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], v2, 3); } - break; - case AV_CODEC_ID_ADPCM_IMA_MOFLEX: + ) /* End of CASE */ + CASE(ADPCM_IMA_MOFLEX, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1300,8 +1306,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } } - break; - case AV_CODEC_ID_ADPCM_IMA_DAT4: + ) /* End of CASE */ + CASE(ADPCM_IMA_DAT4, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; samples = samples_p[channel]; @@ -1312,22 +1318,22 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(cs, v & 0x0F, 3); } } - break; - case AV_CODEC_ID_ADPCM_IMA_APC: + ) /* End of CASE */ + CASE(ADPCM_IMA_APC, for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], v >> 4 , 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], v & 0x0F, 3); } - break; - case AV_CODEC_ID_ADPCM_IMA_SSI: + ) /* End of CASE */ + CASE(ADPCM_IMA_SSI, for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[0], v >> 4 ); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[st], v & 0x0F); } - break; - case AV_CODEC_ID_ADPCM_IMA_APM: + ) /* End of CASE */ + CASE(ADPCM_IMA_APM, for (int n = nb_samples / 2; n > 0; n--) { for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); @@ -1336,8 +1342,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } samples += avctx->channels; } - break; - case AV_CODEC_ID_ADPCM_IMA_ALP: + ) /* End of CASE */ + CASE(ADPCM_IMA_ALP, for (int n = nb_samples / 2; n > 0; n--) { for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); @@ -1346,8 +1352,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } samples += avctx->channels; } - break; - case AV_CODEC_ID_ADPCM_IMA_CUNNING: + ) /* End of CASE */ + CASE(ADPCM_IMA_CUNNING, for (int channel = 0; channel < avctx->channels; channel++) { int16_t *smp = samples_p[channel]; for (int n = 0; n < nb_samples / 2; n++) { @@ -1356,15 +1362,15 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *smp++ = adpcm_ima_cunning_expand_nibble(&c->status[channel], v >> 4); } } - break; - case AV_CODEC_ID_ADPCM_IMA_OKI: + ) /* End of CASE */ + CASE(ADPCM_IMA_OKI, for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_oki_expand_nibble(&c->status[0], v >> 4 ); *samples++ = adpcm_ima_oki_expand_nibble(&c->status[st], v & 0x0F); } - break; - case AV_CODEC_ID_ADPCM_IMA_RAD: + ) /* End of CASE */ + CASE(ADPCM_IMA_RAD, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; cs->step_index = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1388,8 +1394,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(&c->status[channel], byte[channel] >> 4 , 3); } } - break; - case AV_CODEC_ID_ADPCM_IMA_WS: + ) /* End of CASE */ + CASE(ADPCM_IMA_WS, if (c->vqa_version == 3) { for (int channel = 0; channel < avctx->channels; channel++) { int16_t *smp = samples_p[channel]; @@ -1411,9 +1417,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } bytestream2_seek(&gb, 0, SEEK_END); - break; - case AV_CODEC_ID_ADPCM_XA: - { + ) /* End of CASE */ + CASE(ADPCM_XA, int16_t *out0 = samples_p[0]; int16_t *out1 = samples_p[1]; int samples_per_block = 28 * (3 - avctx->channels) * 4; @@ -1433,9 +1438,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, if (bytes_remaining > 0) { bytestream2_skip(&gb, bytes_remaining); } - break; - } - case AV_CODEC_ID_ADPCM_IMA_EA_EACS: + ) /* End of CASE */ + CASE(ADPCM_IMA_EA_EACS, for (int i = 0; i <= st; i++) { c->status[i].step_index = bytestream2_get_le32u(&gb); if (c->status[i].step_index > 88u) { @@ -1455,16 +1459,15 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte >> 4, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte & 0x0F, 3); } - break; - case AV_CODEC_ID_ADPCM_IMA_EA_SEAD: + ) /* End of CASE */ + CASE(ADPCM_IMA_EA_SEAD, for (int n = nb_samples >> (1 - st); n > 0; n--) { int byte = bytestream2_get_byteu(&gb); *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte >> 4, 6); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte & 0x0F, 6); } - break; - case AV_CODEC_ID_ADPCM_EA: - { + ) /* End of CASE */ + CASE(ADPCM_EA, int previous_left_sample, previous_right_sample; int current_left_sample, current_right_sample; int next_left_sample, next_right_sample; @@ -1515,11 +1518,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } bytestream2_skip(&gb, 2); // Skip terminating 0x0000 - - break; - } - case AV_CODEC_ID_ADPCM_EA_MAXIS_XA: - { + ) /* End of CASE */ + CASE(ADPCM_EA_MAXIS_XA, int coeff[2][2], shift[2]; for (int channel = 0; channel < avctx->channels; channel++) { @@ -1546,8 +1546,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } bytestream2_seek(&gb, 0, SEEK_END); - break; - } + ) /* End of CASE */ +#if CONFIG_ADPCM_EA_R1_DECODER || CONFIG_ADPCM_EA_R2_DECODER || CONFIG_ADPCM_EA_R3_DECODER case AV_CODEC_ID_ADPCM_EA_R1: case AV_CODEC_ID_ADPCM_EA_R2: case AV_CODEC_ID_ADPCM_EA_R3: { @@ -1630,7 +1630,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, bytestream2_seek(&gb, 0, SEEK_END); break; } - case AV_CODEC_ID_ADPCM_EA_XAS: +#endif /* CONFIG_ADPCM_EA_Rx_DECODER */ + CASE(ADPCM_EA_XAS, for (int channel=0; channel < avctx->channels; channel++) { int coeff[2][4], shift[4]; int16_t *s = samples_p[channel]; @@ -1661,8 +1662,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } } - break; - case AV_CODEC_ID_ADPCM_IMA_ACORN: + ) /* End of CASE */ + CASE(ADPCM_IMA_ACORN, for (int channel = 0; channel < avctx->channels; channel++) { ADPCMChannelStatus *cs = &c->status[channel]; cs->predictor = sign_extend(bytestream2_get_le16u(&gb), 16); @@ -1678,8 +1679,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_expand_nibble(&c->status[0], byte & 0x0F, 3); *samples++ = adpcm_ima_expand_nibble(&c->status[st], byte >> 4, 3); } - break; - case AV_CODEC_ID_ADPCM_IMA_AMV: + ) /* End of CASE */ + CASE(ADPCM_IMA_AMV, av_assert0(avctx->channels == 1); /* @@ -1718,8 +1719,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, av_log(avctx, AV_LOG_WARNING, "Sample will be skipped.\n"); } } - break; - case AV_CODEC_ID_ADPCM_IMA_SMJPEG: + ) /* End of CASE */ + CASE(ADPCM_IMA_SMJPEG, for (int i = 0; i < avctx->channels; i++) { c->status[i].predictor = sign_extend(bytestream2_get_be16u(&gb), 16); c->status[i].step_index = bytestream2_get_byteu(&gb); @@ -1737,14 +1738,16 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_ima_qt_expand_nibble(&c->status[0 ], v >> 4 ); *samples++ = adpcm_ima_qt_expand_nibble(&c->status[st], v & 0xf); } - break; - case AV_CODEC_ID_ADPCM_CT: + ) /* End of CASE */ + CASE(ADPCM_CT, for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_ct_expand_nibble(&c->status[0 ], v >> 4 ); *samples++ = adpcm_ct_expand_nibble(&c->status[st], v & 0x0F); } - break; + ) /* End of CASE */ +#if CONFIG_ADPCM_SBPRO_2_DECODER || CONFIG_ADPCMSBPRO_3_DECODER || \ + CONFIG_ADPCM_SBPRO_4_DECODER case AV_CODEC_ID_ADPCM_SBPRO_4: case AV_CODEC_ID_ADPCM_SBPRO_3: case AV_CODEC_ID_ADPCM_SBPRO_2: @@ -1788,18 +1791,19 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } break; - case AV_CODEC_ID_ADPCM_SWF: +#endif /* CONFIG_ADPCM_SBPRO_x_DECODER */ + CASE(ADPCM_SWF, adpcm_swf_decode(avctx, buf, buf_size, samples); bytestream2_seek(&gb, 0, SEEK_END); - break; - case AV_CODEC_ID_ADPCM_YAMAHA: + ) /* End of CASE */ + CASE(ADPCM_YAMAHA, for (int n = nb_samples >> (1 - st); n > 0; n--) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_yamaha_expand_nibble(&c->status[0 ], v & 0x0F); *samples++ = adpcm_yamaha_expand_nibble(&c->status[st], v >> 4 ); } - break; - case AV_CODEC_ID_ADPCM_AICA: + ) /* End of CASE */ + CASE(ADPCM_AICA, for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel]; for (int n = nb_samples >> 1; n > 0; n--) { @@ -1808,9 +1812,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, *samples++ = adpcm_yamaha_expand_nibble(&c->status[channel], v >> 4 ); } } - break; - case AV_CODEC_ID_ADPCM_AFC: - { + ) /* End of CASE */ + CASE(ADPCM_AFC, int samples_per_block; int blocks; @@ -1860,8 +1863,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } bytestream2_seek(&gb, 0, SEEK_END); - break; - } + ) /* End of CASE */ +#if CONFIG_ADPCM_THP_DECODER || CONFIG_ADPCM_THP_LE_DECODER case AV_CODEC_ID_ADPCM_THP: case AV_CODEC_ID_ADPCM_THP_LE: { @@ -1933,7 +1936,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } break; } - case AV_CODEC_ID_ADPCM_DTK: +#endif /* CONFIG_ADPCM_THP(_LE)_DECODER */ + CASE(ADPCM_DTK, for (int channel = 0; channel < avctx->channels; channel++) { samples = samples_p[channel]; @@ -1980,8 +1984,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, if (!channel) bytestream2_seek(&gb, 0, SEEK_SET); } - break; - case AV_CODEC_ID_ADPCM_PSX: + ) /* End of CASE */ + CASE(ADPCM_PSX, for (int block = 0; block < avpkt->size / FFMAX(avctx->block_align, 16 * avctx->channels); block++) { int nb_samples_per_block = 28 * FFMAX(avctx->block_align, 16 * avctx->channels) / (16 * avctx->channels); for (int channel = 0; channel < avctx->channels; channel++) { @@ -2021,8 +2025,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } } - break; - case AV_CODEC_ID_ADPCM_ARGO: + ) /* End of CASE */ + CASE(ADPCM_ARGO, /* * The format of each block: * uint8_t left_control; @@ -2058,14 +2062,14 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } } } - break; - case AV_CODEC_ID_ADPCM_ZORK: + ) /* End of CASE */ + CASE(ADPCM_ZORK, for (int n = 0; n < nb_samples * avctx->channels; n++) { int v = bytestream2_get_byteu(&gb); *samples++ = adpcm_zork_expand_nibble(&c->status[n % avctx->channels], v); } - break; - case AV_CODEC_ID_ADPCM_IMA_MTF: + ) /* End of CASE */ + CASE(ADPCM_IMA_MTF, for (int n = nb_samples / 2; n > 0; n--) { for (int channel = 0; channel < avctx->channels; channel++) { int v = bytestream2_get_byteu(&gb); @@ -2074,7 +2078,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, } samples += avctx->channels; } - break; + ) /* End of CASE */ default: av_assert0(0); // unsupported codec_id should not happen } From patchwork Thu Jun 17 02:31:52 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28434 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202215iol; Wed, 16 Jun 2021 19:37:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy4w4dRJdAItamwqG+Gl7Q38mv1PoOnw83Oij4mdrcC4Pme1i5YGEgniDyHQbxoA4NjE6r6 X-Received: by 2002:a05:6402:2552:: with SMTP id l18mr3445065edb.166.1623897455621; Wed, 16 Jun 2021 19:37:35 -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 24si4179796eji.692.2021.06.16.19.37.35; Wed, 16 Jun 2021 19:37:35 -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="MF/r2Ktz"; 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 E64F1689EC9; Thu, 17 Jun 2021 05:33:41 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074102.outbound.protection.outlook.com [40.92.74.102]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AA5D5689ADE for ; Thu, 17 Jun 2021 05:33:26 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S9y/T/vOfx18GZx/bjqZaPAmYZlzNH+VRhD6rwO+gxSQ9nEbvFUjI2xqLDOrKFAQSuP3gjz9JjAPPpNDjIcxneQ9Hg/A1+NxdE2eWixLYQISh2vI4Gh5g5NptXQjj4IvzBkkP/xIhDGuKbk4EYdEqmhi2E7PPNqmuTikhTKGCeRWG23e8l0pbSMkPAG45vhhEYi/wybybGq8kLzMK50NF4qv2gfSeqZE8hoxCLHHyQAjR8PYU8JJttln89TmhA9HRM60znMe3I3LBlDaE7Vss+AM9CRQFgB3jJ91DdvJ09FHxV26NRR0Wm/QyuGR2gw82zOZ2tpi/gvz/M17z40vhg== 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-SenderADCheck; bh=ZEqjrWjoYY3rtItmvRGVsW0rfiBHmEdrmnlAnxXq2Jk=; b=BJxtckK7P4i3eUCgxasnEO3a3urZ1zYxWmva7gFzRdGYAPLoTO65nWNmR869eDJHJU5fA5Z6wynl0uXX2oNdxlvPaVMYBtzMcNV5deomcVBNbjAKpS3F6fW7jXAYrfPSeQwdHkwhLHUBgHKOApNVg//v+xFll+fcQyQRjrB7MDLxwlbWxDh6qHvpxwZOYb4DDc4vYKkBBhcdyM0/TyQdDsDQZn2/dn5Poycx/YRXPkEmjoeO5H9e6c4yWKQlUpJQ2Py0bDZXktLSP8NCdSLRmUsQd1+qzhIj6vh7h57wLkts0KjCXPjvZdV/Uk2ObyLyuXNazCfXVCYx2Jv+BAlIdA== 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=ZEqjrWjoYY3rtItmvRGVsW0rfiBHmEdrmnlAnxXq2Jk=; b=MF/r2KtzQ3YaCmUsvw2hv7wa2lgVIXq7dvrGPIbVzP1WEFQqdU1ySKbKE3wabRAkd+jeqR0oHrd8BzqVAAhuI2oJxDK9cLabtbddnHeHGUhouYEwzy2702WwEQmKHmAfnH7fS75XvadlgeaASJxZqPwk0//sPkE5RvzjPjYp8Brj7Qc2h8shmNnJQelkmANP2m8Iwu/I+rzxEYlSpW83RUjNo4Rd5568ZseFeSzUUfzy+NF0F0agLX3ZmkoBrV2mhiu5k2Qa2v9RrP2xT9WrSbvggC0sGXKAFsw2ZJ0lj3H14x6hK0op9oUavNhTxgbjnE6eebbwuRaNbYmRUuhg9g== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT075.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:25 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:25 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:7A9086FA9F5A430B1A3197FE7BA94C6D99F518E26DF4CC172B957EA30FF5DE5D; UpperCasedChecksum:F60E656D9CA8783A2BF8426E92FF07415BF560C4030FF783F7B7FD5FA2594EF7; SizeAsReceived:7589; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:25 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:52 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [T6Lye4+ma5DB6AsbPm8BaJYpjujHyk/W] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-30-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:24 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 2dcbe4b7-64b6-41d8-db88-08d931384836 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtW0w0pXHJV/9f2CcqVc1lNGNvHx0tpjjfigpXcA7f+A8B7sNZFKhp41Qw1mNLaVyfR+xJMxoHDEYVxbVT8PPnCnRaJ2IJdb0CvR57qFDsu6+3iFw3iaANUDK7rLsDqqz20yVY1J6cZsbs1b2vkO8RdUN0GJZdk8g67OrP/4XN4bGV9OsFiR9WzhoeG3mP1NKnJGV8U9k+tX3Py1SXOmmIdy7FeZdlpOAa+c+bKjqIFR67cgzumccNjfAVxDw/pObR2OBgl1thngJpROD9r6LKAHvhs0Lfr/8XKVOa9HGT+r7EQOLs7wg4aACQEO+ccYyM7TkP7yRIbEFYsS10pw7+G2zaQrnt+pekbjAbnfjTroyPkgNOEwH6UJXlybipHebFvFcg39ZhJjsDn/UpQoHY2N8N2bNHmoa1zAY+Eemzh1nAeu74kCVViMABR1D/sHa3Yydd/MoFKXJhabtjahw1+Uh1gGc8Eg2mIBlI73Rn5QCdO0ll8DvEox/8EHBY/fAztmDu4jhz/KkAR8yCR4Hb+WQzFAPx6jqvlotpIQRiUkTDIST8pY+ej9lynkg05KqR+xUnSIo+yqZxauMp1wJz2omlmB7LX7NupbFDxEF8GJIESUhDH/KIugBPLCppd7xngPRUKz0Ju6dqUyo6XYPoU8bKFLzrpjDOigLU/GNO2lAKxDdWDmVnh/zO6B4Z5vybYyYNGn1THOcfvWww7X6/9BQqJo2sao2g4SyZNsp11ueE= X-MS-TrafficTypeDiagnostic: HE1EUR04HT075: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cNEcRblT7qdF4JzI54JepJIlaNM+Iud8dm1UL+Jr8xR+2YikstT1Tcw4VBW6IiEeSyJu+uGJAjq0uwfd4dp7NVdXHPYIPAsfr0C7M4fMutEEyaKR8BLiNCtze51qJwJjQZBfcStI0DRPlCvnMgSoF3P/w9+6P+kxXR4kWazxfWTvWIN/oSLqdR5P3jqQDh9FM9etYNcy+u7PgIU21B5LzE93cKdc/WXSyXpdXFH3SwxSvyG+DbbOOrvA4tvJIvHIpDtOXwNYjdWi2u6JbY8ZfQ92ODsAmrci4WKGw/6p5ooz5tWkDKOpjVZzs2uzM87Snh/QBK9pTg5UaE849nMCe0cdVpNCfLW8kszj7AJ/DU5aldxTlZBxsVfic2zXRocfAaSgiQlPCOGX2fK9Lv6+1A== X-MS-Exchange-AntiSpam-MessageData: 5JXLOv8VUYt/T3Fp90O23uaO5zoe+MwKOabnbvQfcmurCuuzYCmkHCXRsA+XMn/VOu+vFv4X0sd3oG3nQlRCng0KIYvtUBz4Z6noQ/j1tWPwz1A+jY5lJDEuA1NWnIqqik5FTw2kSoPeIU9Jy+0B6Q== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2dcbe4b7-64b6-41d8-db88-08d931384836 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:25.1199 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT075 Subject: [FFmpeg-devel] [PATCH 31/41] avcodec/adpcm: Don't include disabled AVCodecs 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: cvKTFwixsiop Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm.c | 102 ++++++++++++++++++++++++--------------------- 1 file changed, 55 insertions(+), 47 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index 171b059409..3a16acfb68 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -2148,7 +2148,8 @@ static const enum AVSampleFormat sample_fmts_both[] = { AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S16P, AV_SAMPLE_FMT_NONE }; -#define ADPCM_DECODER(id_, sample_fmts_, name_, long_name_) \ +#define ADPCM_DECODER_0(id_, sample_fmts_, name_, long_name_) +#define ADPCM_DECODER_1(id_, sample_fmts_, name_, long_name_) \ const AVCodec ff_ ## name_ ## _decoder = { \ .name = #name_, \ .long_name = NULL_IF_CONFIG_SMALL(long_name_), \ @@ -2162,51 +2163,58 @@ const AVCodec ff_ ## name_ ## _decoder = { \ .sample_fmts = sample_fmts_, \ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, \ } +#define ADPCM_DECODER_2(enabled, codec_id, name, sample_fmts, long_name) \ + ADPCM_DECODER_ ## enabled(codec_id, name, sample_fmts, long_name) +#define ADPCM_DECODER_3(config, codec_id, name, sample_fmts, long_name) \ + ADPCM_DECODER_2(config, codec_id, name, sample_fmts, long_name) +#define ADPCM_DECODER(codec, name, sample_fmts, long_name) \ + ADPCM_DECODER_3(CONFIG_ ## codec ## _DECODER, AV_CODEC_ID_ ## codec, \ + name, sample_fmts, long_name) /* Note: Do not forget to add new entries to the Makefile as well. */ -ADPCM_DECODER(AV_CODEC_ID_ADPCM_4XM, sample_fmts_s16p, adpcm_4xm, "ADPCM 4X Movie"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_AFC, sample_fmts_s16p, adpcm_afc, "ADPCM Nintendo Gamecube AFC"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_AGM, sample_fmts_s16, adpcm_agm, "ADPCM AmuseGraphics Movie"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_AICA, sample_fmts_s16p, adpcm_aica, "ADPCM Yamaha AICA"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_ARGO, sample_fmts_s16p, adpcm_argo, "ADPCM Argonaut Games"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_CT, sample_fmts_s16, adpcm_ct, "ADPCM Creative Technology"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_DTK, sample_fmts_s16p, adpcm_dtk, "ADPCM Nintendo Gamecube DTK"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA, sample_fmts_s16, adpcm_ea, "ADPCM Electronic Arts"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA_MAXIS_XA, sample_fmts_s16, adpcm_ea_maxis_xa, "ADPCM Electronic Arts Maxis CDROM XA"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA_R1, sample_fmts_s16p, adpcm_ea_r1, "ADPCM Electronic Arts R1"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA_R2, sample_fmts_s16p, adpcm_ea_r2, "ADPCM Electronic Arts R2"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA_R3, sample_fmts_s16p, adpcm_ea_r3, "ADPCM Electronic Arts R3"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_EA_XAS, sample_fmts_s16p, adpcm_ea_xas, "ADPCM Electronic Arts XAS"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_ACORN, sample_fmts_s16, adpcm_ima_acorn, "ADPCM IMA Acorn Replay"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_AMV, sample_fmts_s16, adpcm_ima_amv, "ADPCM IMA AMV"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_APC, sample_fmts_s16, adpcm_ima_apc, "ADPCM IMA CRYO APC"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_APM, sample_fmts_s16, adpcm_ima_apm, "ADPCM IMA Ubisoft APM"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_CUNNING, sample_fmts_s16p, adpcm_ima_cunning, "ADPCM IMA Cunning Developments"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_DAT4, sample_fmts_s16, adpcm_ima_dat4, "ADPCM IMA Eurocom DAT4"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_DK3, sample_fmts_s16, adpcm_ima_dk3, "ADPCM IMA Duck DK3"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_DK4, sample_fmts_s16, adpcm_ima_dk4, "ADPCM IMA Duck DK4"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_EA_EACS, sample_fmts_s16, adpcm_ima_ea_eacs, "ADPCM IMA Electronic Arts EACS"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_EA_SEAD, sample_fmts_s16, adpcm_ima_ea_sead, "ADPCM IMA Electronic Arts SEAD"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_ISS, sample_fmts_s16, adpcm_ima_iss, "ADPCM IMA Funcom ISS"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_MOFLEX, sample_fmts_s16p, adpcm_ima_moflex, "ADPCM IMA MobiClip MOFLEX"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_MTF, sample_fmts_s16, adpcm_ima_mtf, "ADPCM IMA Capcom's MT Framework"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_OKI, sample_fmts_s16, adpcm_ima_oki, "ADPCM IMA Dialogic OKI"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_QT, sample_fmts_s16p, adpcm_ima_qt, "ADPCM IMA QuickTime"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_RAD, sample_fmts_s16, adpcm_ima_rad, "ADPCM IMA Radical"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_SSI, sample_fmts_s16, adpcm_ima_ssi, "ADPCM IMA Simon & Schuster Interactive"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_SMJPEG, sample_fmts_s16, adpcm_ima_smjpeg, "ADPCM IMA Loki SDL MJPEG"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_ALP, sample_fmts_s16, adpcm_ima_alp, "ADPCM IMA High Voltage Software ALP"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_WAV, sample_fmts_s16p, adpcm_ima_wav, "ADPCM IMA WAV"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_IMA_WS, sample_fmts_both, adpcm_ima_ws, "ADPCM IMA Westwood"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_MS, sample_fmts_both, adpcm_ms, "ADPCM Microsoft"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_MTAF, sample_fmts_s16p, adpcm_mtaf, "ADPCM MTAF"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_PSX, sample_fmts_s16p, adpcm_psx, "ADPCM Playstation"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_SBPRO_2, sample_fmts_s16, adpcm_sbpro_2, "ADPCM Sound Blaster Pro 2-bit"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_SBPRO_3, sample_fmts_s16, adpcm_sbpro_3, "ADPCM Sound Blaster Pro 2.6-bit"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_SBPRO_4, sample_fmts_s16, adpcm_sbpro_4, "ADPCM Sound Blaster Pro 4-bit"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_SWF, sample_fmts_s16, adpcm_swf, "ADPCM Shockwave Flash"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_THP_LE, sample_fmts_s16p, adpcm_thp_le, "ADPCM Nintendo THP (little-endian)"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_THP, sample_fmts_s16p, adpcm_thp, "ADPCM Nintendo THP"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_XA, sample_fmts_s16p, adpcm_xa, "ADPCM CDROM XA"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_YAMAHA, sample_fmts_s16, adpcm_yamaha, "ADPCM Yamaha"); -ADPCM_DECODER(AV_CODEC_ID_ADPCM_ZORK, sample_fmts_s16, adpcm_zork, "ADPCM Zork"); +ADPCM_DECODER(ADPCM_4XM, sample_fmts_s16p, adpcm_4xm, "ADPCM 4X Movie"); +ADPCM_DECODER(ADPCM_AFC, sample_fmts_s16p, adpcm_afc, "ADPCM Nintendo Gamecube AFC"); +ADPCM_DECODER(ADPCM_AGM, sample_fmts_s16, adpcm_agm, "ADPCM AmuseGraphics Movie"); +ADPCM_DECODER(ADPCM_AICA, sample_fmts_s16p, adpcm_aica, "ADPCM Yamaha AICA"); +ADPCM_DECODER(ADPCM_ARGO, sample_fmts_s16p, adpcm_argo, "ADPCM Argonaut Games"); +ADPCM_DECODER(ADPCM_CT, sample_fmts_s16, adpcm_ct, "ADPCM Creative Technology"); +ADPCM_DECODER(ADPCM_DTK, sample_fmts_s16p, adpcm_dtk, "ADPCM Nintendo Gamecube DTK"); +ADPCM_DECODER(ADPCM_EA, sample_fmts_s16, adpcm_ea, "ADPCM Electronic Arts"); +ADPCM_DECODER(ADPCM_EA_MAXIS_XA, sample_fmts_s16, adpcm_ea_maxis_xa, "ADPCM Electronic Arts Maxis CDROM XA"); +ADPCM_DECODER(ADPCM_EA_R1, sample_fmts_s16p, adpcm_ea_r1, "ADPCM Electronic Arts R1"); +ADPCM_DECODER(ADPCM_EA_R2, sample_fmts_s16p, adpcm_ea_r2, "ADPCM Electronic Arts R2"); +ADPCM_DECODER(ADPCM_EA_R3, sample_fmts_s16p, adpcm_ea_r3, "ADPCM Electronic Arts R3"); +ADPCM_DECODER(ADPCM_EA_XAS, sample_fmts_s16p, adpcm_ea_xas, "ADPCM Electronic Arts XAS"); +ADPCM_DECODER(ADPCM_IMA_ACORN, sample_fmts_s16, adpcm_ima_acorn, "ADPCM IMA Acorn Replay"); +ADPCM_DECODER(ADPCM_IMA_AMV, sample_fmts_s16, adpcm_ima_amv, "ADPCM IMA AMV"); +ADPCM_DECODER(ADPCM_IMA_APC, sample_fmts_s16, adpcm_ima_apc, "ADPCM IMA CRYO APC"); +ADPCM_DECODER(ADPCM_IMA_APM, sample_fmts_s16, adpcm_ima_apm, "ADPCM IMA Ubisoft APM"); +ADPCM_DECODER(ADPCM_IMA_CUNNING, sample_fmts_s16p, adpcm_ima_cunning, "ADPCM IMA Cunning Developments"); +ADPCM_DECODER(ADPCM_IMA_DAT4, sample_fmts_s16, adpcm_ima_dat4, "ADPCM IMA Eurocom DAT4"); +ADPCM_DECODER(ADPCM_IMA_DK3, sample_fmts_s16, adpcm_ima_dk3, "ADPCM IMA Duck DK3"); +ADPCM_DECODER(ADPCM_IMA_DK4, sample_fmts_s16, adpcm_ima_dk4, "ADPCM IMA Duck DK4"); +ADPCM_DECODER(ADPCM_IMA_EA_EACS, sample_fmts_s16, adpcm_ima_ea_eacs, "ADPCM IMA Electronic Arts EACS"); +ADPCM_DECODER(ADPCM_IMA_EA_SEAD, sample_fmts_s16, adpcm_ima_ea_sead, "ADPCM IMA Electronic Arts SEAD"); +ADPCM_DECODER(ADPCM_IMA_ISS, sample_fmts_s16, adpcm_ima_iss, "ADPCM IMA Funcom ISS"); +ADPCM_DECODER(ADPCM_IMA_MOFLEX, sample_fmts_s16p, adpcm_ima_moflex, "ADPCM IMA MobiClip MOFLEX"); +ADPCM_DECODER(ADPCM_IMA_MTF, sample_fmts_s16, adpcm_ima_mtf, "ADPCM IMA Capcom's MT Framework"); +ADPCM_DECODER(ADPCM_IMA_OKI, sample_fmts_s16, adpcm_ima_oki, "ADPCM IMA Dialogic OKI"); +ADPCM_DECODER(ADPCM_IMA_QT, sample_fmts_s16p, adpcm_ima_qt, "ADPCM IMA QuickTime"); +ADPCM_DECODER(ADPCM_IMA_RAD, sample_fmts_s16, adpcm_ima_rad, "ADPCM IMA Radical"); +ADPCM_DECODER(ADPCM_IMA_SSI, sample_fmts_s16, adpcm_ima_ssi, "ADPCM IMA Simon & Schuster Interactive"); +ADPCM_DECODER(ADPCM_IMA_SMJPEG, sample_fmts_s16, adpcm_ima_smjpeg, "ADPCM IMA Loki SDL MJPEG"); +ADPCM_DECODER(ADPCM_IMA_ALP, sample_fmts_s16, adpcm_ima_alp, "ADPCM IMA High Voltage Software ALP"); +ADPCM_DECODER(ADPCM_IMA_WAV, sample_fmts_s16p, adpcm_ima_wav, "ADPCM IMA WAV"); +ADPCM_DECODER(ADPCM_IMA_WS, sample_fmts_both, adpcm_ima_ws, "ADPCM IMA Westwood"); +ADPCM_DECODER(ADPCM_MS, sample_fmts_both, adpcm_ms, "ADPCM Microsoft"); +ADPCM_DECODER(ADPCM_MTAF, sample_fmts_s16p, adpcm_mtaf, "ADPCM MTAF"); +ADPCM_DECODER(ADPCM_PSX, sample_fmts_s16p, adpcm_psx, "ADPCM Playstation"); +ADPCM_DECODER(ADPCM_SBPRO_2, sample_fmts_s16, adpcm_sbpro_2, "ADPCM Sound Blaster Pro 2-bit"); +ADPCM_DECODER(ADPCM_SBPRO_3, sample_fmts_s16, adpcm_sbpro_3, "ADPCM Sound Blaster Pro 2.6-bit"); +ADPCM_DECODER(ADPCM_SBPRO_4, sample_fmts_s16, adpcm_sbpro_4, "ADPCM Sound Blaster Pro 4-bit"); +ADPCM_DECODER(ADPCM_SWF, sample_fmts_s16, adpcm_swf, "ADPCM Shockwave Flash"); +ADPCM_DECODER(ADPCM_THP_LE, sample_fmts_s16p, adpcm_thp_le, "ADPCM Nintendo THP (little-endian)"); +ADPCM_DECODER(ADPCM_THP, sample_fmts_s16p, adpcm_thp, "ADPCM Nintendo THP"); +ADPCM_DECODER(ADPCM_XA, sample_fmts_s16p, adpcm_xa, "ADPCM CDROM XA"); +ADPCM_DECODER(ADPCM_YAMAHA, sample_fmts_s16, adpcm_yamaha, "ADPCM Yamaha"); +ADPCM_DECODER(ADPCM_ZORK, sample_fmts_s16, adpcm_zork, "ADPCM Zork"); From patchwork Thu Jun 17 02:31:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28447 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202310iol; Wed, 16 Jun 2021 19:37:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxq2YV95OkgprQ6MaCtnX1TKaUuTOO7LFcGhrLz7YpVmZ7YBFL/nXA085OtJ/VlezZj2jAg X-Received: by 2002:a17:907:9487:: with SMTP id dm7mr2557486ejc.349.1623897466873; Wed, 16 Jun 2021 19:37:46 -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 di18si3784509edb.218.2021.06.16.19.37.46; Wed, 16 Jun 2021 19:37:46 -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="DLfBJ/9p"; 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 6199A689F0D; Thu, 17 Jun 2021 05:33:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074086.outbound.protection.outlook.com [40.92.74.86]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D9754689905 for ; Thu, 17 Jun 2021 05:33:26 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BW2ZTmlJ1jPvS2XHefv6icqtXGWn6H12VIEeSL/yWmwzXtRgPG6Mln2rXjTqJnu6/rN6xisg7pAS5pBwlJKRGcmRuHBhDNX0nEinmem2wWJ3OF0JqC3pnMgnFKjdWSL0XfakR3Jg5l4qhhdz+Q6vtY8OlCFl9YaHv+gqtNBk/5521prcx3Up6wn+wHlihFNzDDbkl4uaIoh2a6Sj6aJVxaeKvz7NIHezlDej7ND0l7gzadSagam4DyHoYpGw1ZvsU7OTDe4NRGtk8QyD59mh0cwK3cWAcPwSbFPJibWpdJ5gmuF0jBx0aDKOzLp9omoL6qLynsJHVXkgzl3p2Eqv6A== 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-SenderADCheck; bh=MCdcmjkyBw3EcqQgIn23FcMHxDbjTftOGEtLMmDlpeE=; b=N8TLcz5O5LzfIVKhxnChysUFhwucRDQg529QX9VvD358hmawoZUuAse2EzCYmWGzufWxj2JilafvGvxqDoZnBTmFsLqv/3ieywwK+5r1f+ilpgzq89J6ebYByN8sgm6ox0i+FfY9PizRijfDa+9oJ8H5NAvBqftjfgeLMt7qGlnMMso+T7/PXFb1hXrQMVTNQyzEUIDqfPWl2qkM0mgd86+uYUV4JLjMaA22MA9yagRFABFVEHVpyNlgjKD75XYA0Qpq2GQYs9T3IcTT6G9fRqmj1ZLSBt1JmsWJJYQVpwdK22iGFmyjjQ+qW/L2joXZAJoDrbxjhsdOXrZMfwlESw== 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=MCdcmjkyBw3EcqQgIn23FcMHxDbjTftOGEtLMmDlpeE=; b=DLfBJ/9pKj1cpLvKQf4cH6tzSPOxBj0/VBCvYASx93TZsa7e/yVMujs7oVn0YswZQ7bWaBlIxsluJdBhJUf839a0+ZpVeCP3uKON++ibt/g1Q/KSa3lP+9NjBGSyeg3+XQREfgkOJpGhXkKxZvVIgEP5zQl0DeqZhRYM9rSgEasoGZYU4cEupaj3YL0gT52EnsJdpWrbCd1kJQR/vrib9k5VdjcfDxBJBouR/VUVdFk2nfgmYmrfGgpricgw3avh4DI+chg4cKaG6by3rd/6qQ+lkPjPXvTsqDHSrfrG9FHNXf/3kyFkttdUwC0RWyJjxDdIH531WPtbdavYVWTB/g== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::52) by HE1EUR04HT082.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::225) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:25 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:25 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:9EA8330FFEBC049B01F5E524A453AB2CFE60115DEB60504BAEBB850F0D2F9F5B; UpperCasedChecksum:FE7FA203C2F75C2293A7A4B2601A77827866D352F03801EE1F5A8170B752ABA2; SizeAsReceived:7767; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:25 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:53 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [Tdgs2UHct10V/vLafQqaYBqxDBeUNh8J] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-31-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:25 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 3d0581dc-5b60-4c16-4931-08d93138488a X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWf41WwZoCV05B4d0IieS6GOZmHmMOkXPHqRMa8rIjGgJGQ1JHq5MUGDnB/ZhuCdBh5M1Bhsz03AhsKVXdJsIrVBYrq3GkWswOwBOoFNd3p7oCDNhCfW5Emkz4SHSb2bbNdZwiZz3DLpkYi0d/bT+Dt8/wayBwa2mPSbtMDRo4SxYp3gedeOlcQlx50qrTWMZJWu+IuuDkUdjLZnw96qamVBswgVbr/ztpHw271pl0Q2h1Gp/AtjTsk+CQGP0OjCVcBMxtrH5q/zZiBF9mSyKZ4C69m4mTJmUdphM5oBFewHatXDmtTGml0pbojEfdC1TbxkDq6pBgwn/O8o1O6DI/wK0DKQ5ZEpjj2qdHv4utQidNnFg98foQRMHWB9+VheQ1QYwdKxbHLdmosBVp7HDr/qJpz8cymRnajkBIt0HHz+uOyOwsfF7a4RJ7RSSmaDwQo/lBJMbGHJwUvjqCnUw6U+21+cFF61UQuMq1e/srtIuhBTwMEaRaG5nCovIzHXdJq/pAWSYpzXA4su4iyXhbAM5k+JC927ZDyhjafFZzZwZx81WKnjqHV7YYlV4Hz8Xhg268OuFtdjhMdToH/97kWI73pa3NvJf5UpohQ/hFtGy7lJ3zwMLnD8I/gdm1fgGcqyOdzxpAYquDOTvSg/nY9O9J4dK4+3s/P4cJGHt1GCzxPyRpYRegJEpUmDYqZ8lUw21kJp/KeFqA0idN7o+B2uo6jFU63924wic9qBO9fIE= X-MS-TrafficTypeDiagnostic: HE1EUR04HT082: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Tulg41MHwIzx5X0f0ltG0jrWJVuNPUHiaEycoJ8sBHSlxL6TwBZJLki/p2lj+FARPDDHtF6G7GbaiS50X437ahxS/8eRvHmAF+Z+O34LWFoDRx7JaQIfDL/1NA/I95DQegP/5Micgi8HoSuJjL001idomesO8LePpbv9mlZbbSN1DYpUNB9yWgagOrJBq6sdHJxi4bapd0k6IYC3W1wRnhG4g4pR506Q9RzVTS/Cm+m8Hm0nwTeya+qnnBqVuqtdiF0qLZiZZoB3nvak7HIJQ6FMZBcsjhHvsFzfBKpxIZMWLtp1kd5T+quGmzI58FK0Q0iUT8V8lymbQoI9tgdVaCu8rFM2cmkLA0nd7k0kjEziz8ZntynMeyj4NNP0yq+7AIDfT7dwRii8yK9kbGPK3Q== X-MS-Exchange-AntiSpam-MessageData: cYQcpkacjJ/57VLISt9pQ4o05dMTTAkjZ+ZUnS8Pw24NB2nGX/hMYXpp0KqIYnUMmQaK5S61NEeBkuAfOH/I4juVzz5nuMavZZYaCNxg0ES3LxpmI/uTSOqACWVpS7M7+4N4eKK4gGfb62xLVAafrw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d0581dc-5b60-4c16-4931-08d93138488a X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:25.7006 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT082 Subject: [FFmpeg-devel] [PATCH 32/41] avcodec/adpcm_data: Fix type mismatch for ff_adpcm_afc_coeffs 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: tMpz+XNKpRZV According to the header it is an array of int16_t, yet it is declared as uint16_t. Fix this by using int16_t troughout and convert the definition to use values in the range of int16_t. Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm_data.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavcodec/adpcm_data.c b/libavcodec/adpcm_data.c index 768a18a378..4c81799bd0 100644 --- a/libavcodec/adpcm_data.c +++ b/libavcodec/adpcm_data.c @@ -106,9 +106,9 @@ const int8_t ff_adpcm_yamaha_difflookup[] = { -1, -3, -5, -7, -9, -11, -13, -15 }; -const uint16_t ff_adpcm_afc_coeffs[2][16] = { - { 0, 2048, 0, 1024, 4096, 3584, 3072, 4608, 4200, 4800, 5120, 2048, 1024, 64512, 64512, 63488 }, - { 0, 0, 2048, 1024, 63488, 64000, 64512, 62976, 63288, 63236, 62464, 63488, 64512, 1024, 0, 0 } +const int16_t ff_adpcm_afc_coeffs[2][16] = { + { 0, 2048, 0, 1024, 4096, 3584, 3072, 4608, 4200, 4800, 5120, 2048, 1024, -1024, -1024, -2048 }, + { 0, 0, 2048, 1024, -2048, -1536, -1024, -2560, -2248, -2300, -3072, -2048, -1024, 1024, 0, 0 } }; const int16_t ff_adpcm_mtaf_stepsize[32][16] = { From patchwork Thu Jun 17 02:31:54 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28439 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202544iol; Wed, 16 Jun 2021 19:38:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy5FHEILGbvnri2/pLqD1uD5oKCWQsi7wYGsIh5GIu3xUDCyq5OgpvclZMyNvCI3NfeLUCb X-Received: by 2002:aa7:c799:: with SMTP id n25mr3376882eds.16.1623897489090; Wed, 16 Jun 2021 19:38:09 -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 12si4176546ejk.74.2021.06.16.19.38.08; Wed, 16 Jun 2021 19:38:09 -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=FycsF0rl; 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 648A7689C2E; Thu, 17 Jun 2021 05:33:59 +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-oln040092073101.outbound.protection.outlook.com [40.92.73.101]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0FD656881C6 for ; Thu, 17 Jun 2021 05:33:57 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iEyNUdc1xxyv91YozJc2EJSSVP8GEEGXwdFU9rRaSP49S6B8toON7Sni06gaoPXVn+9/DZ9rz0tp9zAyIwSjiWOUx8fDBlydv4g4JtnrO1oE7j0t64a1heJSaNCofcr9zehqgGDuZpSqK5W7tJt9ZfIBrEQxdTqUGYqqk0TwRBv8B422VaDWYIVw3s75SGMxNqLxnTuVZbovVPj3MSO55T8WGXzYSrnKBv3qYJUnsNCvdoiFSoCdYVOsdKrm+kmGodD0R5FBo8Xvo+75SCe1s96TUk0Rruv4m4sFWtZi6laUfguicOwGkLxXZhKJj0PFbv/wyCD4p/cm/l//gLaDbA== 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-SenderADCheck; bh=S9Dqfz9DagXdkT6sDwztEOcFcO8acyyZb1JFM+x4cEU=; b=LXatggD/q4/rly97I37oo3VuECttjcSwrEWUfiG2zhzeb44lxX+f3u+XbpCt7CuWfJhCzjnc5qYnDhtjDW2mFXYrW1Bwg9imXohp6JJqgqI9Mqbjek7Xim7cu2vCbq0WO8G8LrYJuHNhUGWscqOtME8qId9YeleQq3+W/pIVWrUrD/DDDLEGIZXtBB/YYgrVqUo8ollnHmAFdXQJBJRlVt3fll+mOHdwQvMwZloElTXC5zG87BMSIaD4oG77nWmfjlA5f3z180PjX0RIccUp+7bCfg5kgCMCyF1ENTR8rOJ8XFVjWj7qV5rs5uMt48vwr7Ynx0htJon/BQt4Hkh3cQ== 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=S9Dqfz9DagXdkT6sDwztEOcFcO8acyyZb1JFM+x4cEU=; b=FycsF0rlh4WjTJZaLB4IQvFp5ROvbE35+UQxuXt/NyJMThfw7U5n2yluaSNPVdxCDlpHNdLAxWafN4Hxz6wgWmMsiBJd5wg+Fz2bcBb4L3I7Mn+hNjGmvwMvwT+m7OYRetkbBAnEBpCe0FA3BKQFivxKiGHKn4BLcp/2st9IP6op8MGp+lQtUAXWadTsBWC3hjjyxYTDrlhRPQqSL84Sf3jPwrxbvZIcHLr6KR1jzNwrXvtXAvcSyjEO/rBlDI05dSMHTTJVbfgulVYfJad1N/3yPcvoe13UdwGNG/5GREzUOAEwQU6pfZT2Kwtu7qBOtV/VAWDfvaj8b/SwnPPgMQ== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT130.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::217) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:56 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:56 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:CF4260BCB8BE3C6ADB1EB12F1CC0F97631C3BAB0F982CBCF855117897E809731; UpperCasedChecksum:1ACC510C4256C624B4115DA04D8D3E9A168A02853FFC841A5327A2D081B7BC99; SizeAsReceived:7778; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:54 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [0Wx8/Uqe/IdLq19xgfiTCFFWUx6dfYg2] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-32-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:25 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: b4cc1d82-afd1-4010-cc50-08d9313848e5 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOdqX/h1J1dx4ENh5GaPtlnGZcCPcLQhMlKxyvCf5+NbTKsPDSP+2E93/mm2fGLYlti3h38TI7EN+lDDKTv+pIlMMEalXw+AEbnuv6ue14NhYpuol0voCQYhDJz9K0zWzl10H3ENeyCIn056hvvM3t8QldiOfts3KVKVP/MhWNzaUAeLKsDki9QDagVnHWiuqme74xC441HCGOtmoB5EQmqgV9FSUx1uV9teZpyq/JCHmoNetImE5E+A7DcLz6y0yW0P/xaSVPNkxogDJ5hrXfEwO6gNw/eDlQD7sCcnqXFYv/Ni45rrZVqLfIO3rLg0EXfFw2AUbdLXuM6rI1RwoTM9IjaqDH6ZRurJ2/95bU2QfDYxxPyy7PK5ct97e9TuRPBORwVdNcWRZmn/X/ab0dLG0r9MvVsdofZvukNmWcMxJM5BbnLbSnkprmoa7wfsQ+TXMoQFQI0nc501oHOmPJG/My/2paa/9+IJUJ4XshD4MHbHKxUvuLOsaDDXmCBX4UmvNHKjbFfoAzFCUkMlE/VkSNV7fLNnQi28l+NAyXxeO+kAv3MBSi07PVwPhnVq8XyP2wv2bgFOHraxchdzqTTB5AHplUaN+flJTAuO9xoStdI7POXRbxHgWSrSpUDTmT8rhzy8dOIMbe+M4Lp+JdRv7x0XTLUdsI1J7MBMRpsn9OZ8w8Buaa/m0wacJMl+oCP3Y6X32CLuQ= X-MS-TrafficTypeDiagnostic: HE1EUR04HT130: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4ix6HDhFyJ7S/vyrWsQuVnwGdHc0r0hwbSVs3djlu/iCJZ1tqVW2xaQ2p6sh8rFfHnZcSARjM61rJXkE60QCWE/1PcTgOWFd6hn7qSUc2xfN70cB+2NSCk1bjMengyA2O6a3C/TWBicKmiJZemhz6lCM+zZVc91mTmeYBETRMNEU7sQoYlMxJwOEMK4v9QenTvsw4268KWM/eQkz5BDGf0mTrgcPQHNuQUtAMWHQtIkh9T0bJPuuzuSbuUNDWEsAMvinKLyCA3CZOie4hI/F4hmYZwBGI0oN75dapgsM80mp3Lya/UfvHgrszATEiDczrcWiZf9/0+dvJQQXQPkZptIomYmmL4mWxTx00WQvvRor4Hc5NFtJubs0sZ8tCh2W0bzlZhzjBuSzFCDb3Irk7w== X-MS-Exchange-AntiSpam-MessageData: bzfFIQ41ZEc3eTYguJPBdQcOF1rhQUSLuHklzDom/L3+lUaq7iZv0f0is8pXhW9W8Dtcsy2KO1e827KQ3Agw4Q1/McZdm878PwpdmvmersC/WYsUNXM7zteHldSBbqsR8+/9rUqLCcW9FmvhzavTfw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b4cc1d82-afd1-4010-cc50-08d9313848e5 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:26.2844 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT130 Subject: [FFmpeg-devel] [PATCH 33/41] avcodec/adpcm_data: Move tables only used by adpcm.c to it 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: p3Hs+rLtJAc1 Signed-off-by: Andreas Rheinhardt --- libavcodec/adpcm.c | 141 ++++++++++++++++++++++++++++++++++++++-- libavcodec/adpcm_data.c | 127 ------------------------------------ libavcodec/adpcm_data.h | 6 -- 3 files changed, 134 insertions(+), 140 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index 3a16acfb68..84dbaee777 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -82,6 +82,11 @@ static const int8_t xa_adpcm_table[5][2] = { { 122, -60 } }; +static const int16_t afc_coeffs[2][16] = { + { 0, 2048, 0, 1024, 4096, 3584, 3072, 4608, 4200, 4800, 5120, 2048, 1024, -1024, -1024, -2048 }, + { 0, 0, 2048, 1024, -2048, -1536, -1024, -2560, -2248, -2300, -3072, -2048, -1024, 1024, 0, 0 } +}; + static const int16_t ea_adpcm_table[] = { 0, 240, 460, 392, 0, 0, -208, -220, @@ -90,6 +95,128 @@ static const int16_t ea_adpcm_table[] = { 0, -1, -3, -4 }; +/* + * Dumped from the binaries: + * - FantasticJourney.exe - 0x794D2, DGROUP:0x47A4D2 + * - BigRaceUSA.exe - 0x9B8AA, DGROUP:0x49C4AA + * - Timeshock!.exe - 0x8506A, DGROUP:0x485C6A + */ +static const int8_t ima_cunning_index_table[9] = { + -1, -1, -1, -1, 1, 2, 3, 4, -1 +}; + +/* + * Dumped from the binaries: + * - FantasticJourney.exe - 0x79458, DGROUP:0x47A458 + * - BigRaceUSA.exe - 0x9B830, DGROUP:0x49C430 + * - Timeshock!.exe - 0x84FF0, DGROUP:0x485BF0 + */ +static const int16_t ima_cunning_step_table[61] = { + 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, + 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, + 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, + 192, 224, 256, 320, 384, 448, 512, 640, 768, 896, + 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584, 4096, 5120, + 6144, 7168, 8192, 10240, 12288, 14336, 16384, 20480, 24576, 28672, 0 +}; + +static const int8_t adpcm_index_table2[4] = { + -1, 2, + -1, 2, +}; + +static const int8_t adpcm_index_table3[8] = { + -1, -1, 1, 2, + -1, -1, 1, 2, +}; + +static const int8_t adpcm_index_table5[32] = { + -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 4, 6, 8, 10, 13, 16, + -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 4, 6, 8, 10, 13, 16, +}; + +static const int8_t * const adpcm_index_tables[4] = { + &adpcm_index_table2[0], + &adpcm_index_table3[0], + &ff_adpcm_index_table[0], + &adpcm_index_table5[0], +}; + +static const int16_t mtaf_stepsize[32][16] = { + { 1, 5, 9, 13, 16, 20, 24, 28, + -1, -5, -9, -13, -16, -20, -24, -28, }, + { 2, 6, 11, 15, 20, 24, 29, 33, + -2, -6, -11, -15, -20, -24, -29, -33, }, + { 2, 7, 13, 18, 23, 28, 34, 39, + -2, -7, -13, -18, -23, -28, -34, -39, }, + { 3, 9, 15, 21, 28, 34, 40, 46, + -3, -9, -15, -21, -28, -34, -40, -46, }, + { 3, 11, 18, 26, 33, 41, 48, 56, + -3, -11, -18, -26, -33, -41, -48, -56, }, + { 4, 13, 22, 31, 40, 49, 58, 67, + -4, -13, -22, -31, -40, -49, -58, -67, }, + { 5, 16, 26, 37, 48, 59, 69, 80, + -5, -16, -26, -37, -48, -59, -69, -80, }, + { 6, 19, 31, 44, 57, 70, 82, 95, + -6, -19, -31, -44, -57, -70, -82, -95, }, + { 7, 22, 38, 53, 68, 83, 99, 114, + -7, -22, -38, -53, -68, -83, -99, -114, }, + { 9, 27, 45, 63, 81, 99, 117, 135, + -9, -27, -45, -63, -81, -99, -117, -135, }, + { 10, 32, 53, 75, 96, 118, 139, 161, + -10, -32, -53, -75, -96, -118, -139, -161, }, + { 12, 38, 64, 90, 115, 141, 167, 193, + -12, -38, -64, -90, -115, -141, -167, -193, }, + { 15, 45, 76, 106, 137, 167, 198, 228, + -15, -45, -76, -106, -137, -167, -198, -228, }, + { 18, 54, 91, 127, 164, 200, 237, 273, + -18, -54, -91, -127, -164, -200, -237, -273, }, + { 21, 65, 108, 152, 195, 239, 282, 326, + -21, -65, -108, -152, -195, -239, -282, -326, }, + { 25, 77, 129, 181, 232, 284, 336, 388, + -25, -77, -129, -181, -232, -284, -336, -388, }, + { 30, 92, 153, 215, 276, 338, 399, 461, + -30, -92, -153, -215, -276, -338, -399, -461, }, + { 36, 109, 183, 256, 329, 402, 476, 549, + -36, -109, -183, -256, -329, -402, -476, -549, }, + { 43, 130, 218, 305, 392, 479, 567, 654, + -43, -130, -218, -305, -392, -479, -567, -654, }, + { 52, 156, 260, 364, 468, 572, 676, 780, + -52, -156, -260, -364, -468, -572, -676, -780, }, + { 62, 186, 310, 434, 558, 682, 806, 930, + -62, -186, -310, -434, -558, -682, -806, -930, }, + { 73, 221, 368, 516, 663, 811, 958, 1106, + -73, -221, -368, -516, -663, -811, -958, -1106, }, + { 87, 263, 439, 615, 790, 966, 1142, 1318, + -87, -263, -439, -615, -790, -966, -1142, -1318, }, + { 104, 314, 523, 733, 942, 1152, 1361, 1571, + -104, -314, -523, -733, -942, -1152, -1361, -1571, }, + { 124, 374, 623, 873, 1122, 1372, 1621, 1871, + -124, -374, -623, -873, -1122, -1372, -1621, -1871, }, + { 148, 445, 743, 1040, 1337, 1634, 1932, 2229, + -148, -445, -743, -1040, -1337, -1634, -1932, -2229, }, + { 177, 531, 885, 1239, 1593, 1947, 2301, 2655, + -177, -531, -885, -1239, -1593, -1947, -2301, -2655, }, + { 210, 632, 1053, 1475, 1896, 2318, 2739, 3161, + -210, -632, -1053, -1475, -1896, -2318, -2739, -3161, }, + { 251, 753, 1255, 1757, 2260, 2762, 3264, 3766, + -251, -753, -1255, -1757, -2260, -2762, -3264, -3766, }, + { 299, 897, 1495, 2093, 2692, 3290, 3888, 4486, + -299, -897, -1495, -2093, -2692, -3290, -3888, -4486, }, + { 356, 1068, 1781, 2493, 3206, 3918, 4631, 5343, + -356, -1068, -1781, -2493, -3206, -3918, -4631, -5343, }, + { 424, 1273, 2121, 2970, 3819, 4668, 5516, 6365, + -424, -1273, -2121, -2970, -3819, -4668, -5516, -6365, }, +}; + +static const int16_t oki_step_table[49] = { + 16, 17, 19, 21, 23, 25, 28, 31, 34, 37, + 41, 45, 50, 55, 60, 66, 73, 80, 88, 97, + 107, 118, 130, 143, 157, 173, 190, 209, 230, 253, + 279, 307, 337, 371, 408, 449, 494, 544, 598, 658, + 724, 796, 876, 963, 1060, 1166, 1282, 1411, 1552 +}; + // padded to zero where table size is less then 16 static const int8_t swf_index_tables[4][16] = { /*2*/ { -1, 2 }, @@ -335,8 +462,8 @@ static inline int16_t adpcm_ima_cunning_expand_nibble(ADPCMChannelStatus *c, int nibble = sign_extend(nibble & 0xF, 4); - step = ff_adpcm_ima_cunning_step_table[c->step_index]; - step_index = c->step_index + ff_adpcm_ima_cunning_index_table[abs(nibble)]; + step = ima_cunning_step_table[c->step_index]; + step_index = c->step_index + ima_cunning_index_table[abs(nibble)]; step_index = av_clip(step_index, 0, 60); predictor = c->predictor + step * nibble; @@ -354,7 +481,7 @@ static inline int16_t adpcm_ima_wav_expand_nibble(ADPCMChannelStatus *c, GetBitC shift = bps - 1; nibble = get_bits_le(gb, bps), step = ff_adpcm_step_table[c->step_index]; - step_index = c->step_index + ff_adpcm_index_tables[bps - 2][nibble]; + step_index = c->step_index + adpcm_index_tables[bps - 2][nibble]; step_index = av_clip(step_index, 0, 88); sign = nibble & (1 << shift); @@ -419,7 +546,7 @@ static inline int16_t adpcm_ima_oki_expand_nibble(ADPCMChannelStatus *c, int nib { int step_index, predictor, sign, delta, diff, step; - step = ff_adpcm_oki_step_table[c->step_index]; + step = oki_step_table[c->step_index]; step_index = c->step_index + ff_adpcm_index_table[(unsigned)nibble]; step_index = av_clip(step_index, 0, 48); @@ -493,7 +620,7 @@ static inline int16_t adpcm_yamaha_expand_nibble(ADPCMChannelStatus *c, uint8_t static inline int16_t adpcm_mtaf_expand_nibble(ADPCMChannelStatus *c, uint8_t nibble) { - c->predictor += ff_adpcm_mtaf_stepsize[c->step][nibble]; + c->predictor += mtaf_stepsize[c->step][nibble]; c->predictor = av_clip_int16(c->predictor); c->step += ff_adpcm_index_table[nibble]; c->step = av_clip_uintp2(c->step, 5); @@ -1836,8 +1963,8 @@ static int adpcm_decode_frame(AVCodecContext *avctx, void *data, int byte = bytestream2_get_byteu(&gb); int scale = 1 << (byte >> 4); int index = byte & 0xf; - int factor1 = ff_adpcm_afc_coeffs[0][index]; - int factor2 = ff_adpcm_afc_coeffs[1][index]; + int factor1 = afc_coeffs[0][index]; + int factor2 = afc_coeffs[1][index]; /* Decode 16 samples. */ for (int n = 0; n < 16; n++) { diff --git a/libavcodec/adpcm_data.c b/libavcodec/adpcm_data.c index 4c81799bd0..df8aeacb99 100644 --- a/libavcodec/adpcm_data.c +++ b/libavcodec/adpcm_data.c @@ -27,33 +27,11 @@ /* ff_adpcm_step_table[] and ff_adpcm_index_table[] are from the ADPCM reference source */ -static const int8_t adpcm_index_table2[4] = { - -1, 2, - -1, 2, -}; - -static const int8_t adpcm_index_table3[8] = { - -1, -1, 1, 2, - -1, -1, 1, 2, -}; - const int8_t ff_adpcm_index_table[16] = { -1, -1, -1, -1, 2, 4, 6, 8, -1, -1, -1, -1, 2, 4, 6, 8, }; -static const int8_t adpcm_index_table5[32] = { - -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 4, 6, 8, 10, 13, 16, - -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 4, 6, 8, 10, 13, 16, -}; - -const int8_t * const ff_adpcm_index_tables[4] = { - &adpcm_index_table2[0], - &adpcm_index_table3[0], - &ff_adpcm_index_table[0], - &adpcm_index_table5[0], -}; - /** * This is the step table. Note that many programs use slight deviations from * this table, but such deviations are negligible: @@ -70,14 +48,6 @@ const int16_t ff_adpcm_step_table[89] = { 15289, 16818, 18500, 20350, 22385, 24623, 27086, 29794, 32767 }; -const int16_t ff_adpcm_oki_step_table[49] = { - 16, 17, 19, 21, 23, 25, 28, 31, 34, 37, - 41, 45, 50, 55, 60, 66, 73, 80, 88, 97, - 107, 118, 130, 143, 157, 173, 190, 209, 230, 253, - 279, 307, 337, 371, 408, 449, 494, 544, 598, 658, - 724, 796, 876, 963, 1060, 1166, 1282, 1411, 1552 -}; - /* These are for MS-ADPCM */ /* ff_adpcm_AdaptationTable[], ff_adpcm_AdaptCoeff1[], and ff_adpcm_AdaptCoeff2[] are from libsndfile */ @@ -105,100 +75,3 @@ const int8_t ff_adpcm_yamaha_difflookup[] = { 1, 3, 5, 7, 9, 11, 13, 15, -1, -3, -5, -7, -9, -11, -13, -15 }; - -const int16_t ff_adpcm_afc_coeffs[2][16] = { - { 0, 2048, 0, 1024, 4096, 3584, 3072, 4608, 4200, 4800, 5120, 2048, 1024, -1024, -1024, -2048 }, - { 0, 0, 2048, 1024, -2048, -1536, -1024, -2560, -2248, -2300, -3072, -2048, -1024, 1024, 0, 0 } -}; - -const int16_t ff_adpcm_mtaf_stepsize[32][16] = { - { 1, 5, 9, 13, 16, 20, 24, 28, - -1, -5, -9, -13, -16, -20, -24, -28, }, - { 2, 6, 11, 15, 20, 24, 29, 33, - -2, -6, -11, -15, -20, -24, -29, -33, }, - { 2, 7, 13, 18, 23, 28, 34, 39, - -2, -7, -13, -18, -23, -28, -34, -39, }, - { 3, 9, 15, 21, 28, 34, 40, 46, - -3, -9, -15, -21, -28, -34, -40, -46, }, - { 3, 11, 18, 26, 33, 41, 48, 56, - -3, -11, -18, -26, -33, -41, -48, -56, }, - { 4, 13, 22, 31, 40, 49, 58, 67, - -4, -13, -22, -31, -40, -49, -58, -67, }, - { 5, 16, 26, 37, 48, 59, 69, 80, - -5, -16, -26, -37, -48, -59, -69, -80, }, - { 6, 19, 31, 44, 57, 70, 82, 95, - -6, -19, -31, -44, -57, -70, -82, -95, }, - { 7, 22, 38, 53, 68, 83, 99, 114, - -7, -22, -38, -53, -68, -83, -99, -114, }, - { 9, 27, 45, 63, 81, 99, 117, 135, - -9, -27, -45, -63, -81, -99, -117, -135, }, - { 10, 32, 53, 75, 96, 118, 139, 161, - -10, -32, -53, -75, -96, -118, -139, -161, }, - { 12, 38, 64, 90, 115, 141, 167, 193, - -12, -38, -64, -90, -115, -141, -167, -193, }, - { 15, 45, 76, 106, 137, 167, 198, 228, - -15, -45, -76, -106, -137, -167, -198, -228, }, - { 18, 54, 91, 127, 164, 200, 237, 273, - -18, -54, -91, -127, -164, -200, -237, -273, }, - { 21, 65, 108, 152, 195, 239, 282, 326, - -21, -65, -108, -152, -195, -239, -282, -326, }, - { 25, 77, 129, 181, 232, 284, 336, 388, - -25, -77, -129, -181, -232, -284, -336, -388, }, - { 30, 92, 153, 215, 276, 338, 399, 461, - -30, -92, -153, -215, -276, -338, -399, -461, }, - { 36, 109, 183, 256, 329, 402, 476, 549, - -36, -109, -183, -256, -329, -402, -476, -549, }, - { 43, 130, 218, 305, 392, 479, 567, 654, - -43, -130, -218, -305, -392, -479, -567, -654, }, - { 52, 156, 260, 364, 468, 572, 676, 780, - -52, -156, -260, -364, -468, -572, -676, -780, }, - { 62, 186, 310, 434, 558, 682, 806, 930, - -62, -186, -310, -434, -558, -682, -806, -930, }, - { 73, 221, 368, 516, 663, 811, 958, 1106, - -73, -221, -368, -516, -663, -811, -958, -1106, }, - { 87, 263, 439, 615, 790, 966, 1142, 1318, - -87, -263, -439, -615, -790, -966, -1142, -1318, }, - { 104, 314, 523, 733, 942, 1152, 1361, 1571, - -104, -314, -523, -733, -942, -1152, -1361, -1571, }, - { 124, 374, 623, 873, 1122, 1372, 1621, 1871, - -124, -374, -623, -873, -1122, -1372, -1621, -1871, }, - { 148, 445, 743, 1040, 1337, 1634, 1932, 2229, - -148, -445, -743, -1040, -1337, -1634, -1932, -2229, }, - { 177, 531, 885, 1239, 1593, 1947, 2301, 2655, - -177, -531, -885, -1239, -1593, -1947, -2301, -2655, }, - { 210, 632, 1053, 1475, 1896, 2318, 2739, 3161, - -210, -632, -1053, -1475, -1896, -2318, -2739, -3161, }, - { 251, 753, 1255, 1757, 2260, 2762, 3264, 3766, - -251, -753, -1255, -1757, -2260, -2762, -3264, -3766, }, - { 299, 897, 1495, 2093, 2692, 3290, 3888, 4486, - -299, -897, -1495, -2093, -2692, -3290, -3888, -4486, }, - { 356, 1068, 1781, 2493, 3206, 3918, 4631, 5343, - -356, -1068, -1781, -2493, -3206, -3918, -4631, -5343, }, - { 424, 1273, 2121, 2970, 3819, 4668, 5516, 6365, - -424, -1273, -2121, -2970, -3819, -4668, -5516, -6365, }, -}; - -/* - * Dumped from the binaries: - * - FantasticJourney.exe - 0x794D2, DGROUP:0x47A4D2 - * - BigRaceUSA.exe - 0x9B8AA, DGROUP:0x49C4AA - * - Timeshock!.exe - 0x8506A, DGROUP:0x485C6A - */ -const int8_t ff_adpcm_ima_cunning_index_table[9] = { - -1, -1, -1, -1, 1, 2, 3, 4, -1 -}; - -/* - * Dumped from the binaries: - * - FantasticJourney.exe - 0x79458, DGROUP:0x47A458 - * - BigRaceUSA.exe - 0x9B830, DGROUP:0x49C430 - * - Timeshock!.exe - 0x84FF0, DGROUP:0x485BF0 - */ -const int16_t ff_adpcm_ima_cunning_step_table[61] = { - 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, - 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, - 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, - 192, 224, 256, 320, 384, 448, 512, 640, 768, 896, - 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584, 4096, 5120, - 6144, 7168, 8192, 10240, 12288, 14336, 16384, 20480, 24576, 28672, 0 -}; diff --git a/libavcodec/adpcm_data.h b/libavcodec/adpcm_data.h index d678bfc71a..7dec6499f8 100644 --- a/libavcodec/adpcm_data.h +++ b/libavcodec/adpcm_data.h @@ -31,18 +31,12 @@ static const uint8_t ff_adpcm_ima_block_sizes[4] = { 4, 12, 4, 20 }; static const uint8_t ff_adpcm_ima_block_samples[4] = { 16, 32, 8, 32 }; -extern const int8_t * const ff_adpcm_index_tables[4]; extern const int8_t ff_adpcm_index_table[16]; extern const int16_t ff_adpcm_step_table[89]; -extern const int16_t ff_adpcm_oki_step_table[49]; extern const int16_t ff_adpcm_AdaptationTable[]; extern const uint8_t ff_adpcm_AdaptCoeff1[]; extern const int8_t ff_adpcm_AdaptCoeff2[]; extern const int16_t ff_adpcm_yamaha_indexscale[]; extern const int8_t ff_adpcm_yamaha_difflookup[]; -extern const int16_t ff_adpcm_afc_coeffs[2][16]; -extern const int16_t ff_adpcm_mtaf_stepsize[32][16]; -extern const int8_t ff_adpcm_ima_cunning_index_table[9]; -extern const int16_t ff_adpcm_ima_cunning_step_table[61]; #endif /* AVCODEC_ADPCM_DATA_H */ From patchwork Thu Jun 17 02:31:55 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28437 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202638iol; Wed, 16 Jun 2021 19:38:19 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz6SIv3585BDL84c8qrnIeFUiNWMmJOxdM85leYwVd4epk3JekY8NTldjmQ7nuG9oi4uFOk X-Received: by 2002:a17:906:c0c7:: with SMTP id bn7mr2537997ejb.393.1623897499160; Wed, 16 Jun 2021 19:38:19 -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 u22si4094910ejr.495.2021.06.16.19.38.18; Wed, 16 Jun 2021 19:38:19 -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=FNzUFw3T; 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 57D38689CDB; Thu, 17 Jun 2021 05:34:00 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074094.outbound.protection.outlook.com [40.92.74.94]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0FA3E68812C for ; Thu, 17 Jun 2021 05:33:57 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SJvMLtJPZ//xt/j7kPmI25VmlrvwBOXD1/foREKrajL+jO01extFc0vxOOmnHL1fMUhD7Buqx/tI+pZqBTyPrm2X8nKklJUQBLA1gSMtLBAmoGwq24R6jcjbT0ec6dTfQnKnTICYKm1aqbDAeklYb3R71eIAHid3X5klxJ9yBLwK5ylw/plwv9wyUBO1oZp+c9fOiNBbeuzRlngP9IGfYAHyzlQ+8yseOWGxgGIyfuZyrmNQmcpWi1+sCXC/VqPewYXADew8vYm9TQKRoXT7AZ6c7CeI6lmW+DpT7qJW/J/s/RfPIq5RF5VXkUY6OZO0tLvAZ30naJxduDU7pLMJ4Q== 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-SenderADCheck; bh=a1w/1FyXqasii0RfW/BNJSZG9E4xhXDUA3xEbR9J2HU=; b=c4dmbMmMstG5TvSsaZQC3+CyDCkSrTX4RXx7z3cKm3u5YaF8IQkf5WF+WqqVlWpnatrj3dvdD184HZER47CTGbo4FeSG669ewNRSLTHR9Q0y9VmeqvjtAJY5pReA6sJ6DOzP50t4sjeh47/KPc/oO2R0myIk7qMS2eccN8g0HHmMd1+cQakZ1kGZj5+TmaD0Grs2J9s3MS+31EbpbJLPqBf/j/v6i88K0na2OxzFKolde9rYubRzg2mcpUQJzS1qhgKAd6pyaf/ZfkUxAwxSWvk2fXTCJTECGqsG9qxjH8CsmDFakL85Snbe/xk3oN4NXZqNkT8+w3OeLJTM6enHlg== 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=a1w/1FyXqasii0RfW/BNJSZG9E4xhXDUA3xEbR9J2HU=; b=FNzUFw3TUUAjG5jXDkppxZGEt3fVlsS/SyjseSloDokNzd+t1+WvYFhLsex0OYLV4/Yzy/3VusupAAxxPyhMkOzb5vX7zJeWXdfFlEBKErZROQPH0C991Wj94c6wcK8MV8A5/mDCaLAIbE07esvABptWTwMVbqkaPjy9PRBW/pmK6Cw2mMWDwvLKzoua+dZ7dJ2YRx3dZ6ymoFXRr2z/16+OdEE2ePfFEfueK9OUhgw6tYUvrHmL/fpTKvC608q1V+4u5fQtHVqEVzrtVOP1CSTb1F6lpou6Ttd9h5Oql4qL6NLJFzOsKMSSfi4kB1DOenWksvstyB5YS6mOkQpV0w== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::44) by HE1EUR04HT157.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:56 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:56 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:1E8E04B52283A01B59DF12C10DB17E76469BB80288B2683F777AF4FDB7E42B88; UpperCasedChecksum:18C1BCCF60F0FC9C2FA9159C1A50626A68A1A0CF1F49A64BBA166A00608F887B; SizeAsReceived:7764; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:55 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [GfD0Ej7pkctu8FtN84QDCqGXMOK6cedE] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-33-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:26 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 67c3fa6a-9ab7-4c71-f878-08d931384944 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOEJ1fkpp/5kSFl9P9CTlR0xG9S8swfQZRaZccVrA0k2dtOlFq3kuJQZAhQg7yXXlhNKyA1jmZensZU3dS1WM8YY1ROhvNsGSw4ZxO1AN3Zird3GRjx6ggebqmGZVoaOPjKQDqfgPoOgDmXT3Xw+EKf92B+BMZ0wInFyqb9M5brD1s5XR6cVXokS2LIpT3T0u4jF14Nku+4RpazPB13MKPiqSqxdOdkjmG4lG4Rcj8C9ixAk64QiKxF14tbYbA6AB13ru8tqp4NQegKSTvS+dobWMN8dwtNF006smC1bXfrPTvN97vbjRQhFQOM2zrcjVllAkQtspbM+atqZ0Yiz3A35ZmgqhAfjJf8SoBa9QRmvdqfqeCcUfrKho+V6qMXX+uKNDjppiDU8Ic9qMKnMibqtmzps6xfwiitDLRE3v0evjiGtmqZkrpYFNu7hfOdylIqk5+6diN9HZJZOdIP3I0lLJDtKa29Uy92xq87eLFlBXfBzz0fHMHEI5x/39hB8gZ+sBQVGCfYgAFaC7o6E7ocTF3O/CvpMSIJt11Z9sx55hKHafrhcGBgAw1PvF/lvpOpHbwM5lfQvxjGHNL+Y7CNIQX2xL59pFJs+nF0PiKT6MQkxpdq98hzgaQktZdE2VWQVUDkY9h33MB2ANbpTAffWYlTXCQRKLrEhjBuF86MGWVTa/SRrBE8OGMKerB1OAakoIClwYf5qs= X-MS-TrafficTypeDiagnostic: HE1EUR04HT157: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RZPS1vB2N1y+FSoDkiMyA/wfV5iEkxPsy0YNmW0qXgvbiO3bjMg2AbRE4blY4K1wxwARWB6pj8dsCr4NVvQExur/5W/t16UrvCiQa7jpdZ0RFj+ybDrPZhVxMyNouo7Tg0zd7zr2qGhhPrp/BesMALl3t+oPnTMKG0TJMRzcEDPO9/mzQg6/Fqi0L0ICLVZZ5EXt98LeY0qr2b++Bbc2bWrCIFA9r9D5H/wwYTqZDFmuzUDvAoGqFbRrDxb9y4Y5hznGy9jXuTlDZiZEfi6oxhkjtlzQuIntD6oaA26N35A1i2oU0cJB6w2d7SvIxpmEeA73smKkDIxB8X72eGWDshvwlBDu11HxGYcqouWo8MUNVDbnpYH3RbdGdlQAz08MBd7o0gxjg/dLh2u5DbtprA== X-MS-Exchange-AntiSpam-MessageData: AqGEhIV3yw7tny7VsBfSlkmqOr66Y5QdOjmlcqryS9Tj+WujjfsM7OSO/tQ2XASPni86IjlCLZPI2oWJ/mR7CD/ibAtmX5WeHSM9U/ZsmghfWwJd1WB+AacHDrrybl/fxkPTdCzl3Hj6EcGHB2jtOQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67c3fa6a-9ab7-4c71-f878-08d931384944 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:26.9790 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT157 Subject: [FFmpeg-devel] [PATCH 34/41] avcodec/libcodec2: Remove AVClass for decoder 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: hX0ZAqTtlzOl The decoder has no options. Signed-off-by: Andreas Rheinhardt --- libavcodec/libcodec2.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/libavcodec/libcodec2.c b/libavcodec/libcodec2.c index 2996dc42f5..a8c92ecce1 100644 --- a/libavcodec/libcodec2.c +++ b/libavcodec/libcodec2.c @@ -46,12 +46,6 @@ static const AVClass libcodec2_enc_class = { .version = LIBAVUTIL_VERSION_INT, }; -static const AVClass libcodec2_dec_class = { - .class_name = "libcodec2 decoder", - .item_name = av_default_item_name, - .version = LIBAVUTIL_VERSION_INT, -}; - static av_cold int libcodec2_init_common(AVCodecContext *avctx, int mode) { LibCodec2Context *c2 = avctx->priv_data; @@ -194,7 +188,6 @@ const AVCodec ff_libcodec2_decoder = { .supported_samplerates = (const int[]){ 8000, 0 }, .sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, .channel_layouts = (const uint64_t[]) { AV_CH_LAYOUT_MONO, 0 }, - .priv_class = &libcodec2_dec_class, }; const AVCodec ff_libcodec2_encoder = { From patchwork Thu Jun 17 02:31:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28438 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202755iol; Wed, 16 Jun 2021 19:38:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJweaahzX43TYWHkghDcnptIixOkZm3VNL8RXtdfHpbukUYRMlt29NY7nCmQYijrs9ID6SaH X-Received: by 2002:a17:906:f889:: with SMTP id lg9mr2699113ejb.82.1623897510550; Wed, 16 Jun 2021 19:38:30 -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 p21si4379544ejn.49.2021.06.16.19.38.30; Wed, 16 Jun 2021 19:38:30 -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="W/cvxcuD"; 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 26C806881C6; Thu, 17 Jun 2021 05:34:01 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074082.outbound.protection.outlook.com [40.92.74.82]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A8CFA68812C for ; Thu, 17 Jun 2021 05:33:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Rqqd/h1xwt/cPaZ2bU9mzyoSwp7mOEeiIesDYThyahm+zKSXROF21NqnIlQEjrCLuHoXl6QXDhwbuPr6bd4B759VM08AEXNM/0DxaAX158nJLFuBOYojTN+o8CvTTqeF1tj/0+JuAWC9L4s7PQtiW8xA5dBwajNRbGVoQpcakM0i7qVB/z5Ogyx+Nela2l4Ky2jVPzFt59mxDtL8qkHlfFnqsSJD5UGmuJkGoy87zmc/Et4pyij7+3W75rrja/svxgzpt3AL9i53/cExztI4OPB/290pRzIsYtX7YghsfTCHuuPJRq2jqvqJCS0E5o7NuRx9mzeYKdKLN9rzM2+bOA== 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-SenderADCheck; bh=o7J0AhBjCS6ldK/eLRHecjMRrmc4s0ewzf0WkcKcAmw=; b=geceC5l+OM5Dpq125I4OqnCVQZGy7iiAk0OkvgizwPFJliLrnv9GuLmb/inxquFYKBPApaSi04+DB5BnMUfCOG1VrlwQPHp46Xl7xe+bF7vBWqqA876J8KBPkLm2MngAb3C1ozSRlR1pU6LNqXR+kP+aJBHOvVfHolJcDbuI8koEEWCp6/dndtCL2nKxrvZUoqRrHcQDiZ9nchSH144RuM6ZNaJ/JLmraovwHDIVo38Uw9l8+WBhrJb3vNQ1m+l0zJn4hPYYubEQJHWRG3CvDsKSFRhJeILxNFIv8fyfLT+FLomn+QNI/e3EjRsWuOkBmDfOJhYo6yEHegpF/ANNXA== 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=o7J0AhBjCS6ldK/eLRHecjMRrmc4s0ewzf0WkcKcAmw=; b=W/cvxcuD+4fXx1DjAeP8dDmxMTKju8BrnN7by4+x5suH38aoPAxQRlcUwUT193XkStee0sBhCCdqbp9/DXIDFO6XpJuftWw/uO4nJMv6eFk8duCUmpV6RxVpA8pKz/tOk7u7lMqad3FwUOaeyeKbTbsgjHkbvPwJer8R03pps4uV3wbrgLaqZ9V1PE4nhb/+O7ybQ6zwuVMxGJSxVQ97mBgXmp8Xe+3kIGjcb2A4O6nmLhYsvHvncCjmXICcBVFJ84tAqgk4NX3B5WVD8BQFzKoRwuJ4kEeTw4Xy+KIHVgd4tnsy+SUyiGGgDgNqNx3HP3cgClSz0ymOtlh+O5cAug== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::44) by HE1EUR04HT108.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:57 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:57 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:FE8D200AB38BE2E93A7215E426CD700C8C58DA445EB7897A503AE36DCF6321C7; UpperCasedChecksum:893C0CF98298BE3737B135EC720FF0B235009FDB20709C6ABEB2BEFECED95088; SizeAsReceived:7777; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:56 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [Mq5nq8luPA1BtYD+3zZHpc3bZluE3Y32] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-34-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:27 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 35977316-9343-41e6-65c2-08d9313849a1 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWfgagmXbE5r2EJK0Ii7Tj+jTRdPXyQhTMCbX8C8LadDCNq6WZfQsnZ6swOXWCWejXunwFc5EwA2Hl7r2qXZoCl7xsBf3cfxDJNGOeU3XeJ34iyrVxXujP1Wr8YckD37UwQ9SxAWSKulOJB8mSoYIOsbbogRP3OgNBy/kHRuKNrBfRv5h20K1NxGSxXfxyH7hz+Feu5YxeLmER+e8H2FTXPFuCqu7ADpeqDKYMmBSt37z/JEwQoZiOeBdZPS68yfY+LA/POcaW+hcaElL1HlaoS6UCsQVkFtsHZomK6n39u057DB8nSHJes719PYRyU3HKnJ1OYh2TYFfujoZs0ui0YYkji3aA3Q/l7P9cY8/09UHR2+mo6fRv1lrQGckwYHbkLADr+p8nHUDXeBpH8MElzjMADD6HOJhrcdgSLvgBCaP9mY8JV8yeIDaS92wYZMkOT7GGqwmrq1uUwDG163nx7HlPnoLQB1Bmrtkp6gLmT7CKP75v0WUNcKoOhozO+jrcVRmp8qbbDednmQE+n+Fhjep4v+UsxJBD5Rco1w49eb5l81G02qXkfcWuOcXJcn5nE0N1akXcxaDm/3Ba4W5FOUCtvUpkrswMG+OsyDdWxtLmNJhHH/s6tsbkMUqCb8+OVDQ6jnsz6m5+vWOwUozNZW//1PaLkg1WKvK8ah85QlG2SskT3XIRJRsX2MOsMwKzoHe6OFArLWCxE6aSSNjvZ1XwHkk1JpBRqn+zEG7FYxI= X-MS-TrafficTypeDiagnostic: HE1EUR04HT108: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DsAFO8oa5t5mES6Sr8A6m/Cf3op+vaq7LOH9232CqYIJARKPIdpHIuO3eKXtNsHLwtcKoRRE4bgUL6tV/eLXeIHg1yeCLQEorz3SXGX9IpLvjjEmNArT6AoXVrjSTCvlnDt2vR6blMzM0mLMqc9/YletC0iH6cHikLSoAUpK3RwvNjIEso98wAAvZzMDqNER5E4YDcfKFALsZXhnGE5fnrMIc2TDl0O97axrxa+Ig0PIDW/ee8n4sd7bvzNvLTvwKViNr44qequHe9FNxn9uNAGDT4ctHYpH/g9u3179L1Ths6qr4fuQqDOodJeJTZKIhNiQe8xp81xD+c0tdA+GwK2KO9ojf9jCptloXNyD41kFLywhyC1nhZlXtvd9jiRGAmpQ/I/XItjOI2+iFPW/TQ== X-MS-Exchange-AntiSpam-MessageData: oHAbBAzWlkiEHIlELc3D8eXKZ+ZEQAwTinJC3ttR+RQdX0tfuK4OqLdZSlqZRA/a82DoPstO1o4GY6XnA69LFKsOyLpjBtXZvZzi3zcI6/rX82Mrf1YZtXZC59XdqvLvjdUiy0y10gWmpwA13PB6SA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35977316-9343-41e6-65c2-08d9313849a1 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:27.4908 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT108 Subject: [FFmpeg-devel] [PATCH 35/41] avcodec/libwebpenc: Deduplicate options, AVClass, pix_fmts 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: LzbEHy/GGw37 Signed-off-by: Andreas Rheinhardt --- libavcodec/libwebpenc.c | 17 +++---------- libavcodec/libwebpenc_animencoder.c | 17 +++---------- libavcodec/libwebpenc_common.c | 38 +++++++++++++++++++++++++++++ libavcodec/libwebpenc_common.h | 33 ++++++------------------- 4 files changed, 51 insertions(+), 54 deletions(-) diff --git a/libavcodec/libwebpenc.c b/libavcodec/libwebpenc.c index 97adacb6b2..afaf80047b 100644 --- a/libavcodec/libwebpenc.c +++ b/libavcodec/libwebpenc.c @@ -87,29 +87,18 @@ static int libwebp_encode_close(AVCodecContext *avctx) return 0; } -static const AVClass class = { - .class_name = "libwebp", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_libwebp_encoder = { .name = "libwebp", .long_name = NULL_IF_CONFIG_SMALL("libwebp WebP image"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_WEBP, .capabilities = AV_CODEC_CAP_DR1, + .pix_fmts = ff_libwebpenc_pix_fmts, + .priv_class = &ff_libwebpenc_class, .priv_data_size = sizeof(LibWebPContext), + .defaults = ff_libwebp_defaults, .init = libwebp_encode_init, .encode2 = libwebp_encode_frame, .close = libwebp_encode_close, - .pix_fmts = (const enum AVPixelFormat[]) { - AV_PIX_FMT_RGB32, - AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUVA420P, - AV_PIX_FMT_NONE - }, - .priv_class = &class, - .defaults = libwebp_defaults, .wrapper_name = "libwebp", }; diff --git a/libavcodec/libwebpenc_animencoder.c b/libavcodec/libwebpenc_animencoder.c index 742aefb467..537f1576bd 100644 --- a/libavcodec/libwebpenc_animencoder.c +++ b/libavcodec/libwebpenc_animencoder.c @@ -125,29 +125,18 @@ static int libwebp_anim_encode_close(AVCodecContext *avctx) return 0; } -static const AVClass class = { - .class_name = "libwebp_anim", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_libwebp_anim_encoder = { .name = "libwebp_anim", .long_name = NULL_IF_CONFIG_SMALL("libwebp WebP image"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_WEBP, .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY, + .pix_fmts = ff_libwebpenc_pix_fmts, + .priv_class = &ff_libwebpenc_class, .priv_data_size = sizeof(LibWebPAnimContext), + .defaults = ff_libwebp_defaults, .init = libwebp_anim_encode_init, .encode2 = libwebp_anim_encode_frame, .close = libwebp_anim_encode_close, - .pix_fmts = (const enum AVPixelFormat[]) { - AV_PIX_FMT_RGB32, - AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUVA420P, - AV_PIX_FMT_NONE - }, - .priv_class = &class, - .defaults = libwebp_defaults, .wrapper_name = "libwebp", }; diff --git a/libavcodec/libwebpenc_common.c b/libavcodec/libwebpenc_common.c index 3c4c3e2294..6a5fa70dcd 100644 --- a/libavcodec/libwebpenc_common.c +++ b/libavcodec/libwebpenc_common.c @@ -24,8 +24,46 @@ * WebP encoder using libwebp: common structs and methods. */ +#include "libavutil/opt.h" #include "libwebpenc_common.h" +const AVCodecDefault ff_libwebp_defaults[] = { + { "compression_level", "4" }, + { "global_quality", "-1" }, + { NULL }, +}; + +#define OFFSET(x) offsetof(LibWebPContextCommon, x) +#define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM +static const AVOption options[] = { + { "lossless", "Use lossless mode", OFFSET(lossless), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE }, + { "preset", "Configuration preset", OFFSET(preset), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, WEBP_PRESET_TEXT, VE, "preset" }, + { "none", "do not use a preset", 0, AV_OPT_TYPE_CONST, { .i64 = -1 }, 0, 0, VE, "preset" }, + { "default", "default preset", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_DEFAULT }, 0, 0, VE, "preset" }, + { "picture", "digital picture, like portrait, inner shot", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_PICTURE }, 0, 0, VE, "preset" }, + { "photo", "outdoor photograph, with natural lighting", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_PHOTO }, 0, 0, VE, "preset" }, + { "drawing", "hand or line drawing, with high-contrast details", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_DRAWING }, 0, 0, VE, "preset" }, + { "icon", "small-sized colorful images", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_ICON }, 0, 0, VE, "preset" }, + { "text", "text-like", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_TEXT }, 0, 0, VE, "preset" }, + { "cr_threshold","Conditional replenishment threshold", OFFSET(cr_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE }, + { "cr_size" ,"Conditional replenishment block size", OFFSET(cr_size) , AV_OPT_TYPE_INT, { .i64 = 16 }, 0, 256, VE }, + { "quality" ,"Quality", OFFSET(quality), AV_OPT_TYPE_FLOAT, { .dbl = 75 }, 0, 100, VE }, + { NULL }, +}; + +const AVClass ff_libwebpenc_class = { + .class_name = "libwebp encoder", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, +}; + +const enum AVPixelFormat ff_libwebpenc_pix_fmts[] = { + AV_PIX_FMT_RGB32, + AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUVA420P, + AV_PIX_FMT_NONE +}; + int ff_libwebp_error_to_averror(int err) { switch (err) { diff --git a/libavcodec/libwebpenc_common.h b/libavcodec/libwebpenc_common.h index e74e57939e..0c13176b79 100644 --- a/libavcodec/libwebpenc_common.h +++ b/libavcodec/libwebpenc_common.h @@ -29,11 +29,12 @@ #include -#include "libavutil/common.h" +#include "libavutil/attributes.h" #include "libavutil/frame.h" -#include "libavutil/imgutils.h" -#include "libavutil/opt.h" +#include "libavutil/log.h" +#include "libavutil/pixfmt.h" #include "avcodec.h" +#include "codec.h" #include "internal.h" typedef struct LibWebPContextCommon { @@ -57,28 +58,8 @@ int ff_libwebp_get_frame(AVCodecContext *avctx, LibWebPContextCommon *s, const AVFrame *frame, AVFrame **alt_frame_ptr, WebPPicture **pic_ptr); -#define OFFSET(x) offsetof(LibWebPContextCommon, x) -#define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM -static const AVOption options[] = { - { "lossless", "Use lossless mode", OFFSET(lossless), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, VE }, - { "preset", "Configuration preset", OFFSET(preset), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, WEBP_PRESET_TEXT, VE, "preset" }, - { "none", "do not use a preset", 0, AV_OPT_TYPE_CONST, { .i64 = -1 }, 0, 0, VE, "preset" }, - { "default", "default preset", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_DEFAULT }, 0, 0, VE, "preset" }, - { "picture", "digital picture, like portrait, inner shot", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_PICTURE }, 0, 0, VE, "preset" }, - { "photo", "outdoor photograph, with natural lighting", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_PHOTO }, 0, 0, VE, "preset" }, - { "drawing", "hand or line drawing, with high-contrast details", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_DRAWING }, 0, 0, VE, "preset" }, - { "icon", "small-sized colorful images", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_ICON }, 0, 0, VE, "preset" }, - { "text", "text-like", 0, AV_OPT_TYPE_CONST, { .i64 = WEBP_PRESET_TEXT }, 0, 0, VE, "preset" }, - { "cr_threshold","Conditional replenishment threshold", OFFSET(cr_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE }, - { "cr_size" ,"Conditional replenishment block size", OFFSET(cr_size) , AV_OPT_TYPE_INT, { .i64 = 16 }, 0, 256, VE }, - { "quality" ,"Quality", OFFSET(quality), AV_OPT_TYPE_FLOAT, { .dbl = 75 }, 0, 100, VE }, - { NULL }, -}; - -static const AVCodecDefault libwebp_defaults[] = { - { "compression_level", "4" }, - { "global_quality", "-1" }, - { NULL }, -}; +extern const enum AVPixelFormat ff_libwebpenc_pix_fmts[]; +extern const AVClass ff_libwebpenc_class; +extern const AVCodecDefault ff_libwebp_defaults[]; #endif /* AVCODEC_LIBWEBPENC_COMMON_H */ From patchwork Thu Jun 17 02:31:57 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28458 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp202884iol; Wed, 16 Jun 2021 19:38:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwdfK3EYgOkWLoVg56HiHyC3Gi3lVb6dUtI0u1VSA9yqJU3gE7X5MBBitYxAYHMeFNSGzVo X-Received: by 2002:a17:906:411a:: with SMTP id j26mr2607263ejk.486.1623897520925; Wed, 16 Jun 2021 19:38:40 -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 cm23si816222edb.119.2021.06.16.19.38.40; Wed, 16 Jun 2021 19:38:40 -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=eFaVhAUD; 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 EA579689FD1; Thu, 17 Jun 2021 05:34:01 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074082.outbound.protection.outlook.com [40.92.74.82]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E4862689BD5 for ; Thu, 17 Jun 2021 05:33:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MdTvRcGXFsIKv9kdwuJIcPs6Cq+vgVY9MPLJd63dOi5n/OM1BreGvmrW+bW9mSuKk0XFrq1mNkC0L7hxN+nyTBJhFRpRDKYFiZ702KfhnZz+V8hyBIJU6ATgwrfJNcoF2/VWMCmCkEFnftq2qg9Ypg1FFdzAhqYG0huYd+HEX3OodCrjbiCP6hqf1WiwcIdURceIVy+FvX8nl0hfNjzxIAfNdvby90KMedlES99tb7Z/zpttVqL1lu+IaeQ6EsAWF0P5CO/T7zWS2oYMCn7k6i82rueX01LWg5lxBleOescXXARQHwwg86Q313aIPrgbI2xoF1kPSYGQ6dncNfPYuw== 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-SenderADCheck; bh=mL+IsIx33Gdvufj7XSYm0amx9jWgXeK9b1bUw2ESLJk=; b=L43mcnGjlNzsLX6wAQAUTassqRAlsvBDwG97GisPbJO72jdlj+S2bAWb0CzRlPxAta/dp1Ne+bAgdkeP985eGhu04uLsazy3PCgoRa8RgnGepkZ6NzIXTFk9UznCd2F/BO0no2mQa6frFc08KMJG8aE6PgWuOGkpgN4ZLhT5eM/LmK3CrtYpyjYm2hld+dKg4doDvNwLd1OTPgUHIK/4ISEHaoXUPY6lrZSM/5915GxkAWpNWAUymdrYKB2aQnmk5vnnaxJlSd4CtYki5IEYf8b9SnGo68I13LYJMjUbWXXBfqTUivrTxKvVVEQktI/56S0mnh3U8nVJ8PT5hGKOIA== 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=mL+IsIx33Gdvufj7XSYm0amx9jWgXeK9b1bUw2ESLJk=; b=eFaVhAUDx6omMGZkSmk8Kts/atJOVglzmttEmahYGp3AbDn8VneLSLqVHFmmYV4lGPNOwZTvj8o9IHXj+/XfesWUWkmHn7yrquAoV0M0Rb5XYNELDVCMw8YtnX4oDo0PjY3LA1eJpNL9eBiigO2mxUf+alEw3pHbTI23P+iqMrv+2tp35Sv1Pu/YwzFaSJAXBQH/zrr4hp5ioIKUJu53avg2sk1vDolGISFaAzpuYq70/NHdPQIRAos+iEbnhvj1PUhzeLBobHPg7R8rRmqjnYHKGf44gE3cSig4ardFu616Kg0cmmPJG4NHA8TULwCsTCc0VZtJZSPEYmNBYEQgRA== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::44) by HE1EUR04HT108.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::78) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:57 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:57 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:3437E12E8BE15F13BB0FA568716D96C9CA2762B70885A4B22645017A16B99A23; UpperCasedChecksum:D96823C848276FF20AAA774B0B997A3B35F07BADEC5E4C77FC608756BB0BD8FD; SizeAsReceived:7754; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:57 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [u1PZt06rYhBJe/0YG9XJ7+DVCShfK0kH] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-35-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:27 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 4cf77122-498a-4b44-14af-08d9313849f2 X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkC3quzdgnuRkT2j4rTnc1SI0KieVtAvNEQgZdA8pHeJBkBrw0bJCxLmLL52rCDWidMikT9fEz5tQm1MoEfq7BsikOMbYQTHwBjNzdfa8TTZYKZkMZ11U6gcORZHi+pOnYrpmWNEv88etkJjSQiPomzqXDr8tJOnvezU+XTWkgWrpT+zaTTa6e5MsEQSRO19b9PjA1Oscn6Da7MNHvmlUceyTx3BrfSUHwpBPmhmp7OGxFvEudF4Ha+gnOZDJncVg6Y7FR4mriETWi4NMl37WGB+8PLIHuDDckt8tu1tXiOPikM49yvgg8EE9PFYbQ5ZOyz8X9kOL1ELpHS4fM1h5UxTC6vMYl62MhFYsuzF1QVrbNLSHRsSImyhLwvdUoAT6uzNx2og+TUjepHirkh/BeT/BFj9BtfUqMPCVM+Uou6Qr0XUyeTrcpqdnC5ZsXl44USnq/9s7RWoDsfNobNlW93vIhuEpgtkWQYlVSoPbcW0qBFu+RTYelMGUQOCrnzQkp3bj9BKDwttTQg9wNM9nHd970HiYHktaD2CRGSOKkgj8AK/6o3WGDXr3AN5uPtGJsuwiMBBC1Tq84OYyvd4OSLnUUMVusfj2URsKXqwk+eglNnzlp7ULeI9e0oF8IJzfq515i+VnlaG8Lc43xKnMxarSS1N5gKfNfmCBL2xQATvTmJsUAmov6l3A== X-MS-TrafficTypeDiagnostic: HE1EUR04HT108: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8HLxVdIWinoMUMm68Zlapii1YoXEtqoGEnKJqLOec/eA5+Cwt6YVW6kLNQShhp4qGC6F+cDRJ+bDxLP91fLd8JolLtIHlYj8DutN13mlEYuw4pkos4ruUMABpZRRUnTt1JbruGatIr4/eTiY9v49Vw+V9EiD4D5pPr1d/oO9UgYIveA1EaqG4L4tKsY66bQn6mhYsyTXFgQQ8wZjGAhb/qsxbdeVFU7mM2zgVXvWFD5OnkUUU909Si9wP66j5LVUPeknv1HOHtvMXyds+Yu+y553A/JueOvAUCi3JO+6OL4Z3RUOoVuAdg9t8DZlxbudc/TFUWwjAuBWFv0AzfEOYfwhpQzsxErEwzbsLpR9j9xIJBWfiIWSZOmlHyg+d0vOc8dEys2pIFDWieSqR+YMGg== X-MS-Exchange-AntiSpam-MessageData: xoXafYF6KTLOh8NMFQDD0IQV+SevqOBLAGa7ZMfpYqoa7lVUJwuGQeOaFNx4PHZ8gI2oZZEW/IcLlzo+0G3Qh/pIK2unqbPzdR9qAVEzpDuyG+Wy4MhlC7cJAmjJ1ZrTZl10vrvIpd1LspbObl8wCA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4cf77122-498a-4b44-14af-08d9313849f2 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:28.0496 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT108 Subject: [FFmpeg-devel] [PATCH 36/41] avcodec/g726: Deduplicate AVClasses 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: jTmvn+R9WZIk The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/g726.c | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/libavcodec/g726.c b/libavcodec/g726.c index 2e053bc5e3..2a0148c1d5 100644 --- a/libavcodec/g726.c +++ b/libavcodec/g726.c @@ -382,13 +382,6 @@ static const AVOption options[] = { { NULL }, }; -static const AVCodecDefault defaults[] = { - { "b", "0" }, - { NULL }, -}; -#endif - -#if CONFIG_ADPCM_G726_ENCODER static const AVClass g726_class = { .class_name = "g726", .item_name = av_default_item_name, @@ -396,6 +389,13 @@ static const AVClass g726_class = { .version = LIBAVUTIL_VERSION_INT, }; +static const AVCodecDefault defaults[] = { + { "b", "0" }, + { NULL }, +}; +#endif + +#if CONFIG_ADPCM_G726_ENCODER const AVCodec ff_adpcm_g726_encoder = { .name = "g726", .long_name = NULL_IF_CONFIG_SMALL("G.726 ADPCM"), @@ -414,13 +414,6 @@ const AVCodec ff_adpcm_g726_encoder = { #endif #if CONFIG_ADPCM_G726LE_ENCODER -static const AVClass g726le_class = { - .class_name = "g726le", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_adpcm_g726le_encoder = { .name = "g726le", .long_name = NULL_IF_CONFIG_SMALL("G.726 little endian ADPCM (\"right-justified\")"), @@ -432,7 +425,7 @@ const AVCodec ff_adpcm_g726le_encoder = { .encode2 = g726_encode_frame, .sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, - .priv_class = &g726le_class, + .priv_class = &g726_class, .defaults = defaults, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; From patchwork Thu Jun 17 02:31:58 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28453 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp203159iol; Wed, 16 Jun 2021 19:39:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxco+dPPVhAq1SVvCP70YLtG45e8yp+QQSVtbc6NAaY6NGKrLPTb1b4TPloJH12JU38/ZGS X-Received: by 2002:a17:907:9fd:: with SMTP id ce29mr2561038ejc.396.1623897540570; Wed, 16 Jun 2021 19:39:00 -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 m21si4157631ejn.309.2021.06.16.19.39.00; Wed, 16 Jun 2021 19:39:00 -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="lDuGMIF/"; 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 8C3E168A03A; Thu, 17 Jun 2021 05:34:03 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075048.outbound.protection.outlook.com [40.92.75.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 51065689BE0 for ; Thu, 17 Jun 2021 05:33:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ET90Ln2eOpVOlt9BJvWu35FSaKnOmEdBrs97+XCahjRZF/29HoFwumYPRvKK6s/4sWOvktLbJI/SV2ltTdVXEga4N1Iqh7kQPU3hQmSQ3gi7f00WUd1PYMhkyr/HpAf3sG43dGmLUTASIHdlFTOFbTp/bcWOI8ho/KH2iTz4lWkCmYSvA7vSpxZXQ2p7x4D3gqEIAdFyjXv/e9Zp2sQoxmzxOYAXHJc1Q1wpQrFvqOod2NDJbPEDUbcLo7UA7ac9vH9h9RvYly83dt987bTwJ2ZF2nm7iDbutKHXfcwMuOUPkb3uI8tEVEhAKeqODdf7F8htMgVx/jfeX6ez7NQaEw== 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-SenderADCheck; bh=mUW5t7NzlNXZOjGAdKEgC8iujPE70DaY64bzmbcuiT0=; b=de4ZselsZUxhgB8Hd9cmi7vJ+5T97Iz+1sdlFr1q/CbBnnvkkCUOhm5fERN5bS/rDlbaQ2ljiWDJrlMSo+TOfmhWNnFYVPLwkYcnNX0i4o+L+aIBZOCgIRYCED3KX2BqKgMZr9kabiyWzGs/JuGAQE7xW+kzQNOGmSRcfAfXntk3KeRvZwPHKI29DmlkAXC6YmpGZLI4RoeEGuIOcOBbY2WVLFXj6nV0sVzroa2vuQHwiM+8p6+vyk4uYOzHcF0qTbR8jI6qb7kYaoJEBLI4Y+0zkF92gCfVp0cDZFKGBM1u1vcXReDp3F79mPTl4BKtEP0Dkk1NsHERkHOgFVgc5A== 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=mUW5t7NzlNXZOjGAdKEgC8iujPE70DaY64bzmbcuiT0=; b=lDuGMIF/f9kty+VaNIYFCiQbYbbrAKTVkcExpjwRSb+wH9Qmd+Ee+vedhLTb1u0VMleWkm4A6u6g6t8DAlUdG+E6RRFMeTfQfV+hRvOS2XXS2cJKkXq2bKIcRscREsQn0tqLxeRLzSAsjtNZMqfH6MPMLOPhO0GwgcqbGWKt41UVtFtKsQL/NYX0XvBQ/61aUat1Nf+uBI5I79V3jmd4fzLmeyL3HUnH1sfkA9m1tk3E1u+Jz1q7hbsbtT9djkNMXF/BT/YMsWsJBcUgwG6A/e3IPTQiqPSsclx8j1zzwxdiXLUYgXHd6DJCftBwrQunt6+B+qj0xpZQA5izEvIsqg== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::40) by HE1EUR04HT161.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::96) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:57 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:57 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:325C5227A25940C98520FCD124FA094A28B6C5E352492D7F38F8FA2A9A605FFB; UpperCasedChecksum:E5AD6ED588D13EABF0D343DE1BC145CCD14E6ABB95923BC350A562BCDDD2F595; SizeAsReceived:7792; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:58 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [Eb1zbtQW0N7rvv1nD7UDLTlLMD9IOo6B] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-36-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:28 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 5ef7c735-2476-4479-56e8-08d931384a47 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSz7Gd0YLSftKT0G4ETHQtWtynlnDzdDr3LaV9oCj0hg7bwIg6UaWCYDNaHAU6u/1374u8WJCZX1oQ4rY3scWiUq/MjOr/iYU7UECuJdfuQVW9vUWHApMY3MFVKtvU4VURtbVuo2kbY2OMHmAGXj0NUKQWZr+QGADOxPCPv27bcO8dMuTIcv7ZIaKQzQLFrKZqq583y638fmrfSn9YxOglzOmaQZzssHl2pytnCgHI5TYpkOk+kaBTTBbFut57BRy+vKT5SONEusKt+8HSOUw9ToEcTsJPMENStt5ZrhsayhLOlBeEvwF+VbCUuAHwbiNEfGlM2GZ9xn9VnwGRl+jDz2vvx3MpyqunPEgeJ8d6Vg+49GJ+jxtRMML+ICUDQe2+H7PLpweibU79OttnEjWPCAQOnUXomaI7AGVJa+6181Nd/FqSv5Uly6pXtoRHHcwTStx+NDsP1yfbFPWgCi/sDnJ4chJnGx9Q/xAVRGOCyFNA7G2zUb/fO3JT80xPSPHvG1XRrA8L1X2fiYICBD0TC0unHc8g0lHe5TlH2NRs3cmICmTwQci5bHD8MjE8/pTS42Inl7HffcX05Nr82K3saL9WQDk4qLS3Uq7++liKOMOJ3p9TXcsbDaVYu1xIlG8f2KWGJhUOETiwcLkfj/RilKOVLJscRO3BI8Ft7LJuNiw+c7Jag47zf2XsjKy0McR9xpqrspr9mX8NBwKGDeMpxuQTAuEGb+1i2r0/9kAiTWw8ByAuCQ4shfbbTnSy0okY= X-MS-TrafficTypeDiagnostic: HE1EUR04HT161: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3xd04TJ9n4m21NaBYLAUo1XzGQVB2p3t7FgrvfphYBdCszHkPEQv9W/VVHAKAaJjdGqsXUtEu6TCig2Vgo0eV/xxr4ZFcARvzUrkACWaM7b8qgNI+8GnZxkFODY1y4fbwGiB44lEQb0yhxq5wzeitNWXZiWg82lcA6tAimxWBNWII17/ldnKr6KtfUkEXnJGE6jYz93/NU9xueK1ZZSjvOgF39UKmE//t6BAJks+zL1JTgCxJ7Rj/vGBiVKEHx5KDd3202oKRKQfns/GJa7Dv1jc+Feh+hmUNYEUJwhVIIY3uAAROJ71ku9OsR8JYW7DbvLJ+PWhTzA7JraIRki48R7ohQ+Wjdh7GnEPZ9VQCq2rX07t7ha0E2bAo0XRgqWq X-MS-Exchange-AntiSpam-MessageData: vNYIGlY/okLHLZEQuZqyyLFTd+Eemhifg4QkxqYm3qd0hVyglXlfIt+RQDzLRGmUmiWb4QkJ78YxSA+HZP3zSIEA28RCvs9/LbGrRDaWUpuDkM9kPT86LpV7IwOl4+E8NLNJ+MpXtsAEThCI7X3GxA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5ef7c735-2476-4479-56e8-08d931384a47 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:28.6103 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT161 Subject: [FFmpeg-devel] [PATCH 37/41] avcodec/mpegvideo_enc: Deduplicate ff_mpv_generic_options-based AVClasses 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: GfYVIj72ZQqv The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/flvenc.c | 9 +-------- libavcodec/h261enc.c | 9 +-------- libavcodec/mpegvideo.h | 2 +- libavcodec/mpegvideo_enc.c | 36 +++++++++++------------------------- libavcodec/rv10enc.c | 9 +-------- libavcodec/rv20enc.c | 9 +-------- libavcodec/speedhqenc.c | 9 +-------- libavcodec/wmv2enc.c | 9 +-------- 8 files changed, 18 insertions(+), 74 deletions(-) diff --git a/libavcodec/flvenc.c b/libavcodec/flvenc.c index b40178cd43..614ef20243 100644 --- a/libavcodec/flvenc.c +++ b/libavcodec/flvenc.c @@ -91,18 +91,12 @@ void ff_flv2_encode_ac_esc(PutBitContext *pb, int slevel, int level, } } -static const AVClass flv_class = { - .class_name = "flv encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_flv_encoder = { .name = "flv", .long_name = NULL_IF_CONFIG_SMALL("FLV / Sorenson Spark / Sorenson H.263 (Flash Video)"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_FLV1, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, @@ -110,5 +104,4 @@ const AVCodec ff_flv_encoder = { .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]) { AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE}, - .priv_class = &flv_class, }; diff --git a/libavcodec/h261enc.c b/libavcodec/h261enc.c index da681f140a..79f680f81d 100644 --- a/libavcodec/h261enc.c +++ b/libavcodec/h261enc.c @@ -385,18 +385,12 @@ av_cold void ff_h261_encode_init(MpegEncContext *s) ff_thread_once(&init_static_once, h261_encode_init_static); } -static const AVClass h261_class = { - .class_name = "h261 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_h261_encoder = { .name = "h261", .long_name = NULL_IF_CONFIG_SMALL("H.261"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_H261, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(H261Context), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, @@ -404,5 +398,4 @@ const AVCodec ff_h261_encoder = { .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]) { AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &h261_class, }; diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 546d9c7929..76b32ea547 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -680,7 +680,7 @@ FF_MPV_OPT_CMP_FUNC, \ { "brd_scale", "Deprecated, does nothing", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #endif -extern const AVOption ff_mpv_generic_options[]; +extern const AVClass ff_mpv_enc_class; /** * Set the given MpegEncContext to common defaults (same for encoding diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 794ca017a4..3d4ffdf021 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -85,7 +85,7 @@ static int dct_quantize_trellis_c(MpegEncContext *s, int16_t *block, int n, int static uint8_t default_mv_penalty[MAX_FCODE + 1][MAX_DMV * 2 + 1]; static uint8_t default_fcode_tab[MAX_MV * 2 + 1]; -const AVOption ff_mpv_generic_options[] = { +static const AVOption mpv_generic_options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT @@ -96,6 +96,13 @@ const AVOption ff_mpv_generic_options[] = { { NULL }, }; +const AVClass ff_mpv_enc_class = { + .class_name = "generic mpegvideo encoder", + .item_name = av_default_item_name, + .option = mpv_generic_options, + .version = LIBAVUTIL_VERSION_INT, +}; + void ff_convert_matrix(MpegEncContext *s, int (*qmat)[64], uint16_t (*qmat16)[2][64], const uint16_t *quant_matrix, @@ -4648,32 +4655,18 @@ const AVCodec ff_h263p_encoder = { .priv_class = &h263p_class, }; -static const AVClass msmpeg4v2_class = { - .class_name = "msmpeg4v2 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_msmpeg4v2_encoder = { .name = "msmpeg4v2", .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 2"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_MSMPEG4V2, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &msmpeg4v2_class, -}; - -static const AVClass msmpeg4v3_class = { - .class_name = "msmpeg4v3 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, }; const AVCodec ff_msmpeg4v3_encoder = { @@ -4681,20 +4674,13 @@ const AVCodec ff_msmpeg4v3_encoder = { .long_name = NULL_IF_CONFIG_SMALL("MPEG-4 part 2 Microsoft variant version 3"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_MSMPEG4V3, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &msmpeg4v3_class, -}; - -static const AVClass wmv1_class = { - .class_name = "wmv1 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, }; const AVCodec ff_wmv1_encoder = { @@ -4702,11 +4688,11 @@ const AVCodec ff_wmv1_encoder = { .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 7"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_WMV1, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &wmv1_class, }; diff --git a/libavcodec/rv10enc.c b/libavcodec/rv10enc.c index c7bd76bf1a..72b25e0c55 100644 --- a/libavcodec/rv10enc.c +++ b/libavcodec/rv10enc.c @@ -63,23 +63,16 @@ int ff_rv10_encode_picture_header(MpegEncContext *s, int picture_number) return 0; } -static const AVClass rv10_class = { - .class_name = "rv10 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_rv10_encoder = { .name = "rv10", .long_name = NULL_IF_CONFIG_SMALL("RealVideo 1.0"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_RV10, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &rv10_class, }; diff --git a/libavcodec/rv20enc.c b/libavcodec/rv20enc.c index 9da4d144ad..19b6aab278 100644 --- a/libavcodec/rv20enc.c +++ b/libavcodec/rv20enc.c @@ -60,23 +60,16 @@ void ff_rv20_encode_picture_header(MpegEncContext *s, int picture_number){ } } -static const AVClass rv20_class = { - .class_name = "rv20 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_rv20_encoder = { .name = "rv20", .long_name = NULL_IF_CONFIG_SMALL("RealVideo 2.0"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_RV20, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]){ AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE }, - .priv_class = &rv20_class, }; diff --git a/libavcodec/speedhqenc.c b/libavcodec/speedhqenc.c index 43437223db..4a2b422f13 100644 --- a/libavcodec/speedhqenc.c +++ b/libavcodec/speedhqenc.c @@ -265,18 +265,12 @@ int ff_speedhq_mb_y_order_to_mb(int mb_y_order, int mb_height, int *first_in_sli } #if CONFIG_SPEEDHQ_ENCODER -static const AVClass speedhq_class = { - .class_name = "speedhq encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_speedhq_encoder = { .name = "speedhq", .long_name = NULL_IF_CONFIG_SMALL("NewTek SpeedHQ"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_SPEEDHQ, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(MpegEncContext), .init = ff_mpv_encode_init, .encode2 = ff_mpv_encode_picture, @@ -286,6 +280,5 @@ const AVCodec ff_speedhq_encoder = { AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV444P, AV_PIX_FMT_NONE }, - .priv_class = &speedhq_class, }; #endif diff --git a/libavcodec/wmv2enc.c b/libavcodec/wmv2enc.c index b3d2a05c4e..ab5365d1f6 100644 --- a/libavcodec/wmv2enc.c +++ b/libavcodec/wmv2enc.c @@ -214,20 +214,13 @@ void ff_wmv2_encode_mb(MpegEncContext *s, int16_t block[6][64], s->p_tex_bits += get_bits_diff(s); } -static const AVClass wmv2_class = { - .class_name = "wmv2 encoder", - .item_name = av_default_item_name, - .option = ff_mpv_generic_options, - .version = LIBAVUTIL_VERSION_INT, -}; - const AVCodec ff_wmv2_encoder = { .name = "wmv2", .long_name = NULL_IF_CONFIG_SMALL("Windows Media Video 8"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_WMV2, + .priv_class = &ff_mpv_enc_class, .priv_data_size = sizeof(Wmv2Context), - .priv_class = &wmv2_class, .init = wmv2_encode_init, .encode2 = ff_mpv_encode_picture, .close = ff_mpv_encode_end, From patchwork Thu Jun 17 02:31:59 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28452 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp203051iol; Wed, 16 Jun 2021 19:38:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwHTJ4NWT0DRjGlGxCKyrjzfFUEg06uNaSN9NfLuWqlGkRQsLduq3Gzc5vJtENjvwJEi7xm X-Received: by 2002:a17:906:e253:: with SMTP id gq19mr2708640ejb.138.1623897531792; Wed, 16 Jun 2021 19:38:51 -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 m12si4023925ejq.256.2021.06.16.19.38.51; Wed, 16 Jun 2021 19:38:51 -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=BUIvrhpY; 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 AF8E7689FF6; Thu, 17 Jun 2021 05:34:02 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074098.outbound.protection.outlook.com [40.92.74.98]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 92C4E689F27 for ; Thu, 17 Jun 2021 05:33:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Sdk9M5S7f54BAQVARi+Xqr+j6jpfkDzGboQmLk+FEjBoJREWfGv+hBZclsfvxUvxxk7v3GqZMVtpUhOI/dY3Tiiuk7Hn9Jq0PDm6itqH/83iw1ytzuzT0CqipEZ9plSLJS/667exS8/PgHlQLtLPnvYbBWUXH21DyiuDc45Bsk4cTm/D+ERgbxTu5ShOBoj8suFybuxjiRgafXPn9EOgma2Cs4b7TuzgCU4Texk8UX4XI+jWU0QDFyjOnzXzqcKvnAcFlOxwOVfqXI3N9ObFX9ne7LNiFLaaeV1kzUCo0FQ+3w7z01C/k3ZI5dUlzmblOfPnL9foRZczOQ+wXwEtbA== 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-SenderADCheck; bh=8mgoDsoCLUmhd2eDGexIUsQ4313qaMergTbMMGlNGQo=; b=nkYmNVbJXPwV+CH0o3ka7ikFj99tiEHifIYitKmq73NtAqO0eIMjAtuhgoGjkBB5v0UFuJKgayhtgA+7yxwMhhjWQPyJnIbC6684WYSnfsH0x1sJTXGbpOW5OFzMxHao9Au84ypb+zILITc8PuLUVcTMeLuBHu1l44UvlRvXzo0Nm+nDKFZuQXNMG4rhGHLngibxFfFXjmA2rCHdHvjvayrJBMJKnmSfvZQSi18dIA4y9O6GqCMPVL5gVvZe4Jh48Y+CNjsFn9dQBgsSIO4e8Nqre8tjliO7SmzrT66f186o/QBXVvEoOfXECL+SvJgbG5e49OAyRgup1aapPCoiOQ== 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=8mgoDsoCLUmhd2eDGexIUsQ4313qaMergTbMMGlNGQo=; b=BUIvrhpYVzbIcM0XPCI9JTpROifx/SgT43sE/8+NcTHEgDxJkVuGX7GNAe1wo/S4BKlO4g6YQQsVET+9iUZR4pubNM7MKXOIaQJOu9VAT+pRW+seLQtG+GehCBaFto+zZ7naDiXnb6MkuMnfnkEoRGSBm9BwTX2JQVHLXgFs7cXJSHYm0flpOTrUh6Os+6iqCyl95xw9IGvIbBgXhhAzV4eSgeQhzysDJjSNVN3EhaMOxEazjQl9VB5usxV6aE7tx1HU1gl8MxicGHSramfryCWaFG6Pc8i6k5aklkGg6BAtNtFqKXcXjUL+WGxgsbhjHVatoSxvWV2gNgYJi5ANPw== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4c) by HE1EUR04HT025.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:58 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:58 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:6D96ABC07813C298BDBCA2610197B4FA993F0776E039D9B38CCC2955822AB571; UpperCasedChecksum:8DA3C428A8D705A6FE73C45093D38D56AE01D1AC2AB70211E99290836DE1F777; SizeAsReceived:7756; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:59 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [TiyzqbU3rcmrwV6965cQeKZ5YzGVYEE9] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-37-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:28 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: e5ba7a30-0b15-47bb-4b0f-08d931384a9c X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCsd7pYOYgnEHc6MyYkK5rzOhD9i6Qmaw+JUo/nP0FjRQm2T9wKwUM2p7Y3hl1KSo2vMblaMtutWt04iAoGBFYPUyc+Xp7G4buYzN0yQqkKufnkcmEf4JIFr+UEfSPmHYy6m5ArwnWjVRJTkLzbBcIf86p/EOtTTDebtsatyewRDOuHzFCPGkLQX5Ecwr3pzNxO+hK20hCgVRI3s2yT7fPt2oQWbYiQM0A9ClYEjKZxbqsRqk63Hi7MACFi2C57qDteAdCL4Uxs38mQtR88rnHWSg3r5VRb3LXdAbhYPYFA78EK4YHgtKN/npq+SieUk4GrjAKCcnBVTvyjak5LabReCmWqtNHoSDOEvZcu2UrN4543Hb5jJuGiipxGO7u3+yKe7Rzu+ooyBjLxAe5DNslZ0ULR4nFj18V00JDmdCz/VkgK2lW64p6M3UsMJ/t5cda2PzP4rYlOMLrAQ/VcgrvSLwtAkyyQVArqzVG27YhZXUHoWskOX3eSP8EJPhXOv6UNtXC0oWnNkMpmM+0gUx8KloSzIAaq5IwdK4WJLI+/L9+ZTTPw5FDkbhRIDppQ0qD0W316ec7d967FU/qZgQyT2nHCt2k3pXC4BIh6F+xBeLYdtz0rwTtxr71ZSmbo6NaQPYRV3HSsJMLcLvBzeUrQUlbd8uvog26370R8l7CoG1sVt+OVdYR8w== X-MS-TrafficTypeDiagnostic: HE1EUR04HT025: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1sZe+lWDPcJcxMgz+Bk5Ytm3puS8+fOrTxlq3OXH9BKyiiqiAWponRQV/tWGylS+N3lIpzqfVMbk+0gbvsZigYkx0xVcRjfXloKV+UY1HpcPJ0MPMKvWRKfGU/jFeWwhy7IqfFIpMPEtXRn+ypZMJqMyOf02EFg5AiK8/yJ++Hhoc+tanHyGPOj4Mc00TcTGoHG2txYjAIg7iTxF/gVgRJsXGWK0ztUyUodpu+uDvzpdMZkuU88bKFGFxHaAcv6XmVFCYWQwIPzSlE5Z8VdlsdvMdXLhHQKn927KjjjDg2T4FJNrMNuhr77l6CKbdHl9WQVv1ZCTLaZHdFs5dMM5i9dKzuDIEdagzYFUezg2+Ke9JphP8u4onP9dwJTFIOhstgMCW836Vo6g1rTMIj3jJQ== X-MS-Exchange-AntiSpam-MessageData: wgZ+02nRWDieAQcF5n5Vq03SgmfxfrXuXPzrSq01IErhq0BmnnuNoazt+J7vWn2QVf+s94ZgyvnZhm+RTWl04prssJhVT4OfIeEQ/qecWuKqBNyZB7EFTzxF+/dD25YbcD+V6KIJQgxX12w4jJPQXg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e5ba7a30-0b15-47bb-4b0f-08d931384a9c X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:29.1631 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT025 Subject: [FFmpeg-devel] [PATCH 38/41] avcodec/pngenc: Deduplicate AVClasses 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: 6IxrGVoC4VwN The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/pngenc.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/libavcodec/pngenc.c b/libavcodec/pngenc.c index 9a9aee06f9..3ebcc1e571 100644 --- a/libavcodec/pngenc.c +++ b/libavcodec/pngenc.c @@ -1108,14 +1108,7 @@ static const AVOption options[] = { }; static const AVClass pngenc_class = { - .class_name = "PNG encoder", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - -static const AVClass apngenc_class = { - .class_name = "APNG encoder", + .class_name = "(A)PNG encoder", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, @@ -1161,6 +1154,6 @@ const AVCodec ff_apng_encoder = { AV_PIX_FMT_GRAY16BE, AV_PIX_FMT_YA16BE, AV_PIX_FMT_NONE }, - .priv_class = &apngenc_class, + .priv_class = &pngenc_class, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; From patchwork Thu Jun 17 02:32:00 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28499 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:bbc9:0:0:0:0:0 with SMTP id c9csp74542ybk; Wed, 16 Jun 2021 19:39:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyEhK6Q3u0gHFmmNCe8nI7OxJUYKVPFG4q9iSaHCOYLyZf5n5inMQVlCCBZ71Z13yYx4aNW X-Received: by 2002:a17:906:1c4d:: with SMTP id l13mr2578318ejg.531.1623897547240; Wed, 16 Jun 2021 19:39:07 -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 j15si3953490edw.0.2021.06.16.19.39.06; Wed, 16 Jun 2021 19:39:07 -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=FrCwd7Vi; 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 3323A68A02F; Thu, 17 Jun 2021 05:34:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075019.outbound.protection.outlook.com [40.92.75.19]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F0D4A689F27 for ; Thu, 17 Jun 2021 05:33:59 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OahJsER7nt9LbWPOY79DMMXFPxt3h7Y6rF638szpUPRYsvCuy2ZUq1YHtg4u+Jncrbv0DiRolGR+DO7horcVEnTps7j7+UrS0jrqCgHTdGP5Bd72yBMnPItOtKrje2sL/hUi3suNx3qhxmcSp+KBbI3V3r22nkxK2em6rmyhFXoAn2uagMn2LeXA2hmvJgCn9rmghfSYM/6XdOUpraRzctGRezxb+mhlkZgKSOckjEADkp6SIExg9IkSmoTjbRmHkyvxjA3sPWAIp3kZU81MIWgolmAxlUzUBPm12usAgEsi34ELEzrR/BnRHCsMW8OVBZ80sADqSv48LeuzyDJ+VA== 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-SenderADCheck; bh=xdV0ECgLCQ9F/zpQEtUTG3cXTMRCszjcLNAGMvY/3TQ=; b=WTS0sS4LMb/RyNv0XZGDSveHvcCojx1S6rjmVDCaFRtTl3hjL+aroi0BtFo1G4vOEGKVTua5DBsccowSXHayRSB9hgKc2j0C4lRUXbwp3rSInClOGj6vR9H4u/90p5Vh5n6dj2QeJCqx8pPt622VuJXDbZ2F6/cMZeFXSIH/aVIYLlsTuQPOAex7/Ti4FN2avO6aKmPctseEEgaLKjatGPAPf7Nh+Z1qC2U5kLI8Zx/3O2UXQJ0ZchzrufVZrVeS8agmxZMQuWHvKubTealF0uZeQ3OWoXdVWIShOWimWN0a+/cgqF2EzaUFEBTNcpWKvSC0A31sHJktkdpcPMPY/Q== 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=xdV0ECgLCQ9F/zpQEtUTG3cXTMRCszjcLNAGMvY/3TQ=; b=FrCwd7ViXyxtpZIjygp4UQOZi53q33ohEExuTvjB4YynvF0NWarVIzyUJ75mgPkPPG/LBT5RYlLFax8HHjdsxP8GPQ3Q+5BVJ2BCSWZ9/3rXdbACvSd43BYAIT2XEP/QC8Qzf0EyZlKutZdbbxk9EZ2X2FCdZZFkiF5hMNCIJq+0FgjtHlAzUmuNRqpc7AFH3u77TNmZKa/7+GUGhBEz73d3jcCBw/cZNj1HQw5nYNNhb9SFh5Wlm7Y1Tn7+wzn5nyfP3N9CcFnczBzVHDpw6c0QyaXyJ9RjHC1X07cjDWQzf6oEVxDTmX6AGZGs6SgNJwGm3Jp+2lMEUmDO94/HRQ== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT230.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::415) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:58 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:58 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:39026763456E585F7C670E8E5DE6953FF02FFBEA58185C2172062A009FB6FF63; UpperCasedChecksum:EB8DC6E284C6E81D8998C1FC1EE3D523DABCDF24DF559CDBB7134101259D57B1; SizeAsReceived:7768; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:32:00 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [lOBX9S8h/ux5VDvGjQWWATYAsIkMPHKV] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-38-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:29 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: c71680a1-7b31-4fb4-6a43-08d931384af8 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOXs+wenOnHRCZn5MOonaaZYMJbVlIVufgbBRJ5eaW9c1W8wf9qQeNbI4xw+PeFPXKUh+3GItfpJe6nH2Oz97lypig11/V8XdY3V/Qg41Bxwg49DIitBNEzbqjbBJvieZoNOnEveJJKlnNwOjPji9NaJq4kmu4AspbPeN1o6VOBaQXwKKOO/hlpGXsIYQGg8yVvvHKBgm16FPiHU8+kfZQlznZYGIP1O8vIz2cLipzoXHqBgWwja8WFN2BXjpJKohRVyHb9KHGOiddCOJk25ASRP8Jv8e2oYqHf4275tV2csODwkkQgKHe8Ldsk4/xYHgxkSOvzkUxK1i3f4l/RF7ZYCrm0VN+afxrHFobeokPHJWHNM1QpF9TTLOSXKt4126l0ep3QjrHFPChnoG5YLM9RHzMWkXCmT1zXFYywkpdkn+co/kpZTB1c2wrFBd6WyQ0Ss1NviXJN8WawAPTtd3X/sTAkb6ISFOVVFvM1H6bKszjLpxBTWcNJ2H6Togd5t3kzEHWNLIZG93St9HemrBJkcgRwCBciETmtYNpYoOz5LPao7eMjLO89jBl1bCh2vnpSwscrMZssxUmHiHR+lcf9PbD11XBspvrXmmvJ0z2XRjbKpEfpJeBEsyonBpzhY/rsKb7XPucGTx+tsBkCfsePdJ7H6MMudHM/9ILWVKHrR8moW6ZrDpcN2r/MasDbMm/zvpoinNWhaU= X-MS-TrafficTypeDiagnostic: HE1EUR04HT230: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Y99Saw8xVwvwSYfaTsfT3pTZITD6TWXhVcVDSfD+xyt5l/dOOmbxJcZiMFh0VG2BboFuYThZRTYZ+a0qlR05LkKVi+OABE5nq7b8kJ7MCCuHpph+s1S64PuQAtPJkRrDmfMnQnGp/SAmJaGC+giHCthzFjkFeHYEWIWEejQEf8iAjmFPemD5Vv7AtpgYuzBaBSJ7uSAjfUdu+boaxmAQoYkLRHtcS3Y77ewU5/UJDzqYOx3iIgIx9rmH1/Vb8QkOa32wvdzN0WQuQWjwnHY71Ba68xLvtcbXUYAOTW8fO8NEcYuQeKuy77vng1xX4ENtXpsiAnZGKuiul3ksU6h4A+0W1muvDkWRUTCWH1ZxV/YUMjahDSjnK3WHXK8fsBlbttbjPtsFz/c4pSDgE+TI/Q== X-MS-Exchange-AntiSpam-MessageData: 5FntQpARuOxPtgY4FD3flV8o7NlV6MaGXeu6KYlMsTiijzHLuBmW7WasehBJL7UPB4L+ZIzOapHDRu645Z3KI5r0pARGNTgH5jZ1HX4MqARhufAE2nC62YKOANKvFb6tCcvwM7BfSFXMX0Lsxn+uJA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c71680a1-7b31-4fb4-6a43-08d931384af8 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:29.7368 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT230 Subject: [FFmpeg-devel] [PATCH 39/41] avcodec/proresenc_anatoliy: Deduplicate AVClasses 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: Lbge0qjipt5s Content-Length: 1687 The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/proresenc_anatoliy.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c index 3098b9db05..96c6f6d469 100644 --- a/libavcodec/proresenc_anatoliy.c +++ b/libavcodec/proresenc_anatoliy.c @@ -931,13 +931,6 @@ static const AVOption options[] = { { NULL } }; -static const AVClass proresaw_enc_class = { - .class_name = "ProResAw encoder", - .item_name = av_default_item_name, - .option = options, - .version = LIBAVUTIL_VERSION_INT, -}; - static const AVClass prores_enc_class = { .class_name = "ProRes encoder", .item_name = av_default_item_name, @@ -956,7 +949,7 @@ const AVCodec ff_prores_aw_encoder = { .encode2 = prores_encode_frame, .pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_NONE}, .capabilities = AV_CODEC_CAP_FRAME_THREADS, - .priv_class = &proresaw_enc_class, + .priv_class = &prores_enc_class, .profiles = NULL_IF_CONFIG_SMALL(ff_prores_profiles), .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, }; From patchwork Thu Jun 17 02:32:01 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28546 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:bbc9:0:0:0:0:0 with SMTP id c9csp74682ybk; Wed, 16 Jun 2021 19:39:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJznRvGMIautUTRom6uGaqg1M8FMZU/zHJdL+5y8BVR5lJMPaW5SOZx4PKUUqC9FbILNVipM X-Received: by 2002:a05:6402:b6f:: with SMTP id cb15mr3532830edb.25.1623897559993; Wed, 16 Jun 2021 19:39:19 -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 kf3si1267808ejc.206.2021.06.16.19.39.19; Wed, 16 Jun 2021 19:39:19 -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=NFTLkaaq; 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 652DB68A066; Thu, 17 Jun 2021 05:34:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075019.outbound.protection.outlook.com [40.92.75.19]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 293A1689F27 for ; Thu, 17 Jun 2021 05:34:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LJr2V/ZJU5308vrrYq/leemD0sRxcqukH4Fcyd5Z0cujVWZFL8l2AIAprnij84b23tzhgp13txzDAUDDuHRwS7nJT0PewGgANLyLJ9142pmRUIUnz0eBBQbjTZzYzCpJn0Xf1mG2W1IDUyPwMsJc6JC+frFdKhyU2eNXs6c7eVz042u5tZg0USucg9kLXo04fmfbaV9ERHspC9c3GRexetOaIdhiK8KeKeY8mHLEv/QKmswsloQscKvXcBqC4skRWOPndbhPKZUfdZmuB/eNNOCAIKDSv/j4Mlc40ADd7sZgef+J51LbVgWtv2HipUxI7+6sv53xt1g1JHfXZW93bw== 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-SenderADCheck; bh=n+aaDEQH69DoXIt6M/5rFLzTjSlG3JOOuDAIMq46Eck=; b=e3+RONIHhsZ1o9NWoD86kODrucpg7JUsio8QC3VfnKE/tIpsBahvqITwZsom2yWAKDv5knwmM0OK0iedOJ9pNOSmsHLSZAlc6r0yntywHTkcM2PQph3yyZEGz/0+uWJFUQC1nzel7b4B8uCGAb8GGWG2zUpKEtfRZSp77/sFrvoMBE7RV+0Pofo1xRNVeSLW+AnysYcx6YwYhCuYHCqkvv9KCDrdLh1lgLMcqHYEoQ5p7L2SBNnE1+kxxxEOqa9AG/f8gl+V7DiOLmOAkxSfrUZltOb/4nhE8oTNGan9vGiDlkDP6BsjkNUy0UeBVpSApolrkpo390yR1KxeZBV24g== 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=n+aaDEQH69DoXIt6M/5rFLzTjSlG3JOOuDAIMq46Eck=; b=NFTLkaaqoeTtHEGkfBj9ey0g4zsnGGH5oWN7EZKRQsJKc9uElFz98Y4NXu5kfrGx9uBxIdRHCD1TKNOMlk3zvi5GQsOgfsARO3AP44Puoo1slPncNWwIKVNq3PDSQsL9sJlpgq81MJPCrqXuLdkfIJKzNbuZcteKb3bnbDWCw+ek8ZM6lJbF3l9AYAC9q5qJwyFM1uB+oaCIVMtnN9m2CE1hLDmqDRHzxtQG0NzykDdcLHgAh/oMnodsVZqwr8FSTKoF6ksW+Zt4wpvq8mRsGhLlHY8UKVLtEz3//kGX4Nwru/g6qcdHMZ8ve5kCVp0jmHOKL6hF6OrS7h1+9FYYLw== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT230.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::415) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:59 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:58 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0E8D0A5F02FFA9585F876CC6F41A894FFD5C0D1BF8B835AC135FCF8459D0D686; UpperCasedChecksum:85A48E47387AB049B37B128678A605D79CEC817DB7E6F6705E30C276B0971481; SizeAsReceived:7774; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:32:01 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [qgTWpRhc1qmmdmb1F0/6QFUCY3yhBiTn] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-39-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:29 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 62bd599a-8341-4112-1058-08d931384b4d X-MS-Exchange-SLBlob-MailProps: q+fD6XS3/ULuBil78Tl/c0OuVoBVXnkCQS51c7W3ASPogBFZF6psrc0er4bfC9WuZ69t270I+sXEXINlaDjVflHzJ09VkjPmUoKe4lo5XIvC/EHJnKmzLVQji+P4QmoGCJtovDufPyFj09Dnn7kU2eKFB6lLQ9ByVS/acz2iRCa2sGZMdRWAnzsKlUtEqW6T7d4WwHIQ8DvrKP0WnLmBDjmonGIjZqim5qXN0OmECZ8bSEdxJ1gwxBIEQGgEsiw0wjq+gskLDBcnMqAJuiAAgdnNFYOOtzWB24CZS6+uGHqdsysesmvkVAIN2/xWpn0nAHmH3t+ZqXov+mkwWCVNE//xhQJw7oOp5dzIxUIvsMfz6uJ6bkTMwU5QhkbIuC9D5isodcTz+9cXzaaaWByzks3WElW9Vr6mVGOFUaQjPK/CMvMc3PQzLl1/2zSAKRnllxKENxzyaTTDYwMPRK78hs90z6/q/Y7G7BnU0/IgPkyRB7u88XTTFCbTjvVg4F8vK+Suk2V6Del1qPEVWotMDTASNxkKdn0oRxttLVVLT6X46+9i74JbcXybLA71qz3tR+Fc6MLDZbtExpJnqGomMWS7dR7biX2RdK22JX/LZ2zMm2grxuBvHHjvdcJRQ9LBK2t81qbE4fBeu8sn8zicGKZldHAJ0nl0Rxu+3NNc7Np5hnc9bY+mCGFAjyZZVhOFpaGvOOpDkuRamk8ybTn6kQ== X-MS-TrafficTypeDiagnostic: HE1EUR04HT230: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: E6/hGqXjKfqFQc44edteNdvH1SIA+KI7v7grk6meFP1ambar0D9vHyFDz0DqJV7vLnbo+4azUUmVaUMdcltiI4w6VGmKSDcmQL6fYpoMNcR76nNKevbqon4+QFLNnSGe93NOQSDj92BJEC4CUaJiN1uwsdYBR7f9+oQqSW9saROsyGHgQvFbkZHPb4DVcBJc1xU2nF8v8OxKhY+W7gkBaCVRvd7845mct/p7iUB0QkzI9AqH3sUqbos1z6ej01Q2Y4z/oRK+nra+NxonXP4UTTZ+7Mp6iJQFbxcBZsqSdOpsynuQXlYBvmAkatec9AJCHoxFOFuWXKeK4Qx8XoPVO8AiAokvDQ/Vu8Ln1hfy6SF9fa8hemqZAPtgiW9ChfmxdS0QyI84VqlBOrYfrXBwDA== X-MS-Exchange-AntiSpam-MessageData: AAPZgU5cUKeifEde/H985VeJhKUWG27/wULIB7z3zCedS2HCugTtOrvL4ZLX/5tT1jjaSOmUbIHvK4fepeLM8BERNjNYWQDrwVRujsBON7P/l5E3qqEzWz35e2WVxR7fc5C4h3wrzDmtI3fBzHLC+Q== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62bd599a-8341-4112-1058-08d931384b4d X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:30.3026 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT230 Subject: [FFmpeg-devel] [PATCH 40/41] avcodec/proresenc_anatoliy: Deduplicate pix_fmts arrays 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: jeTYA4mPU76x Content-Length: 2319 Signed-off-by: Andreas Rheinhardt --- libavcodec/proresenc_anatoliy.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c index 96c6f6d469..b7034eec80 100644 --- a/libavcodec/proresenc_anatoliy.c +++ b/libavcodec/proresenc_anatoliy.c @@ -938,16 +938,21 @@ static const AVClass prores_enc_class = { .version = LIBAVUTIL_VERSION_INT, }; +static const enum AVPixelFormat pix_fmts[] = { + AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV444P10, + AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_NONE +}; + const AVCodec ff_prores_aw_encoder = { .name = "prores_aw", .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_PRORES, + .pix_fmts = pix_fmts, .priv_data_size = sizeof(ProresContext), .init = prores_encode_init, .close = prores_encode_close, .encode2 = prores_encode_frame, - .pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_NONE}, .capabilities = AV_CODEC_CAP_FRAME_THREADS, .priv_class = &prores_enc_class, .profiles = NULL_IF_CONFIG_SMALL(ff_prores_profiles), @@ -959,11 +964,11 @@ const AVCodec ff_prores_encoder = { .long_name = NULL_IF_CONFIG_SMALL("Apple ProRes"), .type = AVMEDIA_TYPE_VIDEO, .id = AV_CODEC_ID_PRORES, + .pix_fmts = pix_fmts, .priv_data_size = sizeof(ProresContext), .init = prores_encode_init, .close = prores_encode_close, .encode2 = prores_encode_frame, - .pix_fmts = (const enum AVPixelFormat[]){AV_PIX_FMT_YUV422P10, AV_PIX_FMT_YUV444P10, AV_PIX_FMT_YUVA444P10, AV_PIX_FMT_NONE}, .capabilities = AV_CODEC_CAP_FRAME_THREADS, .priv_class = &prores_enc_class, .profiles = NULL_IF_CONFIG_SMALL(ff_prores_profiles), From patchwork Thu Jun 17 02:32:02 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28518 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:bbc9:0:0:0:0:0 with SMTP id c9csp74753ybk; Wed, 16 Jun 2021 19:39:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwKa3bj1IpQRSGsEep2EiN4qYuSsXzvxgxGz/2W7kDOdVdx0IHeMtyber2wC0U23G7QbxfO X-Received: by 2002:aa7:c64e:: with SMTP id z14mr3373348edr.119.1623897566879; Wed, 16 Jun 2021 19:39:26 -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 z26si4728254ejc.46.2021.06.16.19.39.26; Wed, 16 Jun 2021 19:39:26 -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=forDywP0; 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 D94DA68A08E; Thu, 17 Jun 2021 05:34:05 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075019.outbound.protection.outlook.com [40.92.75.19]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4AAF3689F4F for ; Thu, 17 Jun 2021 05:34:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ABKF3h7ufiKfAWkj8D7prOpFCOVTESPyEjfn4ah+yi2n35jMgXlaNquMareYjd7jgTF4ak0xNjnzlcysMvyUHroMT7Kaqs/ELpzis1bmj+1xFHI7R9g8l31Y4LBvlGU+2V6DqzLD0mMd25sdVI1O3Fl5O1yeEiBjKTv9WySIEFeVquudYEte4HHUVUjcYVpHpe+8QyePFuCJ4OheN/3aXhuZml30hQg3IqvGf2tlV/E0EaMEShgeeP83aqkev7u19a0VvrYDQgIthJKXbTyARRGsUvPopR9OGHem2LzxjE5bJ81PQKUSbj1+xPzQ4TBAoxXhRh0/nUW6hitCF1gcIA== 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-SenderADCheck; bh=r3bvCEV+UWp+Vfh7k3eaatqCPgQ4146rjX6yHFMek3w=; b=JTWbD5mbIcalcidoQc0fBcHFECovb4pcK1uBVClkC/pDCjwdK5qxs5H5jfBU1NkFUr7XlR77f5TkkvPpjhbQyxDPMYYK28tkJiqOLNWA7JKPBhfu7kITo/zEZENQIa9lB80GL61tyLe19o0XfmTjxWCalRVPpAi5Sz1hRTTnaJCFKEUWko6VAoscLuBIrafvQrjNwbzLlBTuGRRWag6/HY7m5fyCZpXFD2Xuz7pwExl7oud/Mi1PvMeU21I6dyNn3n6uVos93Uj9oh+VdAI2bXbr5uUPnMd40o3Utu67g3FR64zZ7gqDWYmG/CnqFpYWnElHRmRMHiR97Jz3SE/ymA== 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=r3bvCEV+UWp+Vfh7k3eaatqCPgQ4146rjX6yHFMek3w=; b=forDywP0/8s3IG2mk29kyGgSgIEg+1/I20PDAYtu5EgqkKJZ/DlcxT8jq2JZwe+zP+0iJiJGY90N3yXTIyiqukYXRlfiIsoNejk34yO0t7EUAAAp1eClG/PYFWaIDBRC4H7Kh+uB0nyP6NRHrK9dns+u3KAAUgSeq0POwC/K4lEZnmbY4VDJsATWTOe9eAGtrWTXii6v7RRLgSp7d3UGm9S3iVDBgGTgbSiwu8Y1TVF5Yz8v7NGPH1Wtt+DeJ88JIbG5itOCtx0Gy3b/nvKNRlZRFItCcJPcoYv/EksHRcZHxaXYnwp22Ijx/cQBvMLJ9vrzo44jhbRplYcy9npYqg== Received: from HE1EUR04FT053.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::47) by HE1EUR04HT230.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::415) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:59 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::4b) by HE1EUR04FT053.mail.protection.outlook.com (2a01:111:e400:7e0d::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:59 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:9527E7AEB0712FA07E305BBF69037E1D90D6FE3B10D198DD5CFCC2778B73EF06; UpperCasedChecksum:42EF6521D41960761F018269380C63EE37C5410B30D3138171C48700F92BFC6A; SizeAsReceived:7757; Count:50 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:59 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:32:02 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [X+Mo5/z/fxNTEjHLBOBZxbl7/0AaaGOU] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-40-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:30 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 50 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: e6decf3e-9e60-4c14-8267-08d931384b9e X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNU/fTcAoeunGvvJC2vgMUdOtpMk4ZZjMF9xeoJXzVRRaYaJD7BWCC0sTj8OMu+R72VZu9ikMN4iKfrLyDfYS3BX6HaLS8cGQYkTVS5Txh5WfSt7d1Qk+IoaN6Itp5U4+X2dMnyrKR61eVgtzW7XauS4fLultFzTvNZaJy5IjysuvmnSFPD5mq8SkuKWGk0vHxQocXYr7VUAKDES0E3a1/f7JCKcHYn6EoSE+h5UeXt4j21AZ7KGMWqmXc4JxcrfE9XJPvQkQbvWCh+/V5DmnIzKU8rOd39aboccKr2e5XzUuqJOBtD4/aG4rjyREP3qUEUAG3T0OzPQPELN0NSAzrJoil6lYEacjGnvDDTvlPU6NMj4VNrvT+5vV5Mw+WNAbYAyeBlXaWUMJc36DJHQZ6YN3qCTlffYiq6Hx3Pjqb6pdrKNOyXPKEdXh6I0T/LjJ55RabpkTLqI41yQFymfu4m7sKp42uWYmv5P3SnPEyrlgBGI54LQrCY03iqb+e90rrDaAO6OuLBdDM3XBNNHhHywie560afqIIsOUu+JFOOzzTbQpOBQWFdqfSUYV8GJEbZEAjHuZS/tPwhKAvPr/ijG01sEWlJvU5XY+r4YtaA4/OyKd7o54KaUIE3fZmh22QAlC2rRyrEP97Eio/SzbiF3/jmeLl6OeT7NoQ0WvWT+fKCZ79aKlIZ+vj1gJKJnPQ6C39wEAYo8jvpp9KHSul58nJ/oMbCl554= X-MS-TrafficTypeDiagnostic: HE1EUR04HT230: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: X5ez/hkY9UfwkJMzccYuPrW7lbG6zR3Gwfkf7Ae+kvmO4NgE1kNWUIwF8wxUqy+g2/MyEqm5ZeP13hxJF6HZixUQuAfFabyXnboV0lRiVLNEISf+y0kmKjFj6eG5yY4zkQtXmnzuwNGLvNJbqK2tVLLNhUO8R0ym+zmz21UweYcK9LEcEJLVny6VrBT1pvOZ/YNq9HfZMUsA6LKrb0sjlwHNJolIHSNwzUpk1xmtOATBb53gWBjkdDEpbILGFQQlKuT5MhMsIrveGwptLsEaUgHA7jJJ7g4SRDtoRr5HXOz3nKKZKkuPHXLbLH1G9byBVujZ3qdCLXZxTX9PXqdpY3fBPp8SkcUgx2p5ih4Pomln2QZB/90wxC9/NjE5ytTKnM8GcBqpJwGHlqxCNzQEIw== X-MS-Exchange-AntiSpam-MessageData: Dx6C5Pc5c65PxN9EkJwYR9SzLI7PB+Hm/Cf89vgeAVhKM1ftubDBgtNnyFhCmEqHuo71xfEkpxbE8Oc6CQ84+vZ3UnGUhK0mT2kXxihpCxhPrgoTMGmUs+Y0KahOxGsyrVnbEws0AhTPqgvquhPmMA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e6decf3e-9e60-4c14-8267-08d931384b9e X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:30.8253 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT053.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT230 Subject: [FFmpeg-devel] [PATCH 41/41] avcodec/textdec: Deduplicate AVClasses 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: d7j6xyBieZqh Content-Length: 4375 The child_class_next API relied on different (de)muxers to use different AVClasses; yet this API has been replaced by child_class_iterate. Signed-off-by: Andreas Rheinhardt --- libavcodec/textdec.c | 37 +++++++++++-------------------------- 1 file changed, 11 insertions(+), 26 deletions(-) diff --git a/libavcodec/textdec.c b/libavcodec/textdec.c index becbab601c..308553660a 100644 --- a/libavcodec/textdec.c +++ b/libavcodec/textdec.c @@ -71,17 +71,14 @@ static void text_flush(AVCodecContext *avctx) text->readorder = 0; } -#define DECLARE_CLASS(decname) static const AVClass decname ## _decoder_class = { \ - .class_name = #decname " decoder", \ - .item_name = av_default_item_name, \ - .option = decname ## _options, \ - .version = LIBAVUTIL_VERSION_INT, \ -} +static const AVClass textsub_decoder_class = { + .class_name = "text/vplayer/stl/pjs/subviewer1 decoder", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, +}; #if CONFIG_TEXT_DECODER -#define text_options options -DECLARE_CLASS(text); - const AVCodec ff_text_decoder = { .name = "text", .long_name = NULL_IF_CONFIG_SMALL("Raw text subtitle"), @@ -90,7 +87,7 @@ const AVCodec ff_text_decoder = { .id = AV_CODEC_ID_TEXT, .decode = text_decode_frame, .init = ff_ass_subtitle_header_default, - .priv_class = &text_decoder_class, + .priv_class = &textsub_decoder_class, .flush = text_flush, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; @@ -106,9 +103,6 @@ static int linebreak_init(AVCodecContext *avctx) } #if CONFIG_VPLAYER_DECODER -#define vplayer_options options -DECLARE_CLASS(vplayer); - const AVCodec ff_vplayer_decoder = { .name = "vplayer", .long_name = NULL_IF_CONFIG_SMALL("VPlayer subtitle"), @@ -117,16 +111,13 @@ const AVCodec ff_vplayer_decoder = { .id = AV_CODEC_ID_VPLAYER, .decode = text_decode_frame, .init = linebreak_init, - .priv_class = &vplayer_decoder_class, + .priv_class = &textsub_decoder_class, .flush = text_flush, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_STL_DECODER -#define stl_options options -DECLARE_CLASS(stl); - const AVCodec ff_stl_decoder = { .name = "stl", .long_name = NULL_IF_CONFIG_SMALL("Spruce subtitle format"), @@ -135,16 +126,13 @@ const AVCodec ff_stl_decoder = { .id = AV_CODEC_ID_STL, .decode = text_decode_frame, .init = linebreak_init, - .priv_class = &stl_decoder_class, + .priv_class = &textsub_decoder_class, .flush = text_flush, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_PJS_DECODER -#define pjs_options options -DECLARE_CLASS(pjs); - const AVCodec ff_pjs_decoder = { .name = "pjs", .long_name = NULL_IF_CONFIG_SMALL("PJS subtitle"), @@ -153,16 +141,13 @@ const AVCodec ff_pjs_decoder = { .id = AV_CODEC_ID_PJS, .decode = text_decode_frame, .init = linebreak_init, - .priv_class = &pjs_decoder_class, + .priv_class = &textsub_decoder_class, .flush = text_flush, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_SUBVIEWER1_DECODER -#define subviewer1_options options -DECLARE_CLASS(subviewer1); - const AVCodec ff_subviewer1_decoder = { .name = "subviewer1", .long_name = NULL_IF_CONFIG_SMALL("SubViewer1 subtitle"), @@ -171,7 +156,7 @@ const AVCodec ff_subviewer1_decoder = { .id = AV_CODEC_ID_SUBVIEWER1, .decode = text_decode_frame, .init = linebreak_init, - .priv_class = &subviewer1_decoder_class, + .priv_class = &textsub_decoder_class, .flush = text_flush, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, };