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");