From patchwork Tue Feb 18 02:40:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Soft Works X-Patchwork-Id: 17826 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 5A55E44BA80 for ; Tue, 18 Feb 2020 04:40:58 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2FF4E6897D6; Tue, 18 Feb 2020 04:40:58 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11olkn2083.outbound.protection.outlook.com [40.92.19.83]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 070E6687EEC for ; Tue, 18 Feb 2020 04:40:51 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Jc0T0uLZDk+ltpWSmajfPybLS28c11YIBno8v5XiCdJ3boCH/NUFg8XTRBebVeST1db5Dj4zGop3J6GISxVmJ4IKJYSO8B/2dZ4MCpFlbZd3c70RXtHPzLcAy9XqfTyhIYbJcVMsS91mjn87tLcSNbnwSw0I9wILECmhqBad/E2XuvLr/HRp6hpKka0io92zrRFXKbj5CbFPnAxPAwDLRxRtCZG2R++NSpxlDHnKhcBW/JZL2PLgWPfqqFrplocnXP9FBf7qZsx5bFQs2FKQXfHKcje55HpSzCxkB8R4vLTF2JswTeaemG3mvqDff7kCPqEBviyoUUloEvZ2GZX9LA== 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=1vqzttNX1wAhEnZpi2YO1c1lOCx6yIuXuQsclegVbwc=; b=IWKMmn7GfEr6u7RBV/8h9r0+y/2Pcn/m40EKmGWiwWgQjpDG0kE++/793/RRSeI3GWuMx5xStlniHqy+IlMBURuWevJTX5O7fwSMuirShXAp9Gn0CfFxYZpMNWtXK1Wfq+8paHMDwEt6kN4D5pwBZux6rGjWhkuAYolyDbYSjO9Az9u715eKWV0eF3JWuk3Ty2YyPsRJPYsDCj8TOr14RL/1M8gCg8Zj/QiGcrcdCjVSJH3XXLgVcvNr4aOsbR5Yb6cVB+immTvaUtpgVl5gkQu/M1AWosKGR6bLeXlBIymAWA++TdT9exvyp6u2oQzuR2K5emtEuxd8nOtlwluM9Q== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1vqzttNX1wAhEnZpi2YO1c1lOCx6yIuXuQsclegVbwc=; b=U8CLKcAEktI96FK5WMpaLDFAuk/gWRApIEve27B1duXsD07me7iwxMPRUAplkXRsW+PnPZ/Bd72Wh3WCIijVUZNRjDC1AJQt7EyvPV2lj+zekXZq8j+L21+VMYu97sOqVBvS9Uk37xYI4PjL8OJZziYUwr2C9Uy33I+IG2zfCpvaLIsWxitxqBvb5wugpovLQZ3ejny5rjVMuHqlS7yjjsXBZHxkU5RozmD255lRTw4n6+5YxCfciBpkmrIO/fSj2HV6CXl0NuuHmtktsDtLib1NzQbZFuLAe2aH8b+MY1qDwkl0aVx+mEbd6F+bIiSUK9+sb8OkLIFBi/gi6oAnYQ== Received: from CO1NAM11FT054.eop-nam11.prod.protection.outlook.com (2a01:111:e400:3861::39) by CO1NAM11HT118.eop-nam11.prod.protection.outlook.com (2a01:111:e400:3861::337) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2729.22; Tue, 18 Feb 2020 02:40:49 +0000 Received: from BYAPR04MB5222.namprd04.prod.outlook.com (10.13.174.58) by CO1NAM11FT054.mail.protection.outlook.com (10.13.174.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2729.22 via Frontend Transport; Tue, 18 Feb 2020 02:40:49 +0000 Received: from BYAPR04MB5222.namprd04.prod.outlook.com ([fe80::d8b8:6d31:b124:299b]) by BYAPR04MB5222.namprd04.prod.outlook.com ([fe80::d8b8:6d31:b124:299b%5]) with mapi id 15.20.2729.032; Tue, 18 Feb 2020 02:40:49 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [PATCH] Print out numeric values of option constants Thread-Index: AdVs9G+7E283TtbUSgyrIfT9kjE9zB5EFLEw Date: Tue, 18 Feb 2020 02:40:49 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-incomingtopheadermarker: OriginalChecksum:A90B9FA5FE18C0D6A3D18E0C7D718DD7F6861E95A4BF663FD63DF4EB8D67568C; UpperCasedChecksum:BF282AF443A22F691F4C6B162F7C0CF82CAA5696153CEB920639D1C266D24913; SizeAsReceived:7064; Count:44 x-tmn: [Gwcr+7FIYDs7O2wEIK6rjo8U5EqJn9MmdmoV0qQe+LXD9ivlYx8JKl8IeRznQsKy] x-ms-publictraffictype: Email x-incomingheadercount: 44 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: 3f3fec47-46da-4061-3feb-08d7b41bf6aa x-ms-traffictypediagnostic: CO1NAM11HT118: x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /LBKkkN2gJkOZViqrXFOINp0NeMsHCE/KOSlp92r6C6iMNXo0EC/7JcD5W4cErn0O7Ye+kN4T2S9dozMjxZ1A0mBDsRyPryM5Xd0eksLQq4vXS2YBydD0CZ9dnBtKAZ1MBXHB0ymxxLIIH31ZzNGkKi1T9cl54yQ42sxiHghyDkTHMBWwxDGzigZDAYWbtrQ x-ms-exchange-antispam-messagedata: 2pnRt55C+Pgrit0k5qoeJh9RtG68yRDwva0vz+wHRB1oWUPUxt/6YbwJn5n/mlTPdU1DbFN7VbthR+oKNzg+EHwQTZxYk4WMNwrQ+hKT2m6ykGrF4zVp3xFWdAaZP7efE2kkIEdY4Q6cCFlKERIscuOMK8pJcWxo2RX4ON0cdoLD78id191pM7aIyVKw4v7I+OESg1vhhK9frrTzzK/Fsw== x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: hotmail.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 3f3fec47-46da-4061-3feb-08d7b41bf6aa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Feb 2020 02:40:49.1174 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1NAM11HT118 Subject: [FFmpeg-devel] [PATCH] Print out numeric values of option constants X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" It's often not obvious how option constants relate to numerical values. Defaults are sometimes printed as numbers and from/to are always printed as numbers. Printing the numeric values of options constants avoids this confusion. It also allows to see which constants are equivalent. Before this patch: -segment_list_type E........ set the segment list type (from -1 to 4) (default -1) flat E........ flat format csv E........ csv format ext E........ extended format ffconcat E........ ffconcat format m3u8 E........ M3U8 format hls E........ Apple HTTP Live Streaming compatible Afterwards: -segment_list_type E........ set the segment list type (from -1 to 4) (default -1) flat 0 E........ flat format csv 1 E........ csv format ext 3 E........ extended format ffconcat 4 E........ ffconcat format m3u8 2 E........ M3U8 format hls 2 E........ Apple HTTP Live Streaming compatible Signed-off-by: softworkz --- libavutil/opt.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/libavutil/opt.c b/libavutil/opt.c index 93d6c26c11..ed90808d6d 100644 --- a/libavutil/opt.c +++ b/libavutil/opt.c @@ -1102,7 +1102,7 @@ static char *get_opt_flags_string(void *obj, const char *unit, int64_t value) } static void opt_list(void *obj, void *av_log_obj, const char *unit, - int req_flags, int rej_flags) + int req_flags, int rej_flags, enum AVOptionType parent_type) { const AVOption *opt = NULL; AVOptionRanges *r; @@ -1182,6 +1182,11 @@ static void opt_list(void *obj, void *av_log_obj, const char *unit, av_log(av_log_obj, AV_LOG_INFO, "%-12s ", ""); break; case AV_OPT_TYPE_CONST: + if (parent_type == AV_OPT_TYPE_INT) + av_log(av_log_obj, AV_LOG_INFO, "%-12d ", opt->default_val.i64); + else + av_log(av_log_obj, AV_LOG_INFO, "%-12s ", ""); + break; default: av_log(av_log_obj, AV_LOG_INFO, "%-12s ", ""); break; @@ -1286,7 +1291,7 @@ static void opt_list(void *obj, void *av_log_obj, const char *unit, av_log(av_log_obj, AV_LOG_INFO, "\n"); if (opt->unit && opt->type != AV_OPT_TYPE_CONST) - opt_list(obj, av_log_obj, opt->unit, req_flags, rej_flags); + opt_list(obj, av_log_obj, opt->unit, req_flags, rej_flags, opt->type); } } @@ -1297,7 +1302,7 @@ int av_opt_show2(void *obj, void *av_log_obj, int req_flags, int rej_flags) av_log(av_log_obj, AV_LOG_INFO, "%s AVOptions:\n", (*(AVClass **)obj)->class_name); - opt_list(obj, av_log_obj, NULL, req_flags, rej_flags); + opt_list(obj, av_log_obj, NULL, req_flags, rej_flags, -1); return 0; }