From patchwork Mon Oct 24 07:39:30 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dawid Kozinski X-Patchwork-Id: 38952 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp2080302pzb; Mon, 24 Oct 2022 00:39:59 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5qvuTl48fgIYN65zt7w9kOwGKl92wZ9zXtAd427JYjhL9EvGwQpwZGa4ooCwZRSUuCoDKU X-Received: by 2002:a17:907:86a2:b0:791:910e:cce4 with SMTP id qa34-20020a17090786a200b00791910ecce4mr26795173ejc.36.1666597189016; Mon, 24 Oct 2022 00:39:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666597189; cv=none; d=google.com; s=arc-20160816; b=pQxrwyjctuFkeWsvvKvb3oS0Yneg+wPES0jqarPxJOms73dUfNEynzG8f/q6LPo3iU Twe2IzrhtMjGOmODMy0Nkq0oV3wk0ts8gdsPjzS6ewAYk29cXXhxNbkgew02kS6WxEC/ 6+RjdqDzRhpagG4x4+praJt8l//G+FhT8S3XM7MoOCr68gDyLKw+rPpP1cAyJy+YxE63 fxiSDqoHZ3GMm3Ud8Np6AQOqoYx3Gx0hFMTQhuSteFOYRN0mzmWtTtMp50gyiDw+5Egj HdQPb2DjcbRoFtO/Vb/uQeK6fw7bmt4msG5L9tog5GKL8dd4nRYc95BYYnCCF86myF4f +FHQ== 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=Md0oh9KdrAFQu4RbojVfUtV5frjbnTXIk+FphK/8Pt8=; b=kri7sErCx+EcmCYV7154kdUv/HQHWSe23jIIhapAqUF1qlwND46Uyb1Rd21vc5QdSH v6Ku1EC4OUEGRqGjOCSpvl/x5/U3sLKf2ySOI2OWYFbiw3bAZp8tjMv+Fz+mU6+HwGjo cO4t/R7O9F8nTZh1l2V7pjnV0t5IXhZJO8x8aczzwILEmIyX3seX9UTX2mgqtrq+NZwq 0RYOucPreCvAJPDCT62KnijrF6Yd0c84vx9Ce6m3fLJI6ckfNvLHSQ+FOlx9n5V8m14Q z8YaTw5TQsSSzohXxobnE4E0Q7P0vuKKlu9xKl8/dlxBKrLWac1ChxLWmMVcHmmIcwXj OwFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@samsung.com header.s=mail20170921 header.b=ZR2lXxSY; 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 m4-20020a1709062b8400b0078d4b605b71si23281764ejg.338.2022.10.24.00.39.48; Mon, 24 Oct 2022 00:39:49 -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=ZR2lXxSY; 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 9627068BD97; Mon, 24 Oct 2022 10:39:46 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AFEF268BD8B for ; Mon, 24 Oct 2022 10:39:40 +0300 (EEST) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20221024073940euoutp0203e8bd99e18ddf0fe765d9cb3c860a35~g8U4pJTX91614016140euoutp02f for ; Mon, 24 Oct 2022 07:39:40 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20221024073940euoutp0203e8bd99e18ddf0fe765d9cb3c860a35~g8U4pJTX91614016140euoutp02f DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1666597180; bh=IUAlz7Sdhmp/tMAFLsktY0MvHaXURWWb6i+XXes9sy0=; h=From:To:Cc:Subject:Date:References:From; b=ZR2lXxSYjHFuFw+tcChFVu1nBwAwHQra4c/IQTrZEgOvu8hBxwZvnba45kvu12k51 8UVhYq0a3auGsEHDbmZ0kN+vhgWB23PF4Fb80SH4dkHiGNa8XgbH6Sk9iGioyxh95R WOMhol6sve6VfrYkxrg/4am61gm+IIoUIaRUEWJc= Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20221024073939eucas1p2cf0ed319af6b17afb83dc62c8e0f7200~g8U4dPekK1618216182eucas1p2k; Mon, 24 Oct 2022 07:39:39 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 16.F0.29727.B3146536; Mon, 24 Oct 2022 08:39:39 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20221024073939eucas1p13817f88990a8f466014c4deef1a112ab~g8U4IQfL_0456804568eucas1p17; Mon, 24 Oct 2022 07:39:39 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20221024073939eusmtrp20d2132f4c15c08365b7cbbc262f5844c~g8U4Hmnzg3167031670eusmtrp2E; Mon, 24 Oct 2022 07:39:39 +0000 (GMT) X-AuditID: cbfec7f2-21dff7000001741f-72-6356413b813b Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 1A.5F.07473.B3146536; Mon, 24 Oct 2022 08:39:39 +0100 (BST) Received: from AMDN5164.EU.corp.samsungelectronics.net (unknown [106.210.132.171]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20221024073939eusmtip13c7f3d887c5ad9f04a1d14efceba8518~g8U3ze-TX0509305093eusmtip1C; Mon, 24 Oct 2022 07:39:39 +0000 (GMT) From: Dawid Kozinski To: d.frankiewic@samsung.com, ffmpeg-devel@ffmpeg.org Date: Mon, 24 Oct 2022 09:39:30 +0200 Message-Id: <20221024073930.85-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+NgFnrFIsWRmVeSWpSXmKPExsWy7djPc7rWjmHJBr07zSy+XPvCbLHy228W i2+fzjA7MHv8WbSZxaNvyyrGAKYoLpuU1JzMstQifbsErozO6fkFr0QrXnQcZGxg/C3QxcjB ISFgIrFsfVkXIxeHkMAKRolzbz8yQThfGCUOnnnCCuF8ZpR4MesMYxcjJ1jHm4edUFXLGSV+ TX7BBuG0M0n0du4Fq2IT0JV4+eERE4gtImAqcbJ5LxuIzSygLbHu7ncwW1igRuLqnQMsIDaL gKrEzOXbwHp5BSwkGg52sUJs05SYsGUOE0RcUOLkzCcsEHFuiXWzLrFCzJSXaN46mxnkCAmB j+wSb3b9YYcocpG4ebgTapCwxKvjW6DiMhL/d85nggRAscShfgcIs0bi0I90iApribeNxxlB wsxAJ6zfpQ8RdpR4M3EuC0Q1n8SNt4IQB/BJTNo2nRkizCvR0SYEYapI9HWKQTRKSTxdNocZ wvaQOLPzAvsERsVZSL6aheSTWQhrFzAyr2IUTy0tzk1PLTbMSy3XK07MLS7NS9dLzs/dxAhM Dqf/Hf+0g3Huq496hxiZOBgPMUpwMCuJ8LI8CU4W4k1JrKxKLcqPLyrNSS0+xCjNwaIkzss2 QytZSCA9sSQ1OzW1ILUIJsvEwSnVwJSxPLL1+GdvmecnNuvItyVu3zTxoM1ZIevwdzm+QjyJ YZ9eGPIIt0zvn3hXYfnat4vbK4NPJzI/Ku1bHsZ/k/NIiFin5UKPaMGEI+IXXr/ij2Nw3J93 u/2MH2uhhNox4SbHBxceHFk4OaC+8OQWHkbjJdqSzD86tTTet9uUH7y32r5h91GPPdJh9Ypy dq+OZclOspJb8uHv3OZ0LnmG1ZUVbn6B8c6vuj7+0JthUe3xsc4s0XfjJr1sg4Wce9fG32JY 4NbbbRN0zMVw0/LfYfoOTcYHPy82ZGM89fX1gUY9l0P/xZIXp1f9zeTyFWmacnPfrSjprwV3 Fqekhr8++vyH3MW4nrLHOxefOcXZoMRSnJFoqMVcVJwIAEMX2Gp9AwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrILMWRmVeSWpSXmKPExsVy+t/xu7rWjmHJBi8uyVp8ufaF2WLlt98s Ft8+nWF2YPb4s2gzi0ffllWMAUxRejZF+aUlqQoZ+cUltkrRhhZGeoaWFnpGJpZ6hsbmsVZG pkr6djYpqTmZZalF+nYJehmd0/MLXolWvOg4yNjA+Fugi5GTQ0LAROLNw06mLkYuDiGBpYwS l188YYJISEksXbqIEcIWlvhzrYsNoqiVSeLXofNgCTYBXYmXHx6BNYgImEtcXHcLLM4soC2x 7u53NhBbWKBK4tXTG2A1LAKqEjOXbwOr4RWwkGg42MUKsUBTYsKWOUwQcUGJkzOfsEDEuSXW zbrECjFTXqJ562zmCYz8s5CUzUKSWsDItIpRJLW0ODc9t9hQrzgxt7g0L10vOT93EyMwbLcd +7l5B+O8Vx/1DjEycTAeYpTgYFYS4WV5EpwsxJuSWFmVWpQfX1Sak1p8iNEU6NaJzFKiyfnA yMkriTc0MzA1NDGzNDC1NDNWEuf1LOhIFBJITyxJzU5NLUgtgulj4uCUamA6NO/b1MeC9qs7 1ztmGSh+vHLWWNrx9P2stT4v+FjiVRIeBoXUHXXkVYhdfGm/P4NX4f3WB8cEdp6JfvNS0dS/ L74hOeag2janet5XYaKTz2efElXO5DvEYXSgMmfDL90/Ea7mscu1OG0+Lr7NIc9wz0oogJ+5 fma8Xnh6/T1hY+ZLmh6yzV4BU1YyvvzbPfve1+jt8xJSWx2mxp75V6w8/XzA0yu1fy3YL3K/ 4/KriOXiPpTVrvply4seUZP++4e15N5vEbqlu321y2Jrf8Nl/xp3ue9tj2yyd/gy7eqya6Wd 5/t+3duT5+oaGV/pdiz2koVnfMnKCRtlVmkuyDOp1jn42cNxWdLmHRbfGJRYijMSDbWYi4oT Ad+zOJfkAgAA X-CMS-MailID: 20221024073939eucas1p13817f88990a8f466014c4deef1a112ab X-Msg-Generator: CA X-RootMTR: 20221024073939eucas1p13817f88990a8f466014c4deef1a112ab X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20221024073939eucas1p13817f88990a8f466014c4deef1a112ab References: Subject: [FFmpeg-devel] [PATCH v14 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: 2iFAHT6CEwaa - 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 47c419a009..615d2bc3b1 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -150,6 +150,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",