From patchwork Sun Aug 11 12:47:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Moritz Barsnick X-Patchwork-Id: 14405 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 D217C4483B9 for ; Sun, 11 Aug 2019 15:48:37 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C190A68ABCA; Sun, 11 Aug 2019 15:48:37 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 55F9968ABA3 for ; Sun, 11 Aug 2019 15:48:30 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1565527710; bh=hkvjBon3q714NF634X93l9UPfiPVt3xWXBucFj2NtYg=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=SoBSlsGJ/sf81fhn8cOMORl+kEFYZsvS9CNNtGkqxgdFEKiZdgY7EKvQx4iAtCw0m cDO47psjlOQ8Rohi3jQT6zTPpjq6QUoT/rmr/IaX1H729IONM0l5n8EVx7uqi2CSvo rYDPxcAQyTuM+d6jmr8jmZjggYdZw2dbvjoIATvg= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from paradise.fritz.box ([89.182.225.44]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0M4WNA-1iDVEf2y8C-00yhoq; Sun, 11 Aug 2019 14:48:29 +0200 From: Moritz Barsnick To: FFmpeg development discussions and patches Date: Sun, 11 Aug 2019 14:47:54 +0200 Message-Id: <572abbde623b7857287554aed91b0ea8dc2a437e.1565527501.git.barsnick@gmx.net> X-Mailer: git-send-email 2.20.1 In-Reply-To: <26f78761602ecfc977b70a736a2426ab95082e13.1565527501.git.barsnick@gmx.net> References: <26f78761602ecfc977b70a736a2426ab95082e13.1565527501.git.barsnick@gmx.net> MIME-Version: 1.0 X-Provags-ID: V03:K1:TcINa2gYSGvr9xFReGokvSN/Kpyniva54cp5cIHaGO1Vujt99dy 20s2ZyDfHoqgBmCmtgNlTI+1P37YYPaKvAf9VRY1m3uS2qW/RJQMqLHcYmOT0gKpUNTrReg jJqeyIm2mVhOooa9DSxvMyNS1S54BpKhBIi3MBNFobF5e9zNV4CLfYTjK0Ap5qnIrnSDGMO nw1YuHU+GT+0VBi6TAPEA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1; V03:K0:ACZGGkQxycI=:pI6y9BsWguNBlRYKq1+H95 5ybWa796I/X+B2r3RXgkK9C7kX/joRPvNCoQcpv0zIJWUGm9EvVCf27ahtaUMGIOOwHsVHPRg QZfK6GIoo+Svf8zrDX/QOVBStHz0fBc43o09Mgb9KvF0WmGIeci/rjWhY7vWaCo/DaeK9T0et IrvVxvIKd31Ko+AZPm/GvNxsKQfQBOwRiHe/f6M6bBiz0ORo2wDXFPb4RA9hWW7zhnhWctNCp iy2sXqgYloIIIL+oClaV8eFdgCUmB4xOvrtxgMOPfaqiuaeWXBORK1SK/8wEBVnnFEWcKB6Ek HraSmfkXKQPBipjYtErXRYjRRKAIlF67ALxT5vezoA5ei5CBkwnNmOjCgydgDUyKD/V/P2Hoc C6xuuGySG6+hju4acdbT4JqulO2KeoCNvrjd/7pKKmiRGrGXTP2HyXzWW3/09T/2+2wl4WvCa 8puFuDrvhcCUHonVioqBdTH588RgmkGzMrj7sujgGpExLXKmQ0VZ6Ld2Fr7AHT5wpsqxJWGV5 rugNW96jaKdbiyrP9DaPDuFRd4K4wTn+Tu10yDIqdQpEQqGoo4zN3uU3eZkRfJhxqgjoP+TJM V7hDfw628zGQt3DtHCDP+K/7UHql316siSCpd2gVeSqVVr5ks2vvOz7WlyvNisZOVfuk7mTdo h2FIEkX0qlygrRWS6cIExRaVFm5e+kZe2EiZcdQVoQo+Js3KLqW6DGtwvwjENL55Q+U2nfWB9 u67sQdAcYJ5tdxv2I+R+SMVdzN44ISTTGTg9RGsKG+/3xyOs7/76onWYtD5yzOPCceg05FS8T tQNSbJ1WMToTrK9tApsPm+OX/FAyVHh1AGWm8VX5StJ7xG+Sg04BWIetrru8RHnRAwUq4Z4DI AOF/RecZPq4nzPQ1WruaI9cdFSf6HMJvTzTcAG0/TiSqznjZ54ya8pkzK24VIZL/F547ntT2R SlHQ1jqng1GkbEg1muSaPmJvzqUJJCtMUHnoL+f7rlOQ0FnY5J+UjqZ98DC3GZYD8BwNDnwEn /OS6KlDqj/gHIwJJHFy9y9L41rmzuudFuptvpsiS/UQL1oWTswfHJdv3JmrMT2k3bk0GrjVcD okwkpyaRGbWCovpkjugRA0Yyo/CaiV2UNZckVVLorox2XOZa4IoHwdy3g== Subject: [FFmpeg-devel] [PATCH 2/4] avformat/hashenc: rearrange options definition 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 Cc: Moritz Barsnick Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Only the frame* muxers support the format_version option. Signed-off-by: Moritz Barsnick --- libavformat/hashenc.c | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) -- 2.20.1 diff --git a/libavformat/hashenc.c b/libavformat/hashenc.c index 7f83df5cca..96e00f580c 100644 --- a/libavformat/hashenc.c +++ b/libavformat/hashenc.c @@ -36,18 +36,37 @@ struct HashContext { #define OFFSET(x) offsetof(struct HashContext, x) #define ENC AV_OPT_FLAG_ENCODING_PARAM -#if CONFIG_HASH_MUXER || CONFIG_FRAMEHASH_MUXER +#define HASH_OPT(defaulttype) \ + { "hash", "set hash to use", OFFSET(hash_name), AV_OPT_TYPE_STRING, {.str = defaulttype}, 0, 0, ENC } +#define FORMAT_VERSION_OPT \ + { "format_version", "file format version", OFFSET(format_version), AV_OPT_TYPE_INT, {.i64 = 2}, 1, 2, ENC } + +#if CONFIG_HASH_MUXER static const AVOption hash_options[] = { - { "hash", "set hash to use", OFFSET(hash_name), AV_OPT_TYPE_STRING, {.str = "sha256"}, 0, 0, ENC }, - { "format_version", "file format version", OFFSET(format_version), AV_OPT_TYPE_INT, {.i64 = 2}, 1, 2, ENC }, + HASH_OPT("sha256"), + { NULL }, +}; +#endif + +#if CONFIG_FRAMEHASH_MUXER +static const AVOption framehash_options[] = { + HASH_OPT("sha256"), + FORMAT_VERSION_OPT, { NULL }, }; #endif -#if CONFIG_MD5_MUXER || CONFIG_FRAMEMD5_MUXER +#if CONFIG_MD5_MUXER static const AVOption md5_options[] = { - { "hash", "set hash to use", OFFSET(hash_name), AV_OPT_TYPE_STRING, {.str = "md5"}, 0, 0, ENC }, - { "format_version", "file format version", OFFSET(format_version), AV_OPT_TYPE_INT, {.i64 = 2}, 1, 2, ENC }, + HASH_OPT("md5"), + { NULL }, +}; +#endif + +#if CONFIG_FRAMEMD5_MUXER +static const AVOption framemd5_options[] = { + HASH_OPT("md5"), + FORMAT_VERSION_OPT, { NULL }, }; #endif @@ -233,7 +252,7 @@ static int framehash_write_trailer(struct AVFormatContext *s) static const AVClass framehash_class = { .class_name = "frame hash muxer", .item_name = av_default_item_name, - .option = hash_options, + .option = framehash_options, .version = LIBAVUTIL_VERSION_INT, }; @@ -256,7 +275,7 @@ AVOutputFormat ff_framehash_muxer = { static const AVClass framemd5_class = { .class_name = "frame MD5 muxer", .item_name = av_default_item_name, - .option = md5_options, + .option = framemd5_options, .version = LIBAVUTIL_VERSION_INT, };