From patchwork Thu Apr 27 07:26:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dawid Kozinski X-Patchwork-Id: 41337 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:dca6:b0:f3:34fa:f187 with SMTP id ky38csp298757pzb; Thu, 27 Apr 2023 00:27:07 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5AtXXyybxCpEQGUBrKaKT5/KtvBYJKMMzJhVwzJyWDZBoiYHNEqI8E31Mg6sVmumCkhI0+ X-Received: by 2002:a17:907:9704:b0:933:1134:be1e with SMTP id jg4-20020a170907970400b009331134be1emr701178ejc.53.1682580427104; Thu, 27 Apr 2023 00:27:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1682580427; cv=none; d=google.com; s=arc-20160816; b=hv7zPS65yj+R3TyBiUcqwZBg2VO/AHExR26PsQVd8XWnyCeT4VIIXvSMdc2USQ5Pcw IscpknNEPj7+TlHbkxu/WXVCeyol4xYg94Tj8U/J3oxEPG76UJMcs9g8c5nK1ZQtoAnT 8vhZdpx+v6pWV6NFFhPfDVcSYI/bv6LkYxrDaqJwvwTxgrCzMOwfcj1Fz0bIcUQHTgyw KhJPH2i/Qx67VJJeXmOgU4H4Q6Rdy0C9hnSbPe3b8D3JdNIje0L46He+x/GTobJFTzLq qLf7JHNsHRCpy/yek882gd0apL9cjmqxISB+go5s5NboRvqTBugYlIlhBw3OIVD1J+xr 1G4w== 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=0cMYBoMOr0k2AM/I4MWZIwRQQSsyLUWpS834CgWN1Zw=; b=fXyguxdyfhzAHA+rHKthhpCsivm9FyE1NGtRq+0oztMUjhu/aKdBsR3JCKi4DiAt30 HJSHMZSeh6CKL+3o413lseM+Z8epY1J6CHIBp9UWBpDADkfwe8Jtb64choHc4wCG3qfW l/cRgun5vD+FQmki5piz6VSltmMnKW1Obci7EPsq2tHA83/0ny1bdL9aJCjPv+thAhz9 9FreWqCm6IsqgRXOEsQcNNftZ69HqRY7Kneqwx0vNsnAwvt1sEN/4pqdpCt5MfXY0JH/ o8wIqCq6Tj003PcF//H/1iq363vBu4ppQGaBQdMA7MHXRBI8ozMtZu0PxgX60g8ZUz7N bcpQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b=pWQjH2YS; 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 lg1-20020a170906f88100b0094762e9cf4dsi11715958ejb.732.2023.04.27.00.27.06; Thu, 27 Apr 2023 00:27:07 -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=pWQjH2YS; 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 8321468BF5C; Thu, 27 Apr 2023 10:27:04 +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 40DDC680105 for ; Thu, 27 Apr 2023 10:26:57 +0300 (EEST) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230427072656euoutp01d9ba6e5f2b71440ff5c3ce9fe8c9d6e4~ZuflxZb8j0845308453euoutp01P for ; Thu, 27 Apr 2023 07:26:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230427072656euoutp01d9ba6e5f2b71440ff5c3ce9fe8c9d6e4~ZuflxZb8j0845308453euoutp01P DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1682580416; bh=vLfGYVw8zA2rYvvCn1AdDf0vgYcy5wwGImwCez2jVxY=; h=From:To:Cc:Subject:Date:References:From; b=pWQjH2YSmULLt1VJAieyk7UIOmIoqAwyUw8RtEqpjhTt3LHdD91Tmr9c6zdnC4O9C 6635iMN6JJ36zzTgHGm6yFXrbWttHOErUCLD2XkjN+AhKdwDiFyytNWDDQpt1Bh5NN V5394gm+02d/aTK2ibiIUwRYBx+bZwnqunfwn5+o= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20230427072656eucas1p1e81c1cefb30dd40c0155a65ca9ecf4e5~ZuflowFyl0963309633eucas1p12; Thu, 27 Apr 2023 07:26:56 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id 2F.ED.37758.0C32A446; Thu, 27 Apr 2023 08:26:56 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230427072656eucas1p1fa3a9d34519c6162dba9d2c001b3728a~ZuflVaWOn0539005390eucas1p1a; Thu, 27 Apr 2023 07:26:56 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20230427072656eusmtrp286e51cb7b8cfb3f68d92f22068f72e4c~ZuflU5c3o1728117281eusmtrp2I; Thu, 27 Apr 2023 07:26:56 +0000 (GMT) X-AuditID: cbfec7f5-7ffff7000002937e-2d-644a23c04213 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id A5.B0.10549.0C32A446; Thu, 27 Apr 2023 08:26:56 +0100 (BST) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.120.40.55]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20230427072655eusmtip11ec0239c5cc37db28404c91c180bada7~ZuflBUEI_3123731237eusmtip1X; Thu, 27 Apr 2023 07:26:55 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Thu, 27 Apr 2023 09:26:46 +0200 Message-Id: <20230427072646.861-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+NgFnrFIsWRmVeSWpSXmKPExsWy7djPc7oHlL1SDGa9Ubb4cu0Ls8XKb79Z LL59OsPswOzxZ9FmFo++LasYA5iiuGxSUnMyy1KL9O0SuDJ+LbzJWvBBtOL3pWtsDYxtgl2M nBwSAiYSy+f9Ze1i5OIQEljBKLHiUjsLSEJI4AujxL2T8hCJz4wSB07OYYbp6Nw3mw0isZxR YmPvAiinlUli2f8pTCBVbAK6Ei8/PAKzRQRMJU4272UDsZkFtCXW3f0OZgsL1En0f25hBbFZ BFQldk/6CBbnFbCU6O/fwAqxTVNiwpY5TBBxQYmTM5+wQMS5JdbNusQKMVNeonnrbGaQIyQE vrJL3Pz2iQmiyEXixOlDjBC2sMSr41vYIWwZif875wPVcADZxRKH+h0gzBqJQz/SISqsJd42 HmcECTMDnbB+lz5EhaPE2vVQJp/EjbeCEPv5JCZtm84MEeaV6GgTgjBVJPo6xSDGSUk8XQYL Pw+Jy99WsU1gVJyF5KlZSB6ZhbB1ASPzKkbx1NLi3PTUYuO81HK94sTc4tK8dL3k/NxNjMDk cPrf8a87GFe8+qh3iJGJg/EQowQHs5IIL2+le4oQb0piZVVqUX58UWlOavEhRmkOFiVxXm3b k8lCAumJJanZqakFqUUwWSYOTqkGpqZL0wxDmuap+QQqnq3hfPl9iXyhPs+8z0u/NQYt7Zy7 O9P0yPvdc47HHo455jAx6ctfEeVdquturntj0b76os0hJ4la0SaVI9azCib+tfxf582ivu2P TL+43dX4rRsc1yZqvez2ZS5aNjVxI88/w/omnleX8/Y0hks66zp92BQ172TFlgnSxxN0/DWc 8/enLZJInHg9RE7o06zI/bWftf4u7FIzMru1bcN6Dfbz1Sr2/V3nAydx3kp56MV/Ta/S94bZ r4jjrTNaJk9dc23V9tdFDvH5VyULPU+0mSj6NZxYeOG535n0xn2i3rsCuH4tSQ2Qe9mc+rKD +VFIcn1MEqOM/cO0qTJ/curWhaRaK7EUZyQaajEXFScCAJKOZ+59AwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrELMWRmVeSWpSXmKPExsVy+t/xu7oHlL1SDK4f4LP4cu0Ls8XKb79Z LL59OsPswOzxZ9FmFo++LasYA5ii9GyK8ktLUhUy8otLbJWiDS2M9AwtLfSMTCz1DI3NY62M TJX07WxSUnMyy1KL9O0S9DJ+LbzJWvBBtOL3pWtsDYxtgl2MnBwSAiYSnftms3UxcnEICSxl lLg59yILREJKYunSRYwQtrDEn2tdUEXNTBL/p/9mAkmwCehKvPzwCMwWETCXuLjuFlgDs4C2 xLq739lAbGGBGomO5U+YQWwWAVWJ3ZM+gsV5BSwl+vs3sEIs0JSYsGUOE0RcUOLkzCdQR3BL rJt1iRViprxE89bZzBMY+WchKZuFJLWAkWkVo0hqaXFuem6xoV5xYm5xaV66XnJ+7iZGYOBu O/Zz8w7Gea8+6h1iZOJgPMQowcGsJMLLW+meIsSbklhZlVqUH19UmpNafIjRFOjWicxSosn5 wNjJK4k3NDMwNTQxszQwtTQzVhLn9SzoSBQSSE8sSc1OTS1ILYLpY+LglGpgMnWezH6/4pXw GbPmf1VfPgq2xbZtMzOzd5YPTJA6EXJk5/VzjgmL625/mXfRWbW5/FW80aYOdqbZZZd9chTb f7cd1rj4Vfopz+Vrn5cnXtuTlb2/ZupWn9f3vosxTiw+s5jjs2Wsctwjo4fH1v9S/dlerbhz qmqxzIEw0RlX9W4zOM5XW62YdE163YoU/z2pGQKmyce66hP3fZQIC/+440bJTuUDPtXXjO9p f/Nu6l99dOp5dYePdjvFgpTv9awuPrp0Wm7W27nZelqbDifN26GzN4fz8+oLpdJ21oUKWzZ3 rp338Z1kuLz5tvVVl7wNuQzu/nL1vFGwY80B3TvXLjxTlNo5e7GDkvnqc9va25RYijMSDbWY i4oTAfDuXUPlAgAA X-CMS-MailID: 20230427072656eucas1p1fa3a9d34519c6162dba9d2c001b3728a X-Msg-Generator: CA X-RootMTR: 20230427072656eucas1p1fa3a9d34519c6162dba9d2c001b3728a X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230427072656eucas1p1fa3a9d34519c6162dba9d2c001b3728a References: Subject: [FFmpeg-devel] [PATCH v21 03/10] 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: 56/zvbhnx2Ea - 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 d1e825eec5..7078375926 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -2122,6 +2122,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 f8ad7c6a11..a734ad64ca 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 efdb34e29d..2ad142d8f7 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -154,6 +154,7 @@ extern const AVInputFormat ff_ea_cdata_demuxer; extern const AVInputFormat ff_eac3_demuxer; extern const FFOutputFormat ff_eac3_muxer; extern const AVInputFormat ff_epaf_demuxer; +extern const FFOutputFormat ff_evc_muxer; extern const FFOutputFormat ff_f4v_muxer; extern const AVInputFormat ff_ffmetadata_demuxer; extern const FFOutputFormat ff_ffmetadata_muxer; diff --git a/libavformat/rawenc.c b/libavformat/rawenc.c index 78fadda967..70d6322c53 100644 --- a/libavformat/rawenc.c +++ b/libavformat/rawenc.c @@ -401,6 +401,19 @@ const FFOutputFormat ff_hevc_muxer = { }; #endif +#if CONFIG_EVC_MUXER +const FFOutputFormat ff_evc_muxer = { + .p.name = "evc", + .p.long_name = NULL_IF_CONFIG_SMALL("raw EVC video"), + .p.extensions = "evc", + .p.audio_codec = AV_CODEC_ID_NONE, + .p.video_codec = AV_CODEC_ID_EVC, + .init = force_one_stream, + .write_packet = ff_raw_write_packet, + .p.flags = AVFMT_NOTIMESTAMPS, +}; +#endif + #if CONFIG_M4V_MUXER const FFOutputFormat ff_m4v_muxer = { .p.name = "m4v",