From patchwork Tue Mar 28 13:45:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dawid Kozinski X-Patchwork-Id: 40888 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:7a30:b0:df:834d:2c1a with SMTP id t48csp2195124pzh; Tue, 28 Mar 2023 06:46:23 -0700 (PDT) X-Google-Smtp-Source: AKy350ZBHlVUcNgpR+/wd1HKuWslg8/xa8Xx9Ssii9em4i8ort3Hw19VeJtYmwwBh/K1Bm+Jv7G4 X-Received: by 2002:aa7:d584:0:b0:4fa:ba60:8188 with SMTP id r4-20020aa7d584000000b004faba608188mr15472785edq.8.1680011183366; Tue, 28 Mar 2023 06:46:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680011183; cv=none; d=google.com; s=arc-20160816; b=ON/ccU8rA4ndSlV0uWV0rCeOgmFzTj70L6Wc6Yb1NFygyBcooWjPQSEtm4RpAVF5U3 H075r0hcQ39JiVdWT0Ym5MOgY1QMerDxEk2hl/IIJwLzIep/3kqjzAk4WxkafBmT3F7z OFs2gSjnZAOkf5RHuq6FDqwd7q9RqEUnwd2UKTtPLOmbo7ggBD10lGkiqMUQfCsQK2Xh FahH2/gDZ4gfm6NM3tT2fZMjsxZLXeRvl8Y71VEkyiOolhmYOlui/ytDW4h7rJNuv2XN bwh25cdiq88YlesyaduuJE82wkMr4pcrbzxfenWdn0np9e4yYkkQycD+0rO+8iGRXwI0 2OKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:cms-type:mime-version :message-id:date:to:from:dkim-signature:dkim-filter:delivered-to; bh=AuCiqcA/nIW05EhwTp0qwyxEEjYkHKqoUkDjtriF6E8=; b=VMqIR4aCvAcxWwwp3rJ/AvgWjGU6eBxJI07ho16CbJ4dwY0TeY53LBMuPai9Y4NWVO RUKmz03ktIPoeH2FnKoB3JoweHN/UYcZlAGQwOo1F/tj/mSqhb4AuND4D7U7lehMwvuW yhxdLEHjaRJHqU9qvL0viehySAxfpQbA0UgwwqJsCmgYgbH03FaUgZ39mrtghB15M3xM OQVRiKeqm2Aou1rsFcSsjkk4DFxEkXPIplb1h1P1oKq5mK/oRbf1fzzzqsEtQpFHLhjy 7lH2DTEsY3cq96VvRiVq3PGopCiYYSLMU3T5qyDYGpVpdcmBybnACbYXDo+gtzBMZPFy mS2A== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b="SK1/Bz2F"; 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=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id u10-20020a05640207ca00b004bb9ff4b733si23623436edy.353.2023.03.28.06.46.16; Tue, 28 Mar 2023 06:46:23 -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=@samsung.com header.s=mail20170921 header.b="SK1/Bz2F"; 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=NONE dis=NONE) header.from=samsung.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 93CA168CAD4; Tue, 28 Mar 2023 16:46:13 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4D8BB68C3F7 for ; Tue, 28 Mar 2023 16:46:06 +0300 (EEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20230328134603euoutp02732f3fed7990b8541c4ba3b62886b73d~QmUCEj8J12636926369euoutp02X for ; Tue, 28 Mar 2023 13:46:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20230328134603euoutp02732f3fed7990b8541c4ba3b62886b73d~QmUCEj8J12636926369euoutp02X DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1680011163; bh=o7d6DIgOaKykZG+8RJr04B7OkY774ZhXqt/Bezeu5cw=; h=From:To:Cc:Subject:Date:References:From; b=SK1/Bz2FcpfvmdQ3NSDuiTyzpXbWk4gml/QvyxGXlhgkyuI6TRFB2SOilFUXv3tfm 8XQDo80HctEahKz2KtUp7lG0l8i00OdYlONE8cTV+KE7HjS7WSTF68DUfYUQq4d4Cn ZPKcG/zILhUA4u2sfFZ24GO8YtM82kzU6MbkkseA= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230328134603eucas1p11cddde569fbc9b5ffdca903926581f74~QmUBtcIy21528415284eucas1p1Y; Tue, 28 Mar 2023 13:46:03 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id D4.1B.10014.A9FE2246; Tue, 28 Mar 2023 14:46:02 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20230328134602eucas1p28d1d547d2d0807f1af9493bfa77a5575~QmUBeNQJQ1665716657eucas1p2I; Tue, 28 Mar 2023 13:46:02 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230328134602eusmtrp19f88fe777144efc97d2a5769c1f074fe~QmUBds_zB3195831958eusmtrp1M; Tue, 28 Mar 2023 13:46:02 +0000 (GMT) X-AuditID: cbfec7f5-b8bff7000000271e-51-6422ef9a20a7 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id BD.B1.08862.A9FE2246; Tue, 28 Mar 2023 14:46:02 +0100 (BST) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230328134602eusmtip1ef51172973aefe565e046a7919a82765~QmUBLIURm1948619486eusmtip1j; Tue, 28 Mar 2023 13:46:02 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Tue, 28 Mar 2023 15:45:48 +0200 Message-Id: <20230328134548.1580-1-d.kozinski@samsung.com> X-Mailer: git-send-email 2.37.3.windows.1 MIME-Version: 1.0 X-Unsent: 1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrNIsWRmVeSWpSXmKPExsWy7djPc7qz3iulGPSdsbL4cu0Ls8XKb79Z LL59OsPswOzxZ9FmFo++LasYA5iiuGxSUnMyy1KL9O0SuDKabi9kL5gnU/H68nqmBsYvol2M nBwSAiYSHacOsnYxcnEICaxglLjz9xk7hPOFUWLP169MEM5nRontz2cyw7ScvnKcDSKxnFHi 7sFfLBBOO5PEooXTwKrYBHQlXn54xARiiwiYSpxs3ssGYjMLaEusu/sdyObgEBZwlbiwjQMk zCKgKnFozUawVl4BK4ltc2exQyzTlJiwZQ4TRFxQ4uTMJywQcW6JdbMusUKMlJdo3jqbGeQG CYG/7BL3Lr+BanaROHD7HlSDsMSr41ug4jISpyf3sIDcICFQLHGo3wHCrJE49CMdosJa4m3j cUaQMDPQCet36UOEHSXm/+5jhqjmk7jxVhDiAD6JSdumQ4V5JTrahCBMFYm+TjGIRimJp8vm QMPPQ+Ll3FbGCYyKs5B8NQvJJ7MQ1i5gZF7FKJ5aWpybnlpsnJdarlecmFtcmpeul5yfu4kR mB5O/zv+dQfjilcf9Q4xMnEwHmKU4GBWEuH9fU0pRYg3JbGyKrUoP76oNCe1+BCjNAeLkjiv tu3JZCGB9MSS1OzU1ILUIpgsEwenVAPTGqtZeSrd5WYpD6T+/J9kYaNVbFS2s6f/VZexwdqN 8rcfNOzT3vnSRMhxoeG3FVLKa9xWB84/v+xG1aqF2rtkmix11iy13eb5mVFByP33s/bv/clh rTx9zyboXl+2X2mpcUZJ/K4PN9tXXZR7ffTd63M3tZ7nCK++cMVX89QOO75bTF++iG45oxb8 +vkCp56rM2t/edWu0BFYWH/oZ4TxHbmn8R6BP132K74yCuf8Et9SERhudD7NK/fg5QDND9ab RaTkvpRK7ZCUYQti65x7Ki2fuVDKddbJGXn58lF7Fz6ZOvOGs88ijjP8bmm8Ptd3f7shM2cf /xbbSVXPlvyt0fHdWaXImXMydOsnhpeNSizFGYmGWsxFxYkAH75DWn4DAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrILMWRmVeSWpSXmKPExsVy+t/xu7qz3iulGMx/pGXx5doXZouV336z WHz7dIbZgdnjz6LNLB59W1YxBjBF6dkU5ZeWpCpk5BeX2CpFG1oY6RlaWugZmVjqGRqbx1oZ mSrp29mkpOZklqUW6dsl6GU03V7IXjBPpuL15fVMDYxfRLsYOTkkBEwkTl85ztbFyMUhJLCU UeL68t+sEAkpiaVLFzFC2MISf651QRW1Mkn8nLSLHSTBJqAr8fLDIyYQW0TAXOLiultgDcwC 2hLr7n4HauDgEBZwlbiwjQMkzCKgKnFozUZmEJtXwEpi29xZ7BDzNSUmbJnDBBEXlDg58wkL RJxbYt2sS6wQI+UlmrfOZp7AyD8LSdksJKkFjEyrGEVSS4tz03OLDfWKE3OLS/PS9ZLzczcx AsN227Gfm3cwznv1Ue8QIxMH4yFGCQ5mJRHe39eUUoR4UxIrq1KL8uOLSnNSiw8xmgLdOpFZ SjQ5Hxg5eSXxhmYGpoYmZpYGppZmxkrivJ4FHYlCAumJJanZqakFqUUwfUwcnFINTCmRJn0K bB8nsVq/UTwZWX41+PzBDSnml7//2rL5z8qD2188e8hpeeXflWOOp0252Urusu3ZKdK94PEP 6+CA992XM4uq7oXueX3X6KRt/IsJD9yznUvcQkX+KzXm+d7PkNp3uYNlr0X2lb875ZqrTv3t Wfaz2upndYyHPEdRQJ32ibwlR/ex7Nm5zPrC78ofr1e3iT1taV63OfN7bbZxiYvrrHfrQy4e s3Q40cu3xeUhf0vCEv7WlVKsW4WdVBq+ruFud+eXuzfloaJQw46OE3qm3juTrv/qPL5NjXXN mdtPZ2lHuaxvFxT5vtD+R69r1o9Tpo927iqseaX9fem5H+dvXv0ZcD1g+sXdLpwLPjQosRRn JBpqMRcVJwIA2qyCmeQCAAA= X-CMS-MailID: 20230328134602eucas1p28d1d547d2d0807f1af9493bfa77a5575 X-Msg-Generator: CA X-RootMTR: 20230328134602eucas1p28d1d547d2d0807f1af9493bfa77a5575 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230328134602eucas1p28d1d547d2d0807f1af9493bfa77a5575 References: Subject: [FFmpeg-devel] [PATCH v18 01/10] avcodec/evc: MPEG-5 EVC codec registration 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: Dawid Kozinski Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: uU7z+Cb1XEEg Added prerequisites that must be met before providing support for the MPEG-5 EVC codec - Added new entry to codec IDs list - Added new entry to the codec descriptor list - Bumped libavcodec minor version - Added profiles for EVC codec Signed-off-by: Dawid Kozinski --- libavcodec/avcodec.h | 3 +++ libavcodec/codec_desc.c | 8 ++++++++ libavcodec/codec_id.h | 1 + libavcodec/profiles.c | 6 ++++++ libavcodec/profiles.h | 1 + libavcodec/version.h | 2 +- 6 files changed, 20 insertions(+), 1 deletion(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 18ca0e2494..1e87acaf4d 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1704,6 +1704,9 @@ typedef struct AVCodecContext { #define FF_PROFILE_KLVA_SYNC 0 #define FF_PROFILE_KLVA_ASYNC 1 +#define FF_PROFILE_EVC_BASELINE 0 +#define FF_PROFILE_EVC_MAIN 1 + /** * level * - encoding: Set by user. diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index d912704891..e59a1a30ff 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -1923,6 +1923,14 @@ static const AVCodecDescriptor codec_descriptors[] = { .long_name = NULL_IF_CONFIG_SMALL("ViewQuest VQC"), .props = AV_CODEC_PROP_LOSSY, }, + { + .id = AV_CODEC_ID_EVC, + .type = AVMEDIA_TYPE_VIDEO, + .name = "evc", + .long_name = NULL_IF_CONFIG_SMALL("MPEG-5 EVC (Essential Video Coding)"), + .props = AV_CODEC_PROP_LOSSY | AV_CODEC_PROP_REORDER, + .profiles = NULL_IF_CONFIG_SMALL(ff_evc_profiles), + }, /* various PCM "codecs" */ { diff --git a/libavcodec/codec_id.h b/libavcodec/codec_id.h index 64df9699f4..c6c07bd18c 100644 --- a/libavcodec/codec_id.h +++ b/libavcodec/codec_id.h @@ -320,6 +320,7 @@ enum AVCodecID { AV_CODEC_ID_WBMP, AV_CODEC_ID_MEDIA100, AV_CODEC_ID_VQC, + AV_CODEC_ID_EVC, /* various PCM "codecs" */ AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs diff --git a/libavcodec/profiles.c b/libavcodec/profiles.c index 545626337c..c646a3f54d 100644 --- a/libavcodec/profiles.c +++ b/libavcodec/profiles.c @@ -194,4 +194,10 @@ const AVProfile ff_arib_caption_profiles[] = { { FF_PROFILE_UNKNOWN } }; +const AVProfile ff_evc_profiles[] = { + { FF_PROFILE_EVC_BASELINE, "Baseline" }, + { FF_PROFILE_EVC_MAIN, "Main" }, + { FF_PROFILE_UNKNOWN }, +}; + #endif /* !CONFIG_SMALL */ diff --git a/libavcodec/profiles.h b/libavcodec/profiles.h index 1d523992fc..c0eacae5c1 100644 --- a/libavcodec/profiles.h +++ b/libavcodec/profiles.h @@ -74,5 +74,6 @@ extern const AVProfile ff_sbc_profiles[]; extern const AVProfile ff_prores_profiles[]; extern const AVProfile ff_mjpeg_profiles[]; extern const AVProfile ff_arib_caption_profiles[]; +extern const AVProfile ff_evc_profiles[]; #endif /* AVCODEC_PROFILES_H */ diff --git a/libavcodec/version.h b/libavcodec/version.h index 7acb261bb3..ecb096f38b 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -30,7 +30,7 @@ #include "version_major.h" #define LIBAVCODEC_VERSION_MINOR 7 -#define LIBAVCODEC_VERSION_MICRO 100 +#define LIBAVCODEC_VERSION_MICRO 101 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ LIBAVCODEC_VERSION_MINOR, \