From patchwork Thu Sep 1 13:26:07 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dawid Kozinski X-Patchwork-Id: 37590 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:139a:b0:8f:1db5:eae2 with SMTP id w26csp286322pzh; Thu, 1 Sep 2022 06:26:36 -0700 (PDT) X-Google-Smtp-Source: AA6agR6WUUM80NMFQqFO7yW7/nP4MFF/Kb4YY/HPVIJ/A6cYRkB8pFn8kGSBZZjf7bb+9P+yX4vy X-Received: by 2002:a17:907:2724:b0:741:4a1f:6159 with SMTP id d4-20020a170907272400b007414a1f6159mr16426724ejl.542.1662038796465; Thu, 01 Sep 2022 06:26:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662038796; cv=none; d=google.com; s=arc-20160816; b=BDlJt5g/hiEuW3v4lWuzETc08RLNrAABje/9hjQBgIe6vzsYGQ6y/eBbDTmPou7H61 HPMfmqaCULH12iR2F1tQ30agwQD41h5mmsNyjcVEtweTYI7TEsJGoAY6Skf7Vw7p2KrJ lz3QSm4CgC8wRYczbVUNFW2CvPf/ip67qU/koaI9uec9O2cLtOoLvvoPtwRbW3URxCNc tOmsZHHClY+ASaVOVuJ+ATy+32h3sRsH2FOe1odx//vQ7AP7hl5f2iRbY6ZsOwDJHpoc KXKn+lhnOd5cHBVEKEUqWjZntg5pRc4wgiR6dLmH7+93kafg6h4M1O2YP29tWVz9/Wtz Skkw== 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=2A9ELieqcmsgStcSWd0eRyNAPiju/IW253Y0dUqm/cs=; b=VzAPbiAjRW4arDLNurZfcP4ybwbl01S+GLPceiu3WkX31vwtSiyig0auDuzZqSv03F FOkaglZeVqF9LIGQjWHi1DLrl3AgKw8P67TOenOOuXvlHZfGEHSIKc04EiX6xatFoObn S1BmZZgiwlTEU/6V20StFbP2EDg8vSri6GX6vfHQ1hu7CMlqpkFAyHqB9cFIxiBtyB2a +imf6SX8EY4L+Ua6J4RXayXgNCgGNERB9K11Ss8x6j30Z8hBk4t1SPUi+k0Y7PO8XbXp cKUPSIUa2BU+WRKPY6FV4jN9y0nR7f7pjeI4EfffnDgJsxB19IsnlYc/ultx/+xzICfQ bcgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b=aSOdynfa; 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 b5-20020a05640202c500b0043d604a5bf7si1622207edx.93.2022.09.01.06.26.25; Thu, 01 Sep 2022 06:26:36 -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=aSOdynfa; 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 2235168BA6B; Thu, 1 Sep 2022 16:26:23 +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 3C21368B45F for ; Thu, 1 Sep 2022 16:26:16 +0300 (EEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20220901132615euoutp01a8a9ddf1de41b2e9963939914fe43b38~Qv3Xx4MsK0129901299euoutp01h for ; Thu, 1 Sep 2022 13:26:15 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20220901132615euoutp01a8a9ddf1de41b2e9963939914fe43b38~Qv3Xx4MsK0129901299euoutp01h DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1662038775; bh=Euq+bg9+8missZ6TaWGDhAd2cWTaDa9UglRGZwAXNO4=; h=From:To:Cc:Subject:Date:References:From; b=aSOdynfaoQimW3iYmPoEg03T/87QOlTrbxiRxRS2Ssmaz68XuUEz/uvgkkahUjKd0 IclcfoJeNPszki1RMeyGY/WCNddLzc8pTWvaTmKRckWy9aDcdOQyY06XM0iSy3rKZ/ HlcFBKLBTNjyNJwnMUEZARpNQEguIK3j6chNRuy4= Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20220901132615eucas1p1a627cd28401a4359229325efac107e31~Qv3Xd3sHP3031630316eucas1p1W; Thu, 1 Sep 2022 13:26:15 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id 36.7D.07817.7F2B0136; Thu, 1 Sep 2022 14:26:15 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p2.samsung.com (KnoxPortal) with ESMTPA id 20220901132615eucas1p28d60d0e5b939a7324d910f8ae05bea41~Qv3XGJrBr1897418974eucas1p2T; Thu, 1 Sep 2022 13:26:15 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20220901132615eusmtrp10d0909cde5f21764ce53056ae3e91064~Qv3XFfCbP1331213312eusmtrp1Q; Thu, 1 Sep 2022 13:26:15 +0000 (GMT) X-AuditID: cbfec7f4-893ff70000011e89-f0-6310b2f790f1 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 57.1E.07473.6F2B0136; Thu, 1 Sep 2022 14:26:14 +0100 (BST) Received: from AMDN3260.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20220901132614eusmtip1eb756454169bcd1fd1f5d773f22478e2~Qv3WvipR_0761107611eusmtip10; Thu, 1 Sep 2022 13:26:14 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Thu, 1 Sep 2022 15:26:07 +0200 Message-Id: <20220901132607.1534-1-d.kozinski@samsung.com> X-Mailer: git-send-email 2.24.0.windows.2 MIME-Version: 1.0 X-Unsent: 1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrFIsWRmVeSWpSXmKPExsWy7djPc7rfNwkkG3zdLWHx5doXZouV336z WHz7dIbZgdnjz6LNLB59W1YxBjBFcdmkpOZklqUW6dslcGX0rJnEXvBKtOLm3u/sDYy/BboY OTkkBEwkJn/8ztLFyMUhJLCCUeLSzYPMEM4XRom3c2ewgFQJCXxmlHh/qASu48ZtNoii5YwS 018cY4Rw2pkkVl5fxQRSxSagK/HywyMwW0TAVOJk8142EJtZQFti3d3vYLawQIZEw6lGsBoW AVWJk4tageIcHLwCVhILHxdALNOUmD2hnRnE5hUQlDg58wkLRJxbYt2sS6wQI+UlmrfOBrta QuAvu8SSn4fYIIpcJHqnLoGyhSVeHd/CDmHLSJye3MMCsktCoFjiUL8DhFkjcehHOkSFtcTb xuOMIGFmoBPW79KHCDtKHDm2gBGimk/ixltBiAP4JCZtm84MEeaV6GgTgjBVJPo6xSAapSSe LpvDDGF7SHz+up95AqPiLCRfzULyySyEtQsYmVcxiqeWFuempxYb5aWW6xUn5haX5qXrJefn bmIEJofT/45/2cG4/NVHvUOMTByMhxglOJiVRHi/n+NJFuJNSaysSi3Kjy8qzUktPsQozcGi JM6bnLkhUUggPbEkNTs1tSC1CCbLxMEp1cDkE2i/+FySu6iF/c+Vvsb5xZpVp8TcY8/IzE/u fetyMmRL87zfhxrfXRM9k+PiZF2netHuetVmU/klnaleit9Y4hkXpnTs2hXkW6Hvksvaysje kLHZ5ZE3+44t9aEh1w7s+RTImbG0p/LdxhnrDduOeaquurCT+Ur60exdt879Lpm0x0H6X1cm 64qbGayxiXub3eo2dp9+Yls7U+rD4vP3dBNT1v9Pjl8VXMSf4/JH6d+huV4/382LXx/8ZlXt E7G1bSe3up2Y9dFyhY6zXfeC5mfilzYdtWh5xv3ocekM3cTkmPlPWJ7aPlpxlU37sNz/rXX/ n0cq6KiUCxsXvf6efEZabWO75+FtJqpvDokqsRRnJBpqMRcVJwIAWVPaQ30DAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrALMWRmVeSWpSXmKPExsVy+t/xu7rfNgkkG+zdYmPx5doXZouV336z WHz7dIbZgdnjz6LNLB59W1YxBjBF6dkU5ZeWpCpk5BeX2CpFG1oY6RlaWugZmVjqGRqbx1oZ mSrp29mkpOZklqUW6dsl6GX0rJnEXvBKtOLm3u/sDYy/BboYOTkkBEwkJt+4zdbFyMUhJLCU UeLllkZ2iISUxNKlixghbGGJP9e62EBsIYFWJolfy8JBbDYBXYmXHx4xgdgiAuYSF9fdAqtn FtCWWHf3O1i9sECaxK/pK8BmsgioSpxc1AoU5+DgFbCSWPi4AGK8psTsCe3MIDavgKDEyZlP WCDi3BLrZl1ihRgpL9G8dTbzBEb+WUjKZiFJLWBkWsUoklpanJueW2yoV5yYW1yal66XnJ+7 iREYtNuO/dy8g3Heq496hxiZOBgPMUpwMCuJ8H4/x5MsxJuSWFmVWpQfX1Sak1p8iNEU6NSJ zFKiyfnAuMkriTc0MzA1NDGzNDC1NDNWEuf1LOhIFBJITyxJzU5NLUgtgulj4uCUamDy/Pqk Je/+3je3tW+qM/ndTNhjXS0yeV7OGu8WtZ9/vqzsm2Xb+PjFVWb+aQsqH7yLFP4mbed0dsrj ZXWRe+uOJG7q/b9fVClH5ZTE5eLLW+I3un4vZ+3zFxWssfaOPJUW1qA58avo05KzM3tXpZgx vC15tcKn72G7qkilDN8vc/2ied9MuQV/ajJHHrktMsMj9p1sZUbz+lMXXZdl6IlH8L5nP77l Kcc73a1HOda9Vl/voHLxe3CNQDq7jrHGrkefSlp2tlrWy3xkMO39K8BuJasY1P1xq3n9/63z Ez8aaLw3C4iMS+Cb8Fgh+fiCjGVbPsg84sut/T+D48gn9WSWDha7OXeytodOevJabqISS3FG oqEWc1FxIgBSM9OS4wIAAA== X-CMS-MailID: 20220901132615eucas1p28d60d0e5b939a7324d910f8ae05bea41 X-Msg-Generator: CA X-RootMTR: 20220901132615eucas1p28d60d0e5b939a7324d910f8ae05bea41 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20220901132615eucas1p28d60d0e5b939a7324d910f8ae05bea41 References: Subject: [FFmpeg-devel] [PATCH v11 3/9] 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: KRpeUR0IQImQ - 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 b2f4326aae..08ab20c09e 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -2124,6 +2124,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 f67a99f839..7e3f0e6794 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -249,6 +249,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 ae4479fb7a..31508b69f0 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -148,6 +148,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",