From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTP id 61ADF43909
	for <ffmpegdev@gitmailbox.com>; Wed,  3 Aug 2022 13:14:13 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7A0E968B7AE;
	Wed,  3 Aug 2022 16:14:10 +0300 (EEST)
Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com
 [210.118.77.11])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E32E468B6B1
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 16:14:03 +0300 (EEST)
Received: from eucas1p2.samsung.com (unknown [182.198.249.207])
 by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id
 20220803131401euoutp01357939415cbdec0ad1314df56ccd5f5a~H1-Zp3B6D3191831918euoutp01v
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 13:14:01 +0000 (GMT)
DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com
 20220803131401euoutp01357939415cbdec0ad1314df56ccd5f5a~H1-Zp3B6D3191831918euoutp01v
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com;
 s=mail20170921; t=1659532441;
 bh=7PUwG4x7aSNeGXuANmQ5g+mZF75ofat1FR/LhanEKL8=;
 h=From:To:In-Reply-To:Subject:Date:References:From;
 b=o538RBLSCegz8oodwHI666fw1TtvuSGnKvDtWv+D1ThvYFZ7217jukkWoj1ojkvpC
 z1hclv8Z/VIYmIj+VVPQ0HFlzEId+K/cIPCCYYUXUyQyhYOl2FVDEja6yCqyTItQx+
 qzgEAk0+MAQ+VM814tehQVEiVbYCJQwlrzETiCG8=
Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTP id
 20220803131400eucas1p263b3ff2c62e23c145af0e1eeafc8377f~H1-ZcAHQU1358113581eucas1p2s
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 13:14:00 +0000 (GMT)
Received: from eucas1p1.samsung.com ( [182.198.249.206]) by
 eusmges2new.samsung.com (EUCPMTA) with SMTP id 02.5E.10067.8947AE26; Wed,  3
 Aug 2022 14:14:00 +0100 (BST)
Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by
 eucas1p2.samsung.com (KnoxPortal) with ESMTPA id
 20220803131400eucas1p26be43f9a898e40e1f925fc67270f678a~H1-Y-BaDE1357013570eucas1p23
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 13:14:00 +0000 (GMT)
Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by
 eusmtrp2.samsung.com (KnoxPortal) with ESMTP id
 20220803131400eusmtrp297d7e248bd44c0416345440c7325b5a6~H1-Y_bJxq0140501405eusmtrp2I
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 13:14:00 +0000 (GMT)
X-AuditID: cbfec7f4-dd7ff70000002753-f7-62ea7498167e
Received: from eusmtip2.samsung.com ( [203.254.199.222]) by
 eusmgms2.samsung.com (EUCPMTA) with SMTP id C4.FA.09038.8947AE26; Wed,  3
 Aug 2022 14:14:00 +0100 (BST)
Received: from AMDN3260 (unknown [106.210.132.171]) by eusmtip2.samsung.com
 (KnoxPortal) with ESMTPA id
 20220803131359eusmtip2807cbfefcbb00172793db500d1232cc6~H1-YqQjey1159511595eusmtip2O
 for <ffmpeg-devel@ffmpeg.org>; Wed,  3 Aug 2022 13:13:59 +0000 (GMT)
From: =?utf-8?Q?Dawid_Kozinski/Robot_SDK_=28PLT=29_/?=
 =?utf-8?Q?SRPOL/Staff_Engineer/=EC=82=BC=EC=84=B1=EC=A0=84=EC=9E=90?=
 <d.kozinski@samsung.com>
