From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 94F47492C2 for ; Sun, 7 Apr 2024 21:10:02 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0810E68D1FA; Mon, 8 Apr 2024 00:09:51 +0300 (EEST) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01olkn2083.outbound.protection.outlook.com [40.92.64.83]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 44C1868D1B0 for ; Mon, 8 Apr 2024 00:09:44 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z8UJlITu0amuL/KUiBRHpgw0cx8OAmNA8mFrA1I/jHwk9XoiuSvttYtL3sRxjWX6mVyiMOY6IQY40t3ZwEerx3X4TEE3DSWUbT2ShKZweYM0u9euuvLiiMH0bwgR7QVzsA0iWWMGuLMhU3sii6qct0jvhQQmZnCvFj5ZM/3+J5oHoRKTvH0exkRMIJS69M2M+7RUUUlB0+OsjUCA8F+QpBceh93IODkf63nz6VOcs1jV+fStaGGHnJY4Cz5vgU9QYsEFk0s0fU2d/NO7BXToGAg2uFYK0HnjE6/Bsv+TNol6zTd45Uba0+D1EiacJNBExYTzf+Duu3comnVcW67vkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=q6bLqT/aFEOked+FTZniP5zIOz+HXvz18HkXzS+twaM=; b=ThT7x7Jc5Lckbier7d8V5/BFPUYfel4aypcX5eBHrJzm6ozyjxxyLXeBiOvH5FfErMB6F/gY6l1zw5FmvfbvHyQm2nXvlpXBlZMnWfIQz4Eknh2Z7peFJ0SgWx+tDqP3cVq7ygfr8KKIc16KP7QZ6svW77b05acfzhhOGNkkolPJnDtgBhzJFWCx3H29+nr7WjpD5TIYvn6m/JB7Yu9+R6T07ankLLXROEZW/vMWXf45+bDWzbJuZ/L/EIrUMbI78YUD6WUph8c+InE8IxGNADjy9X0jPvnvt+rDzxnHMtybWUAEb63AOFLOW1z9pxzjyklH0KdhCF7OlIcKg11zGQ== 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=q6bLqT/aFEOked+FTZniP5zIOz+HXvz18HkXzS+twaM=; b=vKlD6vwarM2DqP+xn214/WjBvvemP0U0SuL0P8jOP7YTLAr6q7q4iRhMnUmhoZZIL0YbNQDVrpPkuKgoDZ5A/mHPs7kdjnuxSlmQHaCCBimUu/zMo/9RpxR4Ue1bqD5WVQt9mn10sKCz826eGG0T0OmNxDwpmtH+SgYJxCRXod37TYPmWVZyFRShLdvmdwjSCQMzBKMIR19dtW++OzuZ7CRcjI+nE4m2RXm4/PPCNhSEPpwEPQAVtqfDnZpQkShZa27Rv3cri4D7nq6WOZGfaAY0xSCcAj4LxQh5zUQRiOfzw3hWBne1sSoFeOulj2+zp10ByuXf7gV05bg6DbX2/g== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by AS8P250MB0234.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:379::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.55; Sun, 7 Apr 2024 21:09:35 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d%4]) with mapi id 15.20.7409.042; Sun, 7 Apr 2024 21:09:35 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 7 Apr 2024 23:09:03 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [GdFyVuufo3WUhRXy37y0ed3SF3jW9n4C] X-ClientProxiedBy: ZR0P278CA0038.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::7) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240407210915.895619-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|AS8P250MB0234:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c11061f-02f9-4d70-0082-08dc574706f0 X-MS-Exchange-SLBlob-MailProps: Cq7lScuPrnpOxDCcKCE3ew6GouC7ydNhMqBhV6w56iJUMUKhN7VdTY1t0Xz30+aN2XoCx5cpredDZfhAhUCC/F7Cef6m7hglryT2FsjKYxyNt8YxiOmBNoI3sqT3Y6r3HrvcFxID1V0fSI9pAfT4c1SY3XiP6sBfgPTX9waZqh5vgUoRdsLxEIDPRpdzsCFM4Z4EM8htmfHHBW/NwgUkN5nYcDdj58s54+GW/sNN/lAddFkIh/MZsYe7jE5WEYULQpyx7jxtcr58oTTbXvNthuywKtL/N9RO85giXrlBDxB7AddfaRk7FlwhtBRspmYPFdUZVTo9MT6YcIycC3JZ68zKmyvBBbWpIQUHe2iOwQttVK4oqg7UG56LNTRKVssMMFVVAk8O10Wrq3ionB+AlPhrwfuSDbw7iSvbsqtlKqXM1ojRmInnynCG9m81LKDuL/FUq5jq6cP/6c9QG1utLitQzvTmL5fdFvzsKbpoIha8hp0LkbzfQa9guP6JubXz4GFPGy72bFBWFVMdOe0oc5fyv18JaFqOAEDLnIknFTH28FRWluioKKP7ImCDy7fgvyzzqawqObyrIAjvn9n4U7OEJ4yvuyvuo55kI0af3Jc3dvaJ9MfA8cimOIEb9fLzcRgyRPnBAFH/YJi5lvtTAhL3RicvaJsQqqV2wny+qIBpVRUvIQADkE8fk7sTn1r4RpTPd+Lm2VDtXWLgL3XfR16H49E+wOPCr9ktwt1F4WgudI6mMm3p4PoNODRcW2rIxJYZ2IY8ctY= X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qg1sQOA4iwfE9xE/EOc104z/cYn0fl27Kbei8Z0dOB/WPBFjoL2Ui4aeSR78hudJQ8c8mL4ia9O7kIZPGVRhIiM3WIGdk8QH8Ejp+XasApcau51dDgws4kaqzlAj8Tnnd6cdqhGQkyLFk1ivgraZq+ZlQX9yfHQM1MsZ6YS5Oba2o/9i+1fMSsIQGXeYzwIv9a49Jeudkv2HVwhat7Zpvd8O9TCqntC9lQXJQrpqeSgtMFZV/n/k5iTyihVC4wd9e+S72F6dnY07qmjJiYeD1hP1agMyLFtwhzYrvblaxIkqMu0G3OJngd7vJOWERUP7DIPijNOmgrn+tz08xDA8R+P355Vu4e+5S9pj9OgIjdV/r5515u3qSgO3/zwxdPhpZxhsI1izHlyRmyTSdne7SMo4bHpDVibE+5ovkaKZhF9dhtL4F0lqsYmayqGX8tgvGTauTkxsXTggjdkauvbTftNrEVkhdUHti7u4jEcX/5s+MlvV2DHrntua44MB8Nxd/B0Saql8X1ETaH85PtIPcreVHF3ATppoQ0nG9tij7xziTZCRmtsKA8SAPP2FM5N4fuekAYQbU+PfNc2GjcZfTx5JGyqAuPBxRDKpKSqcCBtyG2Uly51YnA/N66nL0J8q X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6V/ZCYaUYUwysLgwYsbnaCip05M8lCftWsP2CWMqyv7DcE5HCLoWlzoyexR1?= =?us-ascii?Q?whqO/jXmsA1IuKH7toAHxJua5KiuvF9zJtz5JCO1lQvVqhLLbgSuHWjD1RZT?= =?us-ascii?Q?mHyxv4NOYpvwZ9dHRWtgLl4Ohdov3KmHX52zNWC/2EOQqpsgh0sxFZTXdtYm?= =?us-ascii?Q?scQt5Uv3wnA+A3CwKGKzdJsXLSQPvCE0zPdiI9peDnWXo22LvvqwDwqfy1m8?= =?us-ascii?Q?YLy5SChEIKv09BSuSDLz3cuHjMH33P1M1QE4tydbX6Eq+zfCNqt6LWdkHssd?= =?us-ascii?Q?Kx5acroEOqL6y01RiKkrzkk9CSFLekFOaa//ibhbNlKjUf6sIaIYZ/fIY+vl?= =?us-ascii?Q?sYnm4X9hH6bDzz2nf5KI3tlDL8CYETuQ+gtysNKkZ5xecQF/qgGKysjwDIP3?= =?us-ascii?Q?flDaCtYrah6xNlnfJs+EQHUOuzDelW8kZY6HiFMspbwQK1OGyE3dqehcFH1U?= =?us-ascii?Q?ICXw+JVjZT4rxJRVsoIzwIVGwMZ2TgtY24QuN41oKnZdpYlAsWDEJtRsGV4V?= =?us-ascii?Q?nt/W8swCiO1l3kDbsp/zWYaAvpo0VOpQN5zHHSyhDoNA3rmRqjug5SOy/D5e?= =?us-ascii?Q?Sda7qAtl6xL7te6mwTTC8IdPoMUfece3KXWGENkzf8mX0medjrj3yANJD+V/?= =?us-ascii?Q?BUQ37Ylom33HT/LyDcIQT/YClZn7EOrSFyTlOKkuDntxIF/ZPDvI6p5Om9XY?= =?us-ascii?Q?r7d0POJJS5sI7/Tm/M1yfeWuixMa4lpbzCtwP7VEV5yKJ/YA/+Q46dSaVKW/?= =?us-ascii?Q?ip8HPp9QzMiOsItUM6rspuiIX6y0MrW6lij2zHiYBsZ1SrJQBdrwzCbYf6x4?= =?us-ascii?Q?KY9uPcPmXdZjXKidCHpljWCOvPBjDj8KwE/FJryIdkAAjCYs97WzREgtLwzy?= =?us-ascii?Q?+RWTj3V/vFP52Zzo7Ngg3+c5LX9IKbW5J2A3gSCusYANO03+moE0utNQlWVH?= =?us-ascii?Q?V+iusKBvkUy1J+QTTCFKqvucD5r6rZgpnf6DIntIm7luomycgZaxMDC1lztw?= =?us-ascii?Q?P72JyFiK/6EKOYuQyQdVZiu9UH8LYzQQEkO545hQKrYPc1eCOeB0eQlWS5mC?= =?us-ascii?Q?cdylMJxFUXf6KNj8LpNA3S+eifEtgAEfxUcPjwgPXrCKy06/KI1XU12EJ0b7?= =?us-ascii?Q?UNDlnP1HrJqCSSXlv0j6H0fgJXjdpFwxLPiLixfMldwtCaXnBrl0niw1k3aw?= =?us-ascii?Q?9X4p0a33MGVZWi2qW+R7HhCgdhYF/Iw1uYU72aRa6/JIw5jPniFcCG0prei5?= =?us-ascii?Q?Kn2V4rijMlHxUfCp5TTuPGWEhNIeAtFOhrbyGKwhuQ=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7c11061f-02f9-4d70-0082-08dc574706f0 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Apr 2024 21:09:35.2028 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0234 Subject: [FFmpeg-devel] [PATCH 05/17] avcodec/ac3enc: Avoid copying strings 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Signed-off-by: Andreas Rheinhardt --- libavcodec/ac3enc.c | 88 +++++++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 38 deletions(-) diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index 31b9474822..272d2481d9 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -30,7 +30,6 @@ #include "libavutil/attributes.h" #include "libavutil/avassert.h" -#include "libavutil/avstring.h" #include "libavutil/channel_layout.h" #include "libavutil/crc.h" #include "libavutil/emms.h" @@ -1807,17 +1806,18 @@ static void dprint_options(AC3EncodeContext *s) #ifdef DEBUG AVCodecContext *avctx = s->avctx; AC3EncOptions *opt = &s->options; + const char *msg; char strbuf[32]; switch (s->bitstream_id) { - case 6: av_strlcpy(strbuf, "AC-3 (alt syntax)", 32); break; - case 8: av_strlcpy(strbuf, "AC-3 (standard)", 32); break; - case 9: av_strlcpy(strbuf, "AC-3 (dnet half-rate)", 32); break; - case 10: av_strlcpy(strbuf, "AC-3 (dnet quater-rate)", 32); break; - case 16: av_strlcpy(strbuf, "E-AC-3 (enhanced)", 32); break; - default: snprintf(strbuf, 32, "ERROR"); - } - ff_dlog(avctx, "bitstream_id: %s (%d)\n", strbuf, s->bitstream_id); + case 6: msg = "AC-3 (alt syntax)"; break; + case 8: msg = "AC-3 (standard)"; break; + case 9: msg = "AC-3 (dnet half-rate)"; break; + case 10: msg = "AC-3 (dnet quater-rate)"; break; + case 16: msg = "E-AC-3 (enhanced)"; break; + default: msg = "ERROR"; + } + ff_dlog(avctx, "bitstream_id: %s (%d)\n", msg, s->bitstream_id); ff_dlog(avctx, "sample_fmt: %s\n", av_get_sample_fmt_name(avctx->sample_fmt)); av_channel_layout_describe(&avctx->ch_layout, strbuf, sizeof(strbuf)); ff_dlog(avctx, "channel_layout: %s\n", strbuf); @@ -1842,12 +1842,14 @@ static void dprint_options(AC3EncodeContext *s) if (opt->audio_production_info) { ff_dlog(avctx, "mixing_level: %ddB\n", opt->mixing_level); switch (opt->room_type) { - case AC3ENC_OPT_NOT_INDICATED: av_strlcpy(strbuf, "notindicated", 32); break; - case AC3ENC_OPT_LARGE_ROOM: av_strlcpy(strbuf, "large", 32); break; - case AC3ENC_OPT_SMALL_ROOM: av_strlcpy(strbuf, "small", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->room_type); + case AC3ENC_OPT_NOT_INDICATED: msg = "notindicated"; break; + case AC3ENC_OPT_LARGE_ROOM: msg = "large"; break; + case AC3ENC_OPT_SMALL_ROOM: msg = "small"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->room_type); + msg = strbuf; } - ff_dlog(avctx, "room_type: %s\n", strbuf); + ff_dlog(avctx, "room_type: %s\n", msg); } else { ff_dlog(avctx, "mixing_level: {not written}\n"); ff_dlog(avctx, "room_type: {not written}\n"); @@ -1856,12 +1858,14 @@ static void dprint_options(AC3EncodeContext *s) ff_dlog(avctx, "dialnorm: %ddB\n", opt->dialogue_level); if (s->channel_mode == AC3_CHMODE_STEREO) { switch (opt->dolby_surround_mode) { - case AC3ENC_OPT_NOT_INDICATED: av_strlcpy(strbuf, "notindicated", 32); break; - case AC3ENC_OPT_MODE_ON: av_strlcpy(strbuf, "on", 32); break; - case AC3ENC_OPT_MODE_OFF: av_strlcpy(strbuf, "off", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_mode); + case AC3ENC_OPT_NOT_INDICATED: msg = "notindicated"; break; + case AC3ENC_OPT_MODE_ON: msg = "on"; break; + case AC3ENC_OPT_MODE_OFF: msg = "off"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->dolby_surround_mode); + msg = strbuf; } - ff_dlog(avctx, "dsur_mode: %s\n", strbuf); + ff_dlog(avctx, "dsur_mode: %s\n", msg); } else { ff_dlog(avctx, "dsur_mode: {not written}\n"); } @@ -1870,12 +1874,14 @@ static void dprint_options(AC3EncodeContext *s) if (s->bitstream_id == 6) { if (opt->extended_bsi_1) { switch (opt->preferred_stereo_downmix) { - case AC3ENC_OPT_NOT_INDICATED: av_strlcpy(strbuf, "notindicated", 32); break; - case AC3ENC_OPT_DOWNMIX_LTRT: av_strlcpy(strbuf, "ltrt", 32); break; - case AC3ENC_OPT_DOWNMIX_LORO: av_strlcpy(strbuf, "loro", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->preferred_stereo_downmix); + case AC3ENC_OPT_NOT_INDICATED: msg = "notindicated"; break; + case AC3ENC_OPT_DOWNMIX_LTRT: msg = "ltrt"; break; + case AC3ENC_OPT_DOWNMIX_LORO: msg = "loro"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->preferred_stereo_downmix); + msg = strbuf; } - ff_dlog(avctx, "dmix_mode: %s\n", strbuf); + ff_dlog(avctx, "dmix_mode: %s\n", msg); ff_dlog(avctx, "ltrt_cmixlev: %0.3f (%d)\n", opt->ltrt_center_mix_level, s->ltrt_center_mix_level); ff_dlog(avctx, "ltrt_surmixlev: %0.3f (%d)\n", @@ -1889,26 +1895,32 @@ static void dprint_options(AC3EncodeContext *s) } if (opt->extended_bsi_2) { switch (opt->dolby_surround_ex_mode) { - case AC3ENC_OPT_NOT_INDICATED: av_strlcpy(strbuf, "notindicated", 32); break; - case AC3ENC_OPT_MODE_ON: av_strlcpy(strbuf, "on", 32); break; - case AC3ENC_OPT_MODE_OFF: av_strlcpy(strbuf, "off", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_ex_mode); + case AC3ENC_OPT_NOT_INDICATED: msg = "notindicated"; break; + case AC3ENC_OPT_MODE_ON: msg = "on"; break; + case AC3ENC_OPT_MODE_OFF: msg = "off"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->dolby_surround_ex_mode); + msg = strbuf; } - ff_dlog(avctx, "dsurex_mode: %s\n", strbuf); + ff_dlog(avctx, "dsurex_mode: %s\n", msg); switch (opt->dolby_headphone_mode) { - case AC3ENC_OPT_NOT_INDICATED: av_strlcpy(strbuf, "notindicated", 32); break; - case AC3ENC_OPT_MODE_ON: av_strlcpy(strbuf, "on", 32); break; - case AC3ENC_OPT_MODE_OFF: av_strlcpy(strbuf, "off", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_headphone_mode); + case AC3ENC_OPT_NOT_INDICATED: msg = "notindicated"; break; + case AC3ENC_OPT_MODE_ON: msg = "on"; break; + case AC3ENC_OPT_MODE_OFF: msg = "off"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->dolby_headphone_mode); + msg = strbuf; } - ff_dlog(avctx, "dheadphone_mode: %s\n", strbuf); + ff_dlog(avctx, "dheadphone_mode: %s\n", msg); switch (opt->ad_converter_type) { - case AC3ENC_OPT_ADCONV_STANDARD: av_strlcpy(strbuf, "standard", 32); break; - case AC3ENC_OPT_ADCONV_HDCD: av_strlcpy(strbuf, "hdcd", 32); break; - default: snprintf(strbuf, 32, "ERROR (%d)", opt->ad_converter_type); + case AC3ENC_OPT_ADCONV_STANDARD: msg = "standard"; break; + case AC3ENC_OPT_ADCONV_HDCD: msg = "hdcd"; break; + default: + snprintf(strbuf, sizeof(strbuf), "ERROR (%d)", opt->ad_converter_type); + msg = strbuf; } - ff_dlog(avctx, "ad_conv_type: %s\n", strbuf); + ff_dlog(avctx, "ad_conv_type: %s\n", msg); } else { ff_dlog(avctx, "extended bitstream info 2: {not written}\n"); } -- 2.40.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".