From patchwork Wed Dec 22 03:25:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 32825 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp6022672iog; Tue, 21 Dec 2021 19:26:37 -0800 (PST) X-Google-Smtp-Source: ABdhPJw3odc24k31ZJs2hgoKWzVTgyLViTKDB2Cp3bq6XYzsZxslTZZugJxRDyfCP71fAme8tLz+ X-Received: by 2002:a17:906:58c7:: with SMTP id e7mr160920ejs.96.1640143596919; Tue, 21 Dec 2021 19:26:36 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z21si559913edd.365.2021.12.21.19.26.36; Tue, 21 Dec 2021 19:26:36 -0800 (PST) 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=ZwmKOMU1; 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 439A968B007; Wed, 22 Dec 2021 05:25:48 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074084.outbound.protection.outlook.com [40.92.74.84]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5AD1268AFCD for ; Wed, 22 Dec 2021 05:25:45 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VQ/6A4yjY0LRlXafKumzHchuAtwqHSWy7AqR2VSWa+a/E48Zl+7eg/mMAXIxLOG6R2O/tyfu/vh26ZxQ70JVvas/so6Vt2ZIm/WClncYD9aSIXnDZ8OC0At67iVzbZJz5p5lbf34YQbiHuLpyBEbwMXpBI0vnYbIV1TWKQh9ZDq6br0UMjP6JuzbxmGZsSFtUslNhIrpmJooq+etecUZy7kPIZh1OdOFuQWU0I+1UYd2KJ/cp4W7YIbnpUOlw0zQ4Vgt9P7Kw4ywkgc9D3LOEFJzumBo+DInCY0/We7m6eC6mbriNC/s1kloGhxoqN+uJFmjRl6VM7MvMgDciF49zw== 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=85qcASFZT93/SWi8BGvQJNaTIC55pTmQn/+vsi9y/YA=; b=mlI5WHDoPSkrm1/OFEkqdGyIYATvagKzFE1um5u+YKc/r8eDBtvgpaLRUEkQbdTTBlwlHh8WMgrb8MuMe+pkxO39waDREgzN9EMC7EwXzYBw21PqAP0tmtUQPC8l3jb9DaaM0yYA1YJkfa1yJzphOg5J22vPNarwP7/GIUbVGdRitkE5WbpzwNwEqFGRufvwdacP93i/7+IgcGwQeiBuMjUSVMb5u8vev5bHMXnuK0eSm7LV5PDTlFqeDvZVcB2LwynRl2VuZL/8EqG+bGAy7qItNK4tFw/LjkUY1wlU63VtpziU/hiQ30wjuT2nqrWywmpxhRhmzKNjDFhQE6yWdQ== 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=85qcASFZT93/SWi8BGvQJNaTIC55pTmQn/+vsi9y/YA=; b=ZwmKOMU1RzZ18pQZBHSeGyK+Tp+jSVCqoWIKVBuY7uXhOWknp0FhZ80T/QGAagb22bP9BuPhP4aG685Jhnf1WZAYq5iHEmeXe48OSTJZlWPVRraZoe3s8KX8LdMPQwvna3qPK9DXYcwl32up9T8hwf4S/DrHnyVCFE0UrBmx4Gkj2Md2CDbZ+bl4Gllj503imczvYspazyR6+TIRfGy0JWl7bjbzTSgIG2XyhRgs13irzIty2t7tWzQCcG2tZQYL/H9JUPPI6wlUtZnBjSy+BKvolchzUXDnq8G1zsSawdUXR5FZKSdqxARzLARYby/+JdxWTfcul5AhM8FlgQHx1A== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB4104.eurprd03.prod.outlook.com (2603:10a6:20b:18::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4801.15; Wed, 22 Dec 2021 03:25:32 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f0dc:92f5:6bc2:45ca]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::f0dc:92f5:6bc2:45ca%6]) with mapi id 15.20.4801.022; Wed, 22 Dec 2021 03:25:32 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Wed, 22 Dec 2021 04:25:09 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [y5wiqaPOrQv8BZ7teaWgH9HGLdV5AJws] X-ClientProxiedBy: AS9PR06CA0323.eurprd06.prod.outlook.com (2603:10a6:20b:45b::19) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20211222032514.896794-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 72eb5f6d-f353-4afa-1083-08d9c4fab5e6 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNWm3GLoeUntTG6KfWWWbWhlQ9BznaUGasmdb3HEGfDd2GheGNYF3L9ktVNA0s7Mfl820mYMl3HHM4eh59TZAx+yeUly4LApRh96hO4AYqpgfbCR21wp/iT+ciB58VW83SkbQSTCWa+/+59DRNoDtWfVlqPkFAPLEGAbNqiuB5u6Mo+nk8gIfSVReHwautGifTNNsEZMjWxUXpBNEHDQrX2wK9SdkrK/dWgLhEy12XcNh8zGQj9aEewYRiMMyGMUcVLjvOCg9GSiBojcz63IY1Wgbu+uAgvuuJXQS08ETG09TTjwvhtEESMpkE+m9WyhZ7uwc9Kiz/4vr8/51a5kFl6a5UYO549MxcbabXmEIGNdFTZNDHBak7KMnnyNT8vGCNi36OMQ+1ZpEpJmPxOY2vjt1+TjzxytxBnaNIAhiEjjQJ9vTpn/MZSNU8bSmWZTV8jp/iGZl8trZUV7v7YGII+WnrAtTtope8iVjWWSjCO9498g3BhA96vWTj5sxj87b9PuTexGd4FagNTakPetHtTilxR/KEq2sU/ISox3AnNOin6qIUiSYKPpwonruWDhgj8HObItusyEPfu/IVMGdoiTmNKsPNlZXqlYPP9FzN8jXTAoTQgwPn2QVc1RQLANreZ79ivTcDHKOIV8VuzQYnKh/ku4HO+Fsjl5L0iE9C9FsWP81eKFoQhsj2zHE1TGyiOsO78JuOH5M/h8abdHD/wKX1KtmCfA1Do= X-MS-TrafficTypeDiagnostic: AM6PR03MB4104:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RLqZJcpTR6TJegpuS8f4l6YjsfCY0VhgklTLfP1oHhm0eCXPXFiU6le0zjtyWOHy6+KgNx7TqYa7+rzHnFnyLAprpbURdWsuG+FUuDp2Qf5B+BMsRDrfs6O+4omsjcJKXCE937xn/Us2mzmlRuVXskepGd5jNpYi+9WCLZrugxIRZe1TWqgtPhkIIO/x/anj/xTLIgsp7IdpkWjVFlzt70kSeHsb8aGmvuJkdBBmw611fIsy/CnDdC/2UadKLks/JFL9FXsDlN56qG6YDhLBB2LAKoUN39uupyQIap4k6k1AeQXl9x3xsKYYoYYp6BuxET7qLXYOQm4tJ/K/ETSb4qDI6MLupAo+8vnTza7PC0Za7jDrrrPMpek5Av6CPx49Wqv9IEKPKNUDRk/jUTaNlLib5fKTkHfguY7B+p9xJTqAsdsWxCeM9HNEXgezzj+1IE9+3nMiiarlSxERhCbrHLstXh1/G5F+lLNhyjXghWTTkOhv6QRAfZ2dtGMrSRF5eZcmNgDHd8wJdj2dsYgB6qshyAuhXQkgvDZv/7ladDgaIHnp8woOWyhchw5Ds6I3DFIpsYUpUiKa8TfUpTHTCA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: WpKen4LG7RGj9AVsuY+7weknrCeOdTrocIB3oRFj8g+G+M8G9DKUab46gKVmkENvE1/Fd/iW2FiCfBxFjqvHIL/SjbEQvXp96PFFl/Q6luI88QaTN6bEupira53DDGyFlymj7WGOza/jPrJxA2HcmXSg/TTMGGcFTGR95bVu7nIlCHs6wagmLe7qsuN8s3MmpIP4+LDOMXVcrItwjGysQMREvPQtJDwNP4hEbfoBuBhxVYilgdNp3TOS6YA59FAodw+zBnHmNqEjNZT8cx49/Dlfu9oyD9gxxPHobuZaUGFene2dCo4wE0qdic6IZP536MGIwkcqTtbyGAKXwyR3rmsf1yNYbYgyXXpds5Yu+tntRIUjKufeLNMZasTF4q2AN0PWNW7npFV7DrdQCtyzibaCbaN+QaUS9H/YJug6chRAzTODsG16S1GIV5x7v0Tar0lElileEsBwgmd1BJimmFGOUmK3UTGsMiGVQFIN1OgMatHehIiouuCytmuc62jiliyXBHNn1axQ8i/jFV0jc6rwgnMJkd7xj8kf1Jcsfvjg4uNYNq5s8M01n6AveaVft7EPvtvkehk5LW5IpGUus8ZH5nE26UZbYvaSvBt2YZLBZt4DaTPpVMaVwlJZ6DubKvm7AKt2VEH1WiS+vpkNefI+nCZRa3xIs/Gwmj6b/lpd1yNQzUpgys1wJ31dUQgN6sdeXfVtP8I3SWsk3JeHeg5xaQprVnWd5gbX/jbGXO5RKGsjMDaIeW/l4FL8KJuSKCoVYWjVuidg+Z7ArGP4L0pPkWqb2JoU5T3Bqke+Qe6ShDY6QBuHDAJQKEQKUFLpvntS4zk3LKOAcXDo7nM2sXyqo2A/Srd2ff+l35TYr0JgSPx6dd829nOEfzFr+4zmlNiqh2AjHimifqRUfNfwzAy8APZeotRQbx36hIDFFQ4922IMkB9nQGEjRffG9IWZJ04m9y38qkLpF/8tyFoDCw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72eb5f6d-f353-4afa-1083-08d9c4fab5e6 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2021 03:25:32.4132 (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: AM6PR03MB4104 Subject: [FFmpeg-devel] [PATCH 09/14] avcodec/mjpegenc: Deprecate unused prediction type 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: h0wH2AoWylQU Signed-off-by: Andreas Rheinhardt --- libavcodec/mjpegenc.c | 6 ++++-- libavcodec/mjpegenc_common.c | 2 +- libavcodec/mpegvideo.h | 3 +-- libavcodec/version.h | 3 ++- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 9b5acde58d..cafa0487c5 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -77,7 +77,7 @@ static av_cold void init_uni_ac_vlc(const uint8_t huff_size_ac[256], static void mjpeg_encode_picture_header(MpegEncContext *s) { ff_mjpeg_encode_picture_header(s->avctx, &s->pb, &s->intra_scantable, - s->pred, s->intra_matrix, s->chroma_intra_matrix); + 0, s->intra_matrix, s->chroma_intra_matrix); s->esc_pos = put_bytes_count(&s->pb, 0); for (int i = 1; i < s->slice_context_count; i++) @@ -620,10 +620,12 @@ static int amv_encode_picture(AVCodecContext *avctx, AVPacket *pkt, #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { FF_MPV_COMMON_OPTS -{ "pred", "Prediction method", FF_MPV_OFFSET(pred), AV_OPT_TYPE_INT, { .i64 = 1 }, 1, 3, VE, "pred" }, +#if FF_API_MJPEG_PRED +{ "pred", "Deprecated, does nothing", FF_MPV_OFFSET(dummy), AV_OPT_TYPE_INT, { .i64 = 1 }, 1, 3, VE, "pred" }, { "left", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 1 }, INT_MIN, INT_MAX, VE, "pred" }, { "plane", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 2 }, INT_MIN, INT_MAX, VE, "pred" }, { "median", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 3 }, INT_MIN, INT_MAX, VE, "pred" }, +#endif { "huffman", "Huffman table strategy", OFFSET(huffman), AV_OPT_TYPE_INT, { .i64 = HUFFMAN_TABLE_OPTIMAL }, 0, NB_HUFFMAN_TABLE_OPTION - 1, VE, "huffman" }, { "default", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_DEFAULT }, INT_MIN, INT_MAX, VE, "huffman" }, { "optimal", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_OPTIMAL }, INT_MIN, INT_MAX, VE, "huffman" }, diff --git a/libavcodec/mjpegenc_common.c b/libavcodec/mjpegenc_common.c index 0303e65790..ed0e8c234d 100644 --- a/libavcodec/mjpegenc_common.c +++ b/libavcodec/mjpegenc_common.c @@ -310,7 +310,7 @@ void ff_mjpeg_encode_picture_header(AVCodecContext *avctx, PutBitContext *pb, put_bits(pb, 4, 0); /* AC huffman table index */ } - put_bits(pb, 8, lossless ? pred : 0); /* Ss (not used) */ + put_bits(pb, 8, pred); /* Ss (not used); pred only nonzero for LJPEG */ switch (avctx->codec_id) { case AV_CODEC_ID_MJPEG: put_bits(pb, 8, 63); break; /* Se (not used) */ diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 5a3486d74c..942b05ba37 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -412,7 +412,6 @@ typedef struct MpegEncContext { /* MJPEG specific */ struct MJpegContext *mjpeg_ctx; int esc_pos; - int pred; /* MSMPEG4 specific */ int mv_table_index; @@ -574,7 +573,7 @@ typedef struct MpegEncContext { int intra_penalty; -#if FF_API_MPEGVIDEO_OPTS +#if FF_API_MPEGVIDEO_OPTS || FF_API_MJPEG_PRED int dummy; ///< used as target for deprecated options #endif } MpegEncContext; diff --git a/libavcodec/version.h b/libavcodec/version.h index 8a0b94f5aa..8581d891e1 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -28,7 +28,7 @@ #include "libavutil/version.h" #define LIBAVCODEC_VERSION_MAJOR 59 -#define LIBAVCODEC_VERSION_MINOR 14 +#define LIBAVCODEC_VERSION_MINOR 15 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ @@ -63,5 +63,6 @@ #define FF_API_MPEGVIDEO_OPTS (LIBAVCODEC_VERSION_MAJOR < 60) #define FF_API_FLAG_TRUNCATED (LIBAVCODEC_VERSION_MAJOR < 60) #define FF_API_SUB_TEXT_FORMAT (LIBAVCODEC_VERSION_MAJOR < 60) +#define FF_API_MJPEG_PRED (LIBAVCODEC_VERSION_MAJOR < 60) #endif /* AVCODEC_VERSION_H */