To: "'FFmpeg development discussions and patches'" <ffmpeg-devel@ffmpeg.org>
In-Reply-To: <c829e89f-a6d8-722c-d4b1-81076b429085@gmail.com>
Date: Wed, 3 Aug 2022 15:13:59 +0200
Message-ID: <004c01d8a73a$e5177090$af4651b0$@samsung.com>
MIME-Version: 1.0
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQGcviT3Su2wfi8EL65XYlO9HuPOZAEsn7e4AcSMEiSt/W+4YA==
Content-Language: pl
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrBIsWRmVeSWpSXmKPExsWy7djPc7ozSl4lGUw7oGXx7dMZZgdGjz+L
 NrMEMEZx2aSk5mSWpRbp2yVwZdycvpOt4Kd2xY6OS8wNjA+Uuhg5OSQETCS2nm9l7mLk4hAS
 WMEo8ezMZzYIZxKTxJm1MxghnIlMEg2L9rDDtPQeXcQOkVjOKLHp1DOoqjYmiacvHoA5bAIz
 GSXmfl3DCNIiIuAj0b1+PSuIzSlgKzFl1Tw2EFtYIEOib+lmZhCbRUBF4uHX72A2r4ClxLf3
 e1khbEGJkzOfsIDYzALaEssWvmaGOENB4ufTZUA1HEDznSQ+f02FKBGRuPGoBewGCYGpHBKT
 ns9igqh3kWjf180IYQtLvDq+BeodGYn/O+czgcyRECiWONTvAGHWSBz6kQ5RYS3xtvE4I0iY
 WUBTYv0ufYgKR4mtZ7QgTD6JG28FIfbzSUzaNp0ZIswr0dEmBGGqSPR1ikGMk5J4umwO8wRG
 pVlI/puF5L9ZSB6ZhbB1ASPLKkbx1NLi3PTUYqO81HK94sTc4tK8dL3k/NxNjMDEcPrf8S87
 GJe/+qh3iJGJg/EQowQHs5II7x2X50lCvCmJlVWpRfnxRaU5qcWHGKU5WJTEeZMzNyQKCaQn
 lqRmp6YWpBbBZJk4OKUamHw7f97lXfx23xudS3ntuT4mYq1VnwLSpYT4Nm9iaoyurF197tKS
 hwECOl+9z1uE8qRcYF1wZPfbNvtdAa5yIixtzVOlp1p0rlkjeSGunitNhvV+lo+tfsfFzTcV
 1AQWPXK4U6n4/k//aw3VGrFIzlfrDka2Ld2cufrpxw83WSRPnw5bnrVy1nmDrKPapc4RDq+/
 59fMk1eK/jlH8G1Y8/Kyfb9u3YvwKPU1z/OO0MtZ9tzlSofZf5MVPVvCnlxWMb6yoK196RZW
 Nod7q6u37TolK7WyVGv7mVU37h3N3fu15eqzv3/X6s+Xfr5jappw6xsxl5LKfvFzt6ecO7d/
 zwo9tYWH7e91GjutKJwfUKrEUpyRaKjFXFScCACPDo72ewMAAA==
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrPLMWRmVeSWpSXmKPExsVy+t/xe7ozSl4lGTzZw2/x7dMZZgdGjz+L
 NrMEMEbp2RTll5akKmTkF5fYKkUbWhjpGVpa6BmZWOoZGpvHWhmZKunb2aSk5mSWpRbp2yXo
 ZfSeOsZYMEGj4tGxlcwNjI3yXYycHBICJhK9RxexdzFycQgJLGWU6J20lBEiISWxdOkiKFtY
 4s+1LjaIohYmibY/zSwgDpvAdEaJkwf7mECqRAR8JLrXr2cFsYUE9jBKzJ7sC2JzCthKTFk1
 jw3EFhZIk5j85CALiM0ioCLx8Ot3ZhCbV8BS4tv7vawQtqDEyZlPwGqYBbQlnt58CmcvW/ia
 GeIiBYmfT5cB1XMA7XWS+Pw1FaJEROLGoxbGCYxCs5BMmoVk0iwkk2YhaVnAyLKKUSS1tDg3
 PbfYSK84Mbe4NC9dLzk/dxMjMCa2Hfu5ZQfjylcf9Q4xMnEwHmKU4GBWEuG94/I8SYg3JbGy
 KrUoP76oNCe1+BCjKdBrE5mlRJPzgVGZVxJvaGZgamhiZmlgamlmrCTO61nQkSgkkJ5Ykpqd
 mlqQWgTTx8TBKdXA5B2RF3i5MSKgKC/l6t6gLt0ZeYZ5thPvLuMzXMem2/d9+dzI+1Evrt5f
 3+Y26dP5hf1BK7RXn2QrzJ/4o7viacVqhd+OC79usnZe6KEdpygac+v4HNn62CvSc1YxRX25
 faf2cb2C+NKA2Pl7TmTfzLkZG998xe+NBl/z/Y6/uewbHDqSTDu0nx3RmNa0QHDTrvr1Pm+e
 nJ+rHzJxs8+y2dELl61f5PSQtUhK3u1XT+mp7Q8axZh+mPekLplw6TLf3JrLk9Q271WbXZTT
 FDDt3T7Wj5WTOr680ny16Z2v1+ZFu8R0I6+W3PlTp9mu3F/X0vXOJMv88MOkNwfWHK39tmft
 1Psyi+3E3vgF8l85/E+JpTgj0VCLuag4EQCkfK41EgMAAA==
X-CMS-MailID: 20220803131400eucas1p26be43f9a898e40e1f925fc67270f678a
X-Msg-Generator: CA
X-RootMTR: 20220801092901eucas1p1f8d764e6269c88872566d616b74a6b99
X-EPHeader: CA
CMS-TYPE: 201P
X-CMS-RootMailID: 20220801092901eucas1p1f8d764e6269c88872566d616b74a6b99
References: <CGME20220801092901eucas1p1f8d764e6269c88872566d616b74a6b99@eucas1p1.samsung.com>
 <002001d8a589$2272a170$6757e450$@samsung.com>
 <c829e89f-a6d8-722c-d4b1-81076b429085@gmail.com>
Subject: Re: [FFmpeg-devel] [PATCH 2/2] Provided support for MPEG-5 EVC
 (Essential Video Coding) codec
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/004c01d8a73a$e5177090$af4651b0$@samsung.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>



-----Original Message-----
From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of James Almer
Sent: Monday, August 1, 2022 4:05 PM
To: ffmpeg-devel@ffmpeg.org
Subject: Re: [FFmpeg-devel] [PATCH 2/2] Provided support for MPEG-5 EVC (Essential Video Coding) codec

