From patchwork Mon Oct 24 07:38:40 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Dawid Kozinski/Multimedia \\(PLT\\) /SRPOL/Staff Engineer/Samsung Electronics" X-Patchwork-Id: 38949 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp2079906pzb; Mon, 24 Oct 2022 00:39:04 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6TVQEIl0c4dhAoByjWnM3l659Vu3CqvUlaAqTB6xOD7reb+ZVzoevWRWd914I1k9Fuv8jK X-Received: by 2002:aa7:cb59:0:b0:461:7378:7be0 with SMTP id w25-20020aa7cb59000000b0046173787be0mr10456739edt.60.1666597143843; Mon, 24 Oct 2022 00:39:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666597143; cv=none; d=google.com; s=arc-20160816; b=JbtGJZH93S0gD7DGVeqJg5+CkIZMGN6wFsNkB87X1u5CXyLAsaY1KWq566TQ7iE5Yr 1SYLROERWa6t/RtPp02+l7fjxN3hyPZGJRoLPV2XsA0oWkagu3BFb478FCeeoGD3W9a5 seSNqk3PQ1mjbd+7dsUKfeRXEOAxu9zxksUlj+bDdMriCc/DuIkql2/urQxs49CGgGt/ u6gaBdkLbEya4On9CjlGx6gkHIzylrixBMeraxB82p+Lvt/dqYWzLMNT/uLz1zM1Gesu mEKZ3H/gCRsxc3lTObRzvJQXuQG8GS9DXxzfBE2XB1eSLSCs25kQ4GHDg/ERNAtf6UYk pnVw== 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=UadspaobQ8lKSHyEU9bg1ntKUw+Z5E+gBwpwdgckRLY=; b=o0ZZ/ue69L3vGRBrxs7XHzlgSXW3Z/gGwpfL6tc4ZigJkRwahLFBMdYMMpi9MF/Au9 issHZ5vMTMRDTQ7UCqs2tqZlLk841d1mQt95ddwUR8NLthKtm5oAtAYZ1hsb0NCdv5CB u8pV91qaEpDoKdq3ZCVqwdQz7A0skA0G2xbiW33wti1Fx5IIbrevfJw9j/9HMMxOA768 zVImugZsHAYaxRWI354HPPvBNKnvtdxjAzatCcQMl5JE/JlUuUcaqWOmsjVKm/oUgMTM Lt5DA9Xay0h46Prlg1flDltc5rQxnVKIrIPVI4ZN0u6okFCCenEXsCXJXDegok8gcJFX mujQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b=VKp5s0oZ; 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 cr17-20020a170906d55100b00791994dfb9esi20246838ejc.491.2022.10.24.00.39.03; Mon, 24 Oct 2022 00:39:03 -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=VKp5s0oZ; 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 4373D68BD68; Mon, 24 Oct 2022 10:38:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5806C68BC3B for ; Mon, 24 Oct 2022 10:38:53 +0300 (EEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20221024073850euoutp01a047628211f00f6dd83b3c2618c9f79f~g8UKjmBaO0434604346euoutp01m for ; Mon, 24 Oct 2022 07:38:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20221024073850euoutp01a047628211f00f6dd83b3c2618c9f79f~g8UKjmBaO0434604346euoutp01m DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1666597130; bh=cMY33JX5baQkrmbt4RdoX7IRznaqjfKqs3Evydpck5Q=; h=From:To:Cc:Subject:Date:References:From; b=VKp5s0oZeFEcznx/xUrzaaQZG5aBz2D9y3+gsatoq35F5xN9lW/BUELj8lN/Fh6c3 POSseAkU2mLV/0HruVer6FdcfjSNMYYS85ytKcQYwwgEWocIEqe4reMtxBh8uJzUtZ ycHfqN58hDy2UQv4c5WpBku5rv1x4uVnxFNDSX0E= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20221024073850eucas1p21ce9296f2c00880153b55e4f294c1034~g8UKPsNrW2275322753eucas1p2K; Mon, 24 Oct 2022 07:38:50 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id 99.B9.19378.A0146536; Mon, 24 Oct 2022 08:38:50 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20221024073849eucas1p1c5a416b42d8a14376bc8ff3011a560b8~g8UJ6ab2A0322603226eucas1p1R; Mon, 24 Oct 2022 07:38:49 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20221024073849eusmtrp11a951c652bd5f25b909f69610accf77e~g8UJ5bfMJ1606816068eusmtrp1t; Mon, 24 Oct 2022 07:38:49 +0000 (GMT) X-AuditID: cbfec7f5-a35ff70000014bb2-5c-6356410aee86 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id 6E.C4.10862.90146536; Mon, 24 Oct 2022 08:38:49 +0100 (BST) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20221024073849eusmtip1994544881c4f38f30b02de980257a41e~g8UJnS4e50236002360eusmtip1I; Mon, 24 Oct 2022 07:38:49 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Mon, 24 Oct 2022 09:38:40 +0200 Message-Id: <20221024073840.1344-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+NgFnrFIsWRmVeSWpSXmKPExsWy7djP87pcjmHJBpsbeS2+XPvCbLHy228W i2+fzjA7MHv8WbSZxaNvyyrGAKYoLpuU1JzMstQifbsEroyZT/+zFFyRrriz+C5zA+Mt0S5G Tg4JAROJ+VvfMnUxcnEICaxglHi6dTozhPOFUWJWx0RWCOczo8Sppu3sMC2bV/dBJZYzSpz9 f4QNwmlnklh7YxUTSBWbgK7Eyw+PwGwRAVOJk8172UBsZgFtiXV3vwPZHBzCAs4SU34LgIRZ BFQlvqy6xAJi8wpYSSy+1sEIsUxTYsKWOUwQcUGJkzOfsEDEuSXWzbrECjFSXqJ562ywsyUE vrJLNOy4ywRR5CLR8+841NXCEq+Ob4GyZSROT+5hAblBQqBY4lC/A4RZI3HoRzpEhbXE28bj jCBhZqAT1u/Sh6hwlJi6tATC5JO48VYQYj+fxKRtoGADCfNKdLQJQZgqEn2dYhDjpCSeLpvD DGF7SPybcop5AqPiLCRPzULyyCyErQsYmVcxiqeWFuempxYb56WW6xUn5haX5qXrJefnbmIE JofT/45/3cG44tVHvUOMTByMhxglOJiVRHhZngQnC/GmJFZWpRblxxeV5qQWH2KU5mBREudl m6GVLCSQnliSmp2aWpBaBJNl4uCUamBK+DdNavbCZraPJd4Fq5Yv+6ZpIjfhD++5rr9LlutN 8vN/liDB8bGuXvTPzlcrqvx+ax/cuZ2bgcVPoULMtj37zt7Fe+aGqIezH7ZpcVyx9/U1uaAK /z8bQ0+F33ff+LKpK4cjhO/bzTcz1J+0d1jteex40WneQ9G3G2/lOuxOMBbdLXVcsWB2gF+R mv7VXW0nEl5Oj1RINV60YquF4Pc56+oedTEvmVvdcFBv6lkftfqAI1VzNY0m9st9XxIl5l3J IOltstvkmFxD8b5rEtESn7KjHhS80t7y6SDfj5/qx04/n5BfkBevKxmRMXHP4tqftnkt5978 6+vNmNkRfzc3aK5uaidbz+qZVXzNHw4qsRRnJBpqMRcVJwIAlu0o/X0DAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrALMWRmVeSWpSXmKPExsVy+t/xu7qcjmHJBjP7zSy+XPvCbLHy228W i2+fzjA7MHv8WbSZxaNvyyrGAKYoPZui/NKSVIWM/OISW6VoQwsjPUNLCz0jE0s9Q2PzWCsj UyV9O5uU1JzMstQifbsEvYyZT/+zFFyRrriz+C5zA+Mt0S5GTg4JAROJzav7WEFsIYGljBKr d4lAxKUkli5dxAhhC0v8udbF1sXIBVTTyiSx9fk7JpAEm4CuxMsPj8BsEQFziYvrboE1MAto S6y7+x2ogYNDWMBZYspvAZAwi4CqxJdVl1hAbF4BK4nF1zqg5mtKTNgyhwkiLihxcuYTFog4 t8S6WZdYIUbKSzRvnc08gZF/FpKyWUhSCxiZVjGKpJYW56bnFhvpFSfmFpfmpesl5+duYgQG 7bZjP7fsYFz56qPeIUYmDsZDjBIczEoivCxPgpOFeFMSK6tSi/Lji0pzUosPMZoC3TqRWUo0 OR8YN3kl8YZmBqaGJmaWBqaWZsZK4ryeBR2JQgLpiSWp2ampBalFMH1MHJxSDUxJl9dNdvuo kyFp9Xm21GW+fZIMV0tre+TkZNKuZl3U/xg3I61S7X1myOaII5zGK5bo8eRGPp7j/+ifyhHT HtVHKTyaod+5/+du1xR9MsPRXEHBsqm+TeH0q+rK9FXecQe2pgndzH3osShnf111yoyPWakL 3mx+/8k9aytnqaOZdmb4n9ZXfBqyTlOiuSSmKCf8z6y6ZbSsc8VOaQbvrK/p4o9/fHYs/tz8 mukAY6z19Kgpsxzd9124wKR4Y9KkiX0r1pX2NiX03gz6dCRQUnJPUXuQEx/32Yntskdz57Tm vWjd6G22I1ujsidJfxuHVPvZ47/VXzGZbaxiXvlB5TrTbNd5/x79sN434/HLZ0osxRmJhlrM RcWJADTHGwLjAgAA X-CMS-MailID: 20221024073849eucas1p1c5a416b42d8a14376bc8ff3011a560b8 X-Msg-Generator: CA X-RootMTR: 20221024073849eucas1p1c5a416b42d8a14376bc8ff3011a560b8 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20221024073849eucas1p1c5a416b42d8a14376bc8ff3011a560b8 References: Subject: [FFmpeg-devel] [PATCH v14 1/9] 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: DllBm2knY5L2 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 3edd8e2636..de2b1d1d50 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -1668,6 +1668,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 24a0433dba..357e17d82c 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 f436a2b624..b887a3788f 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 7af7fbeb13..a31244e0db 100644 --- a/libavcodec/profiles.c +++ b/libavcodec/profiles.c @@ -181,4 +181,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 41a19aa9ad..cf92b5f126 100644 --- a/libavcodec/profiles.h +++ b/libavcodec/profiles.h @@ -72,5 +72,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 f8abc803b6..86ac0f3871 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -29,7 +29,7 @@ #include "version_major.h" -#define LIBAVCODEC_VERSION_MINOR 51 +#define LIBAVCODEC_VERSION_MINOR 52 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \