From patchwork Mon Mar 8 14:05:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nuo Mi X-Patchwork-Id: 26262 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 7777344A38C for ; Mon, 8 Mar 2021 16:14:30 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5B8E468A4A3; Mon, 8 Mar 2021 16:14:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4C6D9680C9A for ; Mon, 8 Mar 2021 16:14:24 +0200 (EET) Received: by mail-pf1-f177.google.com with SMTP id 16so5728747pfn.5 for ; Mon, 08 Mar 2021 06:14:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=wN0knRAsnigwdVQAmxE8qHUV49wfDpi9ibQMlRCifbM=; b=Ry8gNKFN32gD6f1OBTv+6hBUZlcvqdZsZaIEoOw7Qkm59lhnWZVdt5Tzm9FvXXTMsx U6GUZMpiRXcn/fINyJwaqlL3Fbzj5HcbSLAdBIkDB4YNu1Ho9OxY1JYivOWNwx7TqJnU j/C1QyEk6F0iJ8fFrQY4LGMNuh1zNo+F7doRFnWKhfTOdlveo7C4DF+gZToCERPYnn0x mdGcscFgpGTweVwFss7xtuAPXoxeOOb5ozlAtnaQkvnJUQDfKUIE0MXnV8XpOxfGctae ifR3OW5C07PpZAHpmlH+EVBMSh1Qa+Kj/4hMAhnjAe9nST4Td7PCjUFmE1Bzhlp7+dsk ZUjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=wN0knRAsnigwdVQAmxE8qHUV49wfDpi9ibQMlRCifbM=; b=NCDNFVB+VgGWpslgXEyo5J7SUdCo1E/9j5TVuioms47oxK0GuinvZYElloDIelxXiU 6fIsTaarEuWkwRFUxlFfrbPvc48AdU9yATxr3ROtizaXT9nDwscWMnLWGv1Jq35ml7jW nkp+1k4TqC7WQuIwVpDRWojUch8unYzBQSpbxtW+bqhwZJkcr3gP5b3fXWKLFv8YMQgB QZwQu7TuJDMb0vyHAfbP3IvgpOfUPDzdDbd8uyK2y0ZJZ4VnZ3LkCdGvmFwYPZsPcJsx 8z1sfsMl3/AN3TCMqLcA+kfDOzdEufY25dMMQSmYrL2w+hRPHJc+gOEBp3Yv3Ne7W635 uIqA== X-Gm-Message-State: AOAM531wXuqOGgXbFLJjgSsn7GnUNsQUZfm2GbxPmvIbXiu7zHBSwKn6 91Dq9DREUSJPLyoXC0FyLdHNG0W+ot4= X-Google-Smtp-Source: ABdhPJzBH71WgSd/Kp8szyLE4Ws8dvhLfY92pFQNp9+btpaT2tw1CwpKpc+ZcKklFmBjBMOeKcZQdg== X-Received: by 2002:aa7:9a89:0:b029:1f6:26b9:bb73 with SMTP id w9-20020aa79a890000b02901f626b9bb73mr5235426pfi.78.1615212374870; Mon, 08 Mar 2021 06:06:14 -0800 (PST) Received: from smith.tendawifi.com (23.83.245.51.16clouds.com. [23.83.245.51]) by smtp.gmail.com with ESMTPSA id y20sm10427392pfo.210.2021.03.08.06.06.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 08 Mar 2021 06:06:14 -0800 (PST) From: Nuo Mi To: ffmpeg-devel@ffmpeg.org Date: Mon, 8 Mar 2021 22:05:44 +0800 Message-Id: <20210308140553.4054-1-nuomi2021@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210217015146.19724-1-nuomi2021@gmail.com> References: <20210217015146.19724-1-nuomi2021@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v7 0/9] add vvc raw demuxer, muxer, parser, metadata bsf X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Nuo Mi Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Changes since v6: Major changes: vvcparser: combine to AU instead of PU cbs_h266: Hide picture header in CodedBitstreamH266Context, user should not touch it. cbs_h266: When sh_picture_header_in_slice_header_flag is true, do not copy picture header from slice header to CodedBitstreamH266Context Update testset to vtm12.0, all clips passed. Misc: Fix typo vcc_parser_select. Remove nuh_reserved_zero_bit check in vvc raw demuxer. Other typos suggested by Mark. Mark Thompson (1): cbs_h2645: refact, use cbs_h2645_replace_ps to replace cbs_h26*_replace_*ps Nuo Mi (8): avcodec/vvc: add shared header for vvc avformat: add vvc raw demux avcodec: add cbs for h266/vvc avcodec/h2645_parse: add nal header parser for h266/vvc avcodec: add vvc parser avformat: add h266/vvc muxer avcodec/cbs_h2645: vvc, do not skip nals for nuh_layer_id > 0 avcodec: add vvc metadata bsf configure | 4 + libavcodec/Makefile | 3 + libavcodec/bitstream_filters.c | 1 + libavcodec/cbs.c | 6 + libavcodec/cbs_h2645.c | 573 ++++- libavcodec/cbs_h266.h | 784 +++++++ libavcodec/cbs_h266_syntax_template.c | 3003 +++++++++++++++++++++++++ libavcodec/cbs_internal.h | 3 +- libavcodec/cbs_sei.c | 29 + libavcodec/h2645_parse.c | 74 +- libavcodec/h266_metadata_bsf.c | 145 ++ libavcodec/parsers.c | 1 + libavcodec/vvc.h | 142 ++ libavcodec/vvc_parser.c | 571 +++++ libavformat/Makefile | 2 + libavformat/allformats.c | 2 + libavformat/rawenc.c | 25 + libavformat/vvcdec.c | 61 + 18 files changed, 5383 insertions(+), 46 deletions(-) create mode 100644 libavcodec/cbs_h266.h create mode 100644 libavcodec/cbs_h266_syntax_template.c create mode 100644 libavcodec/h266_metadata_bsf.c create mode 100644 libavcodec/vvc.h create mode 100644 libavcodec/vvc_parser.c create mode 100644 libavformat/vvcdec.c