On 8/1/2022 6:29 AM, Dawid Kozinski wrote:
> diff --git a/libavformat/movenc.c b/libavformat/movenc.c
> index 5608afde42..d0b094c30d 100644
> --- a/libavformat/movenc.c
> +++ b/libavformat/movenc.c
> @@ -1392,6 +1392,16 @@ static int mov_write_hvcc_tag(AVIOContext *pb, MOVTrack *track)
>       return update_size(pb, pos);
>   }
>   
> +static int mov_write_evcc_tag(AVIOContext *pb, MOVTrack *track)
> +{
> +    int64_t pos = avio_tell(pb);
> +
> +    avio_wb32(pb, 0);
> +    ffio_wfourcc(pb, "evcC");

Is that it? That's all this atom contains? No structure containing a 
global SPS/PPS?
Is there a spec anywhere defining this?

####################################### 
David:
----------------------------------------------------------------
It seems that we need some information on how to do it in accordance with the rules of art. 
We have currently provided a minimalist version.
#######################################
> +
> +    return update_size(pb, pos);
> +}
> +
>   /* also used by all avid codecs (dv, imx, meridien) and their variants */
>   static int mov_write_avid_tag(AVIOContext *pb, MOVTrack *track)
>   {
> @@ -1641,6 +1651,16 @@ static int mov_get_h264_codec_tag(AVFormatContext *s, MOVTrack *track)
>       return tag;
>   }
>   
> +static int mov_get_evc_codec_tag(AVFormatContext *s, MOVTrack *track)
> +{
> +    int tag = track->par->codec_tag;
> +
> +    if (!tag)
> +        tag = MKTAG('e', 'v', 'c', 'i');
> +
> +    return tag;
> +}
> +
>   static const struct {
>       enum AVPixelFormat pix_fmt;
>       uint32_t tag;
> @@ -1722,6 +1742,8 @@ static unsigned int mov_get_codec_tag(AVFormatContext *s, MOVTrack *track)
>               tag = mov_get_mpeg2_xdcam_codec_tag(s, track);
>           else if (track->par->codec_id == AV_CODEC_ID_H264)
>               tag = mov_get_h264_codec_tag(s, track);
> +        else if (track->par->codec_id == AV_CODEC_ID_EVC)
> +            tag = mov_get_evc_codec_tag(s, track);
>           else if (track->par->codec_id == AV_CODEC_ID_DNXHD)
>               tag = mov_get_dnxhd_codec_tag(s, track);
>           else if (track->par->codec_type == AVMEDIA_TYPE_VIDEO) {
> @@ -2280,6 +2302,9 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex
>           mov_write_avcc_tag(pb, track);
>           if (track->mode == MODE_IPOD)
>               mov_write_uuid_tag_ipod(pb);
> +    }
> +    else if (track->par->codec_id ==AV_CODEC_ID_EVC) {
> +        mov_write_evcc_tag(pb, track);
>       } else if (track->par->codec_id == AV_CODEC_ID_VP9) {
>           mov_write_vpcc_tag(mov->fc, pb, track);
>       } else if (track->par->codec_id == AV_CODEC_ID_AV1) {
> @@ -6030,7 +6055,8 @@ int ff_mov_write_packet(AVFormatContext *s, AVPacket *pkt)
>       if ((par->codec_id == AV_CODEC_ID_DNXHD ||
>            par->codec_id == AV_CODEC_ID_H264 ||
>            par->codec_id == AV_CODEC_ID_HEVC ||
> -         par->codec_id == AV_CODEC_ID_TRUEHD) && !trk->vos_len &&
> +         par->codec_id == AV_CODEC_ID_TRUEHD ||
> +         par->codec_id == AV_CODEC_ID_EVC) && !trk->vos_len &&

Why are you copying the first muxed packet's data (in the absence of 
extradata) into vos_data if you're seemingly doing nothing with it? I'd 
expect that's what the evcC tag should contain.

####################################### 
David:
----------------------------------------------------------------
It seems that we need some information on how to do it in accordance with the rules of art. 

I guess, that our minimalistic version is not enough and should be extended, but as I mentioned we need know-how, a piece of knowledge on how to do it, and what should be done.
#######################################

>            !TAG_IS_AVCI(trk->tag)) {
>           /* copy frame to create needed atoms */
>           trk->vos_len  = size;
> @@ -7689,6 +7715,7 @@ static const AVCodecTag codec_mp4_tags[] = {
>       { AV_CODEC_ID_H264,            MKTAG('a', 'v', 'c', '3') },
>       { AV_CODEC_ID_HEVC,            MKTAG('h', 'e', 'v', '1') },
>       { AV_CODEC_ID_HEVC,            MKTAG('h', 'v', 'c', '1') },
> +    { AV_CODEC_ID_EVC,             MKTAG('e', 'v', 'c', '1') },
>       { AV_CODEC_ID_MPEG2VIDEO,      MKTAG('m', 'p', '4', 'v') },
>       { AV_CODEC_ID_MPEG1VIDEO,      MKTAG('m', 'p', '4', 'v') },
>       { AV_CODEC_ID_MJPEG,           MKTAG('m', 'p', '4', 'v') },
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".