From patchwork Mon Mar 27 10:47:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dawid Kozinski X-Patchwork-Id: 40862 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:7a30:b0:df:834d:2c1a with SMTP id t48csp1220505pzh; Mon, 27 Mar 2023 03:47:56 -0700 (PDT) X-Google-Smtp-Source: AKy350ZGlkpGTHGUucrEeql7K4QyDZpLLd5RYhoOCqAiayC+QKS+Atqs2NVoL1KK/nKgwLOOwZC9 X-Received: by 2002:a17:906:6882:b0:930:6ead:f81 with SMTP id n2-20020a170906688200b009306ead0f81mr10416018ejr.71.1679914076014; Mon, 27 Mar 2023 03:47:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1679914076; cv=none; d=google.com; s=arc-20160816; b=lnTe6+t8DQ+j1xbYjADx3ZLq24AaNzwETqrG04Voy+QOQ5nJOU3a/6J9rcd1huiBdY v1XOALJVL/rwnRxwmSuY6eclS6JL6OYZKA9NXBW228AfqSEw11z+Zm+9GdQH13JWbGbF o1GCQxKX82AbDMBKYtPKkfN3UflC5FwLHd171M9DzCwIULg8yrE3PN6iy2Utnm+kNmXA 5hu+dzMmRiXU8RA73PmpReO0Ja/9JnO4EZ+RNQLW9h+lrM3wFkM08fXyqu8X1h5iJtuL EBztUvVjoxO3Njq4zO5Tci8ETlnoUZfvqTXIHI2C2JZzJ5OvzD4dPUFwLlkiNe8/8aui IkpQ== 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=jNlSKr+VYOmAY/hgGRmeILenQECtnz2xarsJvMo6j4U=; b=XBRkJHXJmMJ9qt8kN4Qf488bpie/Y1NAWGaijbBY8NIvlGuiquFhquiopVU/pCJAyv 8Q9Ee+R8DpRzFDh3TE99xduJC8G/5skm1Dd8cSBoIyabfCLNqeZuurxHPd8+4zqkoVOB C3H6NPzVOnEtJJrFKDwjSB5BfnqwoW0xQIOZ3b42mQCloextx8q3IXJzF8B0gvYHrPQp CjUZn6PYBpL6yZazlXVUd4OgDmDmQ3bkcL51HzTw21XS+gbDx2IHNAqSkl+9DVtF3RX/ PkVcZ5QH0CFQ7R5o5jFEFXWYACXz17v2Knz8752XYc8g6cKL5snvpZe1qG7nSCHF8rrS mCTQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b=pfcbShdB; 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 di19-20020a170906731300b00932f1463036si30919262ejc.283.2023.03.27.03.47.55; Mon, 27 Mar 2023 03:47:55 -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=pfcbShdB; 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 9D10F68CA6B; Mon, 27 Mar 2023 13:47:53 +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 E032668CA0B for ; Mon, 27 Mar 2023 13:47:47 +0300 (EEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20230327104747euoutp014472ed61cd3132d0423892db614f358e~QQPGbjbwC1013710137euoutp01g for ; Mon, 27 Mar 2023 10:47:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20230327104747euoutp014472ed61cd3132d0423892db614f358e~QQPGbjbwC1013710137euoutp01g DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1679914067; bh=aVDN2ck0KSVxBzBwyHLU1iN2s6AWYnFv3yMzgWuCF0Y=; h=From:To:Cc:Subject:Date:References:From; b=pfcbShdB/a3qIg9WrAl8rIP4nCe7QmY20F+SMIEbpyCL7hKju1aTwVRuhCSoJfBU9 WSHi+RNczZAvziq7D0T1BZkZl+oMvivV3ttuFN3XrYdtcVkd2SPHq5VMaTPhmyUg79 s5jjGgCXgzoVr08hv3Z1FZYvAFA8i+fIKWwzco5E= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20230327104747eucas1p2fa9b079ce7ceea0f52a743cdf9e04559~QQPGP73Y_0697906979eucas1p2e; Mon, 27 Mar 2023 10:47:47 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id 47.72.10014.35471246; Mon, 27 Mar 2023 11:47:47 +0100 (BST) Received: from eusmtrp1.samsung.com (unknown [182.198.249.138]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20230327104746eucas1p1ba5652d3167ad13429122b22d1f2191d~QQPF-rYKc1095210952eucas1p1V; Mon, 27 Mar 2023 10:47:46 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp1.samsung.com (KnoxPortal) with ESMTP id 20230327104746eusmtrp1841b35a0a534b3c54d869ee2a3c8dc7a~QQPF-JcoD1184611846eusmtrp1G; Mon, 27 Mar 2023 10:47:46 +0000 (GMT) X-AuditID: cbfec7f5-b8bff7000000271e-8a-64217453e146 Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 7F.AA.08862.25471246; Mon, 27 Mar 2023 11:47:46 +0100 (BST) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20230327104746eusmtip23a562d4124ff756c4dd3df3ec69611ae~QQPFphd3T1799817998eusmtip2u; Mon, 27 Mar 2023 10:47:46 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Mon, 27 Mar 2023 12:47:30 +0200 Message-Id: <20230327104730.1215-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+NgFnrDIsWRmVeSWpSXmKPExsWy7djP87rBJYopBnPf8Fh8ufaF2WLlt98s Ft8+nWF2YPb4s2gzi0ffllWMAUxRXDYpqTmZZalF+nYJXBkbNtxhLNgmWrH421T2BsbLAl2M nBwSAiYSa/ouM3cxcnEICaxglFg65xUbhPOFUaJv9g12COczo8Suj7NYYVr2N+2GqlrOKLF7 31+oqnYmiZ7dr5lAqtgEdCVefngEZosImEqcbN7LBmIzC2hLrLv7HcwWFqiRuHF6NpjNIqAq sX3jTGYQm1fASuL+Poh6CQFNiQlb5jBBxAUlTs58wgIR55ZYN+sSK8RMeYnmrbPBnpAQ+Msu cbBxDxNEkYvE1P4GqEHCEq+Ob2GHsGUkTk/uARrEAWQXSxzqd4AwayQO/UiHqLCWeNt4nBEk zAx0wvpd+hBhR4ktHzcyQlTzSdx4KwhxAJ/EpG3TmSHCvBIdbUIQpopEX6cYRKOUxNNlc5gh bA+JwztnMk9gVJyF5KtZSD6ZhbB2ASPzKkbx1NLi3PTUYuO81HK94sTc4tK8dL3k/NxNjMAE cfrf8a87GFe8+qh3iJGJg/EQowQHs5II72ZvxRQh3pTEyqrUovz4otKc1OJDjNIcLErivNq2 J5OFBNITS1KzU1MLUotgskwcnFINTBaBOfeC3yXGPX8ZfPRKKn/1EueFfxaenr1015H352TZ Z/4QUPK8M19o8YwpTF7akoWLZD9Jn/BoeL2gKGnyTk5mq5f3LWzaXfsUQ1qyOvd9CFFtvvPo avKfZ6VifFJXWc3UJtvP9hBm2hywbWtWrIDR1qObVt8KWRC9VzimynbS93O37px986fb5+se 5+d3IpwzbJ1Pblg3q+vxqztMYXNkj9g+cdkhYeBc5XN51+pKi4S9CU/3vmj8osN7+cDcfilF 5v2hrbxVjb5fFk83218QXHRttY/08lf/5zGs5Th5W+N72TfVX4u7bl/wKT6nHSW59LXkixiZ +H0/Jl7fekdj/onwbR+iPljku4TGf41SYinOSDTUYi4qTgQAKFWUHX8DAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrILMWRmVeSWpSXmKPExsVy+t/xe7pBJYopBm9fm1h8ufaF2WLlt98s Ft8+nWF2YPb4s2gzi0ffllWMAUxRejZF+aUlqQoZ+cUltkrRhhZGeoaWFnpGJpZ6hsbmsVZG pkr6djYpqTmZZalF+nYJehkbNtxhLNgmWrH421T2BsbLAl2MnBwSAiYS+5t2s3UxcnEICSxl lPh44RY7REJKYunSRYwQtrDEn2tdUEWtTBJnb95jAUmwCehKvPzwiAnEFhEwl7i47hZYA7OA tsS6u9+BGjg4hAWqJLafFgUJswioSmzfOJMZxOYVsJK4v28vG8R8TYkJW+YwQcQFJU7OfMIC EeeWWDfrEivESHmJ5q2zmScw8s9CUjYLSWoBI9MqRpHU0uLc9NxiQ73ixNzi0rx0veT83E2M wLDdduzn5h2M81591DvEyMTBeIhRgoNZSYR3s7diihBvSmJlVWpRfnxRaU5q8SFGU6BbJzJL iSbnAyMnryTe0MzA1NDEzNLA1NLMWEmc17OgI1FIID2xJDU7NbUgtQimj4mDU6qBycotKPPO 3Ij/LNJZckskt4f+PPz3qPwdxi2avWsnLHuq+Hj9swcSN/mW3n59f+ukC2KPN20P+e7x+pOW tk/XhcetCReeVzHzWacnprzYcPd5e+GRTboX7nFtyWAQWWMfu2jbpcndKy/ZNV3yDW35bHVH Ylv+t9Zjm8447Lzmc0c4YeWp5ksLnDL1tE2jb/9Wcd7E27TqzM53i8IeTNxaZ8EmufHM6siN GTfv/jdaGvOwaJPvA/8nX2fNONBky95vsmldzvo53oalhy+drNY4+sZMICjYVGmWzgkGxTrm 2FJXKc2c5a9Ffv4Wnn/vlrDqmTTxYutvOl8S17j9yJy47LOHHM/rVgM/haI1h/wXpigpsRRn JBpqMRcVJwIANRxii+QCAAA= X-CMS-MailID: 20230327104746eucas1p1ba5652d3167ad13429122b22d1f2191d X-Msg-Generator: CA X-RootMTR: 20230327104746eucas1p1ba5652d3167ad13429122b22d1f2191d X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20230327104746eucas1p1ba5652d3167ad13429122b22d1f2191d References: Subject: [FFmpeg-devel] [PATCH v17 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: YAjdPGK9Rp0n - Provided AVOutputFormat structure describing EVC output format (ff_evc_muxer) - Added documentation for EVC muxer --- 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 79dd864182..eee3e7c526 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -2120,6 +2120,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 048649689b..fafed6d129 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 cb5b69e9cd..203188cb27 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",