From patchwork Wed Dec 14 11:59:13 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: 39696 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:bc95:b0:ad:ade2:bfd2 with SMTP id fx21csp249623pzb; Wed, 14 Dec 2022 03:59:55 -0800 (PST) X-Google-Smtp-Source: AA0mqf6Erh7AoPyi0EZUxl+tZzAqUtBK+iA27ieQ6O/rbHVgoW6mT2E9Qpe1MSF+jeRal57mDo0p X-Received: by 2002:a17:906:bc8b:b0:7c0:9f6f:6d8 with SMTP id lv11-20020a170906bc8b00b007c09f6f06d8mr17656842ejb.2.1671019195547; Wed, 14 Dec 2022 03:59:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1671019195; cv=none; d=google.com; s=arc-20160816; b=eO5mcxo55EIY+mQ6Wrz6eHryjsfLEOE43cVe2nNTdB4V3mEI1lPaTqzbKCrGzqagbL T0AmdS78EXPXKw57ABRy31YLuLLZkh07EZRKsZzVGLq+02lFRxQzAl5ezJ+Harg1SggW q7uuZ1GcgSh9IGsSdlnBszAG0Qjy7RgtiHLYgG3Ad1PB3l4eQ3wLEy93eftYkH4jZkp/ LhrrXB3MzfBkFukgzs6AJ+wjkG5QzK7Jzj/+bm3FeX6Ucgq4uNgfSGkwQhjU/i/fpMVa JT6rX9+zQd/FLq5rQHPV1XRmrzgNZXllj+w5AzPkYj7ygKG0FbOPy8J0guSIYgVRDiGJ hRKw== 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=xhBOynkLIbckVq0cLv341KYRTglj7O4+EPcSfDuOApo=; b=Km+Y2tsZ1UPW73Y5Cag06catl5PspOKET0nmUdo1AXKwD/XFZdoUlBI7rs9YYCmvhd OuEqj2/b0AsVYAuWWRxd0iz5Mv+rQNLU2GI7uz9Rq5+aAyj5pDcDf81EmZssPryblKRq Hro4ibkzrc3rgzFMjNqgsvFhmJ2hcDbd7nWtaIfBTk4TGB5XauYjhB2CcZGsG+RlT0Rg 6t3th+DLC5VdZDRW8KukiS4aHgqam6vkAlKW4KO/opRWKD8pX/3P6sycuMWjQ15yMf5y OsuOd2yOwTAMoMxZIyM/lxvMeAixpJ+ynrOIpd9Ly4Z5qhy1GDAZV7md6HGs53J5WNkw 9shQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b="IBm7v+u/"; 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 z18-20020a05640240d200b00461c314f79fsi13858000edb.284.2022.12.14.03.59.55; Wed, 14 Dec 2022 03:59:55 -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=@samsung.com header.s=mail20170921 header.b="IBm7v+u/"; 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 40AA768B554; Wed, 14 Dec 2022 13:59:53 +0200 (EET) 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 3B04568B554 for ; Wed, 14 Dec 2022 13:59:46 +0200 (EET) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20221214115945euoutp013385c01c50bdf2da346d89dc16e7cb64~wpxhq2pDJ1276312763euoutp01a for ; Wed, 14 Dec 2022 11:59:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20221214115945euoutp013385c01c50bdf2da346d89dc16e7cb64~wpxhq2pDJ1276312763euoutp01a DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1671019185; bh=EQdBYhVZbF8VDo7LUul3tUVaNaWS6Y9rL2nfv9M/9Vk=; h=From:To:Cc:Subject:Date:References:From; b=IBm7v+u/c81fRF4SXhC5TmESlDyFriIx8lJkAlFpWjfNMlnlE8cmaWkOnD4j62YNa taE2gO/n4INHLQz3ObAtQfZrKgLlxWSRWpTDcYm7at95SSHw1fnY4jb43jcE3ZevfE c65S47od2r1tRgwCU2Qcez52NQhRFsU/2ep22dXQ= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20221214115944eucas1p2ae0f4ee8b23907ee9e272be3f74ad030~wpxhc0LkM2862828628eucas1p2S; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id A0.08.09549.0BAB9936; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20221214115944eucas1p107567a1dfa72ce221d6ac1882c19c4e4~wpxhJpP9o2539925399eucas1p10; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20221214115944eusmtrp24383fdd69e80b00c2e097a66a52f3070~wpxhJFhhH1865518655eusmtrp2Q; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) X-AuditID: cbfec7f5-f47ff7000000254d-87-6399bab08560 Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id F2.9C.08916.0BAB9936; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20221214115944eusmtip29b0f56ca10ea01c77db516ecdf5b8497~wpxg1FRD73265632656eusmtip21; Wed, 14 Dec 2022 11:59:44 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Wed, 14 Dec 2022 12:59:13 +0100 Message-Id: <20221214115913.1122-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+NgFnrFIsWRmVeSWpSXmKPExsWy7djPc7obds1MNlj3QMfiy7UvzBYrv/1m sfj26QyzA7PHn0WbWTz6tqxiDGCK4rJJSc3JLEst0rdL4MroPzSfqeCVaMXMRzcYGxh/C3Qx cnBICJhInN2v18XIxSEksIJR4sS7WyxdjJxAzhdGiZk3FSESnxklnt6dygySAGlY2rSTBSKx nFHi0rF9UE47k8ShFQfZQKrYBHQlXn54xARiiwiYSpxs3gsWZxbQllh39zuYLSxQI3HvxE6w dSwCqhIrPh1mBLF5BawkJm5qZoXYpikxYcscJoi4oMTJmU9YIOLcEutmXWKFmCkv0bx1NjPI ERICP9klpm5/zw5R5CJxaHYLG4QtLPHq+BaouIzE/53zmSD+L5Y41O8AYdZIHPqRDlFhLfG2 8TgjSJgZ6IT1u/Qhwo4Sf77OZoGo5pO48VYQ4gA+iUnbpjNDhHklOtqEIEwVib5OMYhGKYmn y+ZAA9BD4uTaLWwTGBVnIflqFpJPZiGsXcDIvIpRPLW0ODc9tdg4L7Vcrzgxt7g0L10vOT93 EyMwOZz+d/zrDsYVrz7qHWJk4mA8xCjBwawkwquqMS1ZiDclsbIqtSg/vqg0J7X4EKM0B4uS OO+KKR3JQgLpiSWp2ampBalFMFkmDk6pBiZBhyXmt9hcZy2vL9FlyFby06r5Ocfgba3S8tOH 2zeznPgV/dD/f4aDRS6PxarJXEcTmeIDw+5emzbzp8eP6CidjVdb8tzinhbsz7TgOl7yJ3/t hV1HlzhvuM8YoaVyPkAmXuiXi2f8yxtOd+ze5KXsONF+6eiX321zPoZu4/q2oODoj2Q5xq1X ThW4v1zrGqR6snX7CR/zJ4bOz2ZoZdcnhehEOzatfNDEoHBceseGwNkVp25yae+tenKI387+ RCz/+123GvZ6e6pXrgn2Dz+bcicxUCvtkH3vDqEVzHr/N3IF5/+z37lOy/SIpnrZ2uJph0qX rL04J6jdwMG08pvFtFl6rOU5b+9XOhW/zVNiKc5INNRiLipOBACmCIgrfQMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrELMWRmVeSWpSXmKPExsVy+t/xe7obds1MNlj3Wcriy7UvzBYrv/1m sfj26QyzA7PHn0WbWTz6tqxiDGCK0rMpyi8tSVXIyC8usVWKNrQw0jO0tNAzMrHUMzQ2j7Uy MlXSt7NJSc3JLEst0rdL0MvoPzSfqeCVaMXMRzcYGxh/C3QxcnJICJhILG3aydLFyMUhJLCU UeJZ/3k2iISUxNKlixghbGGJP9e62CCKWpkkrhzoYQZJsAnoSrz88IgJxBYRMJe4uO4WWAOz gLbEurvfwQYJC1RJ9P55zwJiswioSqz4dBishlfASmLipmZWiAWaEhO2zGGCiAtKnJz5hAUi zi2xbtYlVoiZ8hLNW2czT2Dkn4WkbBaS1AJGplWMIqmlxbnpucWGesWJucWleel6yfm5mxiB gbvt2M/NOxjnvfqod4iRiYPxEKMEB7OSCK+qxrRkId6UxMqq1KL8+KLSnNTiQ4ymQLdOZJYS Tc4Hxk5eSbyhmYGpoYmZpYGppZmxkjivZ0FHopBAemJJanZqakFqEUwfEwenVAPT1nsGDSV1 lvs7jjp0zu3k3upwSmg+46XpjtI9uxUNVXYwc7etvLJ20U1Fl0lvmdwVZZK+GBUq+KgunNXg Gib8sdNBletl38Sf6g4Jkh94xZz55f3mPwtqmnVJWXf6HcXYLMXpB9vW/950c93U1EVf33uW HlmZ/djn2hKPCzZH4u38T3CsOe1w83AKc30se5F6gKD5zxMZlZecvN9O3H9T/dxTrl2Lgxn/ PXzX23ctcep8qcXrioUqHu6z7yv+qVN7Pvn216+nU3cluSXffPCByX4Xg9uUqjcnU1/9yZp5 m1U1+Y5lwYzABzNmu7rnuamrfNpkG3bVRJT7n473QpPJOkcmdmZM+nST90HVKdsVSizFGYmG WsxFxYkA36h51+UCAAA= X-CMS-MailID: 20221214115944eucas1p107567a1dfa72ce221d6ac1882c19c4e4 X-Msg-Generator: CA X-RootMTR: 20221214115944eucas1p107567a1dfa72ce221d6ac1882c19c4e4 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20221214115944eucas1p107567a1dfa72ce221d6ac1882c19c4e4 References: Subject: [FFmpeg-devel] [PATCH v15 3/9] avformat/evc_muxer: Added muxer to handle writing EVC encoded data into file or output bytestream 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: qCvcB1sJwR1Y - Provided AVOutputFormat structure describing EVC output format (ff_evc_muxer) - Added documentation for EVC muxer Signed-off-by: Dawid Kozinski --- doc/muxers.texi | 6 ++++++ libavformat/Makefile | 1 + libavformat/allformats.c | 1 + libavformat/rawenc.c | 13 +++++++++++++ 4 files changed, 21 insertions(+) diff --git a/doc/muxers.texi b/doc/muxers.texi index 4edbb22b00..244b5acf7d 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -2126,6 +2126,12 @@ DTS Coherent Acoustics (DCA) audio. Dolby Digital Plus, also known as Enhanced AC-3, audio. +@subsection evc + +MPEG-5 Essential Video Coding (EVC) / EVC / MPEG-5 Part 1 EVC video. + +Extensions: evc + @subsection g722 ITU-T G.722 audio. diff --git a/libavformat/Makefile b/libavformat/Makefile index d7f198bf39..a14a759c1f 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -251,6 +251,7 @@ OBJS-$(CONFIG_HCOM_DEMUXER) += hcom.o pcm.o OBJS-$(CONFIG_HDS_MUXER) += hdsenc.o OBJS-$(CONFIG_HEVC_DEMUXER) += hevcdec.o rawdec.o OBJS-$(CONFIG_HEVC_MUXER) += rawenc.o +OBJS-$(CONFIG_EVC_MUXER) += rawenc.o OBJS-$(CONFIG_HLS_DEMUXER) += hls.o hls_sample_encryption.o OBJS-$(CONFIG_HLS_MUXER) += hlsenc.o hlsplaylist.o avc.o OBJS-$(CONFIG_HNM_DEMUXER) += hnm.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 62262ae935..aabc9b5f99 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -153,6 +153,7 @@ extern const AVInputFormat ff_ea_cdata_demuxer; extern const AVInputFormat ff_eac3_demuxer; extern const AVOutputFormat ff_eac3_muxer; extern const AVInputFormat ff_epaf_demuxer; +extern const AVOutputFormat ff_evc_muxer; extern const AVOutputFormat ff_f4v_muxer; extern const AVInputFormat ff_ffmetadata_demuxer; extern const AVOutputFormat ff_ffmetadata_muxer; diff --git a/libavformat/rawenc.c b/libavformat/rawenc.c index 267fce252d..b7b2aff453 100644 --- a/libavformat/rawenc.c +++ b/libavformat/rawenc.c @@ -401,6 +401,19 @@ const AVOutputFormat ff_hevc_muxer = { }; #endif +#if CONFIG_EVC_MUXER +AVOutputFormat ff_evc_muxer = { + .name = "evc", + .long_name = NULL_IF_CONFIG_SMALL("raw EVC video"), + .extensions = "evc", + .audio_codec = AV_CODEC_ID_NONE, + .video_codec = AV_CODEC_ID_EVC, + .write_header = force_one_stream, + .write_packet = ff_raw_write_packet, + .flags = AVFMT_NOTIMESTAMPS, +}; +#endif + #if CONFIG_M4V_MUXER const AVOutputFormat ff_m4v_muxer = { .name = "m4v",