CN117296317A - 媒体文件处理方法及其设备 - Google Patents

媒体文件处理方法及其设备 Download PDF

Info

Publication number
CN117296317A
CN117296317A CN202280033808.2A CN202280033808A CN117296317A CN 117296317 A CN117296317 A CN 117296317A CN 202280033808 A CN202280033808 A CN 202280033808A CN 117296317 A CN117296317 A CN 117296317A
Authority
CN
China
Prior art keywords
ols
units
media file
sequence
vvc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280033808.2A
Other languages
English (en)
Inventor
亨得利·亨得利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Electronics Inc
Original Assignee
LG Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LG Electronics Inc filed Critical LG Electronics Inc
Publication of CN117296317A publication Critical patent/CN117296317A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

根据本发明的一个实施例,提供了一种媒体文件处理设备处理媒体文件的方法。该方法包括以下步骤:恢复用于第一OLS的访问单元的序列;确定第一条件和第二条件是否为真;以及基于第一条件和第二条件为真,插入与应用于第一OLS的层数一样多的EOS NAL单元,其中第一条件是关于是否在访问单元的序列之后选择与第一OLS不同的OLS,并且第二条件是关于在第一OLS的每个层中访问单元的序列是否不以EOS NAL单元结束或者不以EOB NAL单元结束。

Description

媒体文件处理方法及其设备
技术领域
本公开涉及视频/图像编译技术,并且更具体地,涉及在视频/图像编译系统中针对编译的图像信息处理媒体文件的方法和设备。
背景技术
最近,在各种领域中,对高分辨率、高质量图像/视频(例如,4K、8K或更多超高清(UHD)视频/图像)的需求不断增加。随着视频/图像分辨率或质量变得更高,相比于常规视频/图像数据,发送相对大量的信息或比特。因此,如果视频/图像数据经由诸如现有有线/无线宽带线路的介质发送或者存储在传统存储介质中,则容易增加传输和存储的成本。
此外,对虚拟现实(VR)和人工现实(AR)内容以及沉浸式媒体(例如,全息图)的兴趣和需求正在增长;并且呈现与诸如游戏图像/视频的实际视频/图像的图像/视频特性不同的图像/视频特性的图像/视频的广播也正在增长。
因此,需要高效图像压缩技术来有效地压缩并发送、存储或播放示出了如上所述的各种特性的高分辨率、高质量视频/图像。
发明内容
技术挑战
本公开提供了一种用于提高视频/图像编译效率的方法和设备。
本公开还提供了一种用于生成针对编译的图像信息的媒体文件的方法和设备。
本公开还提供了一种用于对针对编译的图像信息的媒体文件进行处理的方法和设备。
技术方案
根据此文档的实施例,提供了一种由媒体文件创建设备执行的媒体文件创建方法。该方法包括:生成用于第一输出层集(OLS)的访问单元的序列;确定第一条件和第二条件是否为真;基于第一条件和第二条件为真,插入与应用于第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元;以及生成包括第一OLS的媒体文件,其中该第一条件是在访问单元的序列之后是否选择与第一OLS不同的OLS,其中第二条件是在第一OLS的每个层中访问单元的序列是否不以EOS NAL单元或比特流结束(EOB)NAL单元结束。
根据此文档的另一个实施例,提供了一种媒体文件创建设备。该媒体文件生成设备包括媒体文件生成器,其生成用于第一输出层集(OLS)的访问单元的序列,确定第一条件和第二条件是否为真,基于第一条件和第二条件为真,插入与应用于第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元,并且生成包括第一OLS的媒体文件,其中该第一条件是在访问单元的序列之后是否选择与第一OLS不同的OLS,其中第二条件是在第一OLS的每个层中访问单元的序列是否不以EOS NAL单元或比特流结束(EOB)NAL单元结束。
根据此文档的另一个实施例,提供了一种由媒体文件处理设备执行的媒体文件处理方法。该方法包括:重构用于第一输出层集(OLS)的访问单元的序列,确定第一条件和第二条件是否为真,以及基于第一条件和第二条件为真,插入与应用于第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元,其中该第一条件是在访问单元的序列之后是否选择与第一OLS不同的OLS,其中第二条件是在第一OLS的每个层中访问单元的序列是否不以EOS NAL单元或比特流结束(EOB)NAL单元结束。
根据此文档的另一个实施例,提供了一种媒体文件处理设备。一种媒体文件处理装置包括接收器,其获取媒体文件;和媒体文件处理器,其重构用于媒体文件的第一输出层集(OLS)的访问单元的序列,确定第一条件和第二条件是否为真,并且基于第一条件和第二条件为真,插入与应用于第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元,其中该第一条件是在访问单元的序列之后是否选择与第一OLS不同的OLS,其中第二条件是在第一OLS的每个层中访问单元的序列是否不以EOS NAL单元或比特流结束(EOB)NAL单元结束。
根据本公开的又一实施方式,提供了一种计算机可读数字存储介质,其存储通过媒体文件生成方法生成的媒体文件。在所述计算机可读数字存储介质中,所述方法包括以下步骤:对各自包括子图片图像数据的子图片轨道进行配置;对参考所述子图片轨道的基本轨道进行配置;以及生成包括所述子图片轨道和所述基本轨道的媒体文件,其中,所述基本轨道的样本形成不具有孔和交叠部的矩形区域,所述孔指示未被所参考的子图片轨道的样本中的至少一个样本覆盖的区域,并且所述交叠部指示被所参考的子图片轨道覆盖两次或更多次的区域。
有益效果
根据此文档,即使仅改变最大时间ID,也能够防止插入EOS NAL单元的不必要的操作,从而改进整体编译效率。
根据此文档,能够防止将EOS NAL单元插入访问单元内的适当位置时发生的负担,从而改进整体编译效率。
附图说明
图1示意性例示了适用于本公开的实施方式的视频/图像编译系统的示例。
图2是例示可以应用本公开的实施方式的视频/图像编码设备的配置的示意图。
图3是例示可以应用本公开的实施方式的视频/图像解码设备的配置的示意图。
图4示例性例示了针对编译的视频/图像的层结构。
图5和图6示意性例示了媒体文件结构的示例。
图7例示了基于DASH的自适应流模型的整体操作的示例。
图8示例性例示了应用本公开提出的实施方式的用于生成媒体文件的方法。
图9示例性例示了用于对通过应用本公开提出的实施方式生成的媒体文件进行解码的方法。
图10示意性例示了根据本公开的通过用于生成媒体文件的设备生成媒体文件的方法。
图11示意性例示了根据本公开的用于生成媒体文件的设备,该设备执行用于生成媒体文件的方法。
图12示意性例示了根据本公开的通过用于处理媒体文件的设备对媒体文件进行处理的方法。
图13示意性例示了根据本公开的用于处理媒体文件的设备,该设备执行用于处理媒体文件的方法。
图14例示了应用本公开的内容流传输系统的结构图。
具体实施方式
可以以各种形式修改本公开,并且将在附图中描述和例示其特定实施方式。然而,实施方式并非旨在限制本公开。以下描述中使用的术语仅用于描述特定实施方式,而不旨在限制本公开。单数形式的表达包括复数形式的表达,只要其被不同地清楚地解读即可。诸如“包括”和“具有”的术语旨在指示存在后续描述中使用的特征、数字、步骤、操作、元件、组件或其组合,并因此应当理解,不排除存在或添加一个或更多个不同特征、数字、步骤、操作、元件、组件或其组合的可能性。
此外,为了方便说明不同的具体功能,本公开所描述的附图中的元件是独立绘制的,并且不意味着这些元件由独立的硬件或独立的软件实现。例如,元件中的两个或更多个元件可以被组合以形成单个元件,或者一个元件可以被分割成多个元件。在不脱离本公开的概念的情况下,元件被组合和/或分割的实施方式属于本公开。
在下文中,将参考附图详细描述本公开的实施方式。另外,在整个附图中,相同的附图标记可以用于指示相同的元件,并且针对类似元件的相同描述将被省略。
图1示意性例示了可以应用本文档的实施方式的视频/图像编译系统的示例。
参照图1,视频/图像编译系统可以包括第一装置(源装置)和第二装置(接收装置)。源装置可以通过数字存储介质或网络将编码后的视频/图像信息或数据以文件或流的形式传送至接收装置。
源装置可包括视频源、编码设备和发送器。接收装置可包括接收器、解码设备和渲染器。编码设备可被称为视频/图像编码设备,解码设备可被称为视频/图像解码设备。发送器可被包括在编码设备中。接收器可被包括在解码设备中。渲染器可包括显示器,并且显示器可被配置为单独的装置或外部组件。
视频源可通过捕获、合成或生成视频/图像的处理来获取视频/图像。视频源可包括视频/图像捕获装置,和/或视频/图像生成装置。例如,视频/图像捕获装置可包括一个或更多个照相机、包括先前捕获的视频/图像的视频/图像档案等。例如,视频/图像生成装置可包括计算机、平板计算机和智能电话,并且可以(以电子方式)生成视频/图像。例如,可通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获处理可由生成相关数据的处理代替。
编码设备可以对输入视频/图像进行编码。为了压缩和编译效率,编码设备可执行诸如预测、变换和量化的一系列过程。编码的数据(编码的视频/图像信息)可按比特流的形式输出。
发送器可通过数字存储介质或网络将以比特流的形式输出的编码的视频/图像信息或数据以文件或流的形式发送至接收装置的接收器。数字存储介质可包括诸如USB、SD、CD、DVD、蓝光、HDD、SSD等的各种存储介质。发送器可包括用于通过预定文件格式生成媒体文件的元件,并且可包括用于通过广播/通信网络传输的元件。接收器可接收/提取比特流并且将所接收的比特流发送至解码设备。
解码设备可通过执行与编码设备的操作对应的诸如反量化、逆变换和预测的一系列过程对视频/图像进行解码。
渲染器可对解码后的视频/图像进行渲染。渲染后的视频/图像可通过显示器显示。
本公开涉及视频/图像编译。例如,本公开中公开的方法/实施方式可以应用于通用视频编译(VVC)标准、基本视频编译(EVC)标准、AOMedia Video 1(AV1)标准、第二代音频视频编译标准(AVS2)或下一代视频/图像编译标准(例如,H.267或H.268等)中公开的方法。
本公开提出了视频/图像编译的各种实施方式,并且除非另外提及,否则这些实施方式可以彼此组合地执行。
在本公开中,视频可以意指根据时间推移的一系列图像。图片通常意指表示特定时间段中的一个图像的单元,并且子图片/切片/图块是编译时构成图片的一部分的单元。子图片/切片/图块可以包括一个或更多个编译树单元(CTU)。一个图片可以由一个或更多个子图片/切片/图块组成。一个图片可以由一个或更多个图块组组成。一个图块组可以包括一个或更多个图块。拼块可以表示图片中的图块内的CTU行的矩形区域。图块可以被分割成多个拼块,每个拼块由图块内的一个或更多个CTU行组成。未被分割成多个拼块的图块也可以称为拼块。拼块扫描是对图片进行分割的CTU的特定顺序排序,其中CTU在拼块中的CTU光栅扫描中连续排序,图块内的拼块在图块的拼块的光栅扫描中连续排序,并且图片中的图块在图片的图块的光栅扫描中连续排序。此外,子图片可以表示图片内的一个或更多个切片的矩形区域。也就是说,子图片可以包含共同覆盖图片的矩形区域的一个或更多个切片。图块是图片中的特定图块列和特定图块行内的CTU的矩形区域。图块列是CTU的矩形区域,其具有等于图片的高度的高度和由图片参数集中的语法元素指定的宽度。图块行是CTU的矩形区域,其具有由图片参数集中的语法元素指定的高度和等于图片的宽度的宽度。图块扫描是对图片进行分割的CTU的特定顺序排序,其中CTU在图块中的CTU光栅扫描中连续排序,而图片中的图块在图片的图块的光栅扫描中连续排序。切片包括可以专门包含于单个NAL单元中的图片的整数个拼块。切片可以由多个完整图块或仅一个图块的连续完整拼块序列组成。图块组和切片可以在本公开中互换使用。例如,在本公开中,图块组/图块组报头可以称为切片/切片报头。
像素或像元(pel)可意指构成一个图片(或图像)的最小单元。另外,“样本”可用作与像素对应的术语。样本通常可表示像素或像素值,并且可仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
单元可表示图像处理的基本单位。单元可包括图片的特定区域和与该区域有关的信息中的至少一个。一个单元可包括一个亮度块和两个色度(例如,cb、cr)块。在一些情况下,单元可与诸如块或区域的术语互换使用。在一般情况下,M×N块可包括M列和N行的样本(或样本阵列)或变换系数的集合(或阵列)。
在本公开中,“A或B”可以意指“仅A”、“仅B”或“A和B二者”。换句话说,在本公开中,“A或B”可以被解释为指示“A和/或B”。例如,在本公开中,“A、B或C”可以意指“仅A”、“仅B”、“仅C”或“A、B、C的任何组合”。
在本公开中使用的斜杠“/”或逗号可以意指“和/或”。例如,“A/B”可以意指“A和/或B”。因此,“A/B”可以意指“仅A”、“仅B”或“A和B二者”。例如,“A、B、C”可以意指“A、B或C”。
在本公开中,“A和B中的至少一个”可以意指“仅A”、“仅B”或“A和B二者”。另外,在本公开中,表述“A或B中的至少一个”或“A和/或B中的至少一个”可以被解释为与“A和B中的至少一个”相同。
另外,在本公开中,“A、B和C中的至少一个”可以意指“仅A”、“仅B”、“仅C”或“A、B和C的任何组合”。另外,“A、B或C中的至少一个”或“A、B和/或C中的至少一个”可以意指“A、B和C中的至少一个”。
另外,本公开中使用的括号可以意指“例如”。具体地,在指示“预测(帧内预测)”时,可以提出“帧内预测”作为“预测”的示例。换句话说,本公开中的“预测”可以不限于“帧内预测”,并且可提议“帧内预测”作为“预测”的示例。此外,即使当指示“预测(即,帧内预测)”时,也可以提议“帧内预测”作为“预测”的示例。
在本公开的一个附图中单独描述的技术特征可以单独实现或者可以同时实现。
创建以下附图以解释本公开的具体示例。由于附图中描述的特定装置的名称或特定信号/消息/字段的名称作为示例呈现,因此本公开的技术特征不限于以下附图中使用的具体名称。
图2是例示了可以应用本公开的实施方式的视频/图像编码设备的配置的示意图。在下文中,视频编码设备可以包括图像编码设备。
参照图2,编码设备200包括图像分割器210、预测器220、残差处理器230和熵编码器240、加法器250、滤波器260和存储器270。预测器220可包括帧间预测器221和帧内预测器222。残差处理器230可包括变换器232、量化器233、反量化器234和逆变换器235。残差处理器230还可包括减法器231。加法器250可被称为重构器或重构块生成器。根据实施方式,图像分割器210、预测器220、残差处理器230、熵编码器240、加法器250和滤波器260可由至少一个硬件组件(例如,编码器芯片组或处理器)配置。另外,存储器270可包括解码图片缓冲器(DPB),或者可由数字存储介质配置。硬件组件还可包括存储器270作为内部/外部组件。
图像分割器210可将输入到编码设备200的输入图像(或者图片或帧)分割成一个或更多个处理单元。例如,处理单元可被称为编译单元(CU)。在这种情况下,编译单元可根据四叉树二叉树三叉树(QTBTTT)结构从编译树单元(CTU)或最大编译单元(LCU)递归地分割。例如,一个编译单元可基于四叉树结构、二叉树结构和/或三元结构被分割成深度更深的多个编译单元。在这种情况下,例如,可首先应用四叉树结构,稍后可应用二叉树结构和/或三元结构。另选地,可首先应用二叉树结构。可基于不再分割的最终编译单元来执行根据本公开的编译过程。在这种情况下,根据图像特性基于编译效率等,最大编译单元可用作最终编译单元,或者如果需要,编译单元可被递归地分割成深度更深的编译单元并且具有最优大小的编译单元可用作最终编译单元。这里,编译过程可包括预测、变换和重构的过程(将稍后描述)。作为另一示例,处理器还可包括预测单元(PU)或变换单元(TU)。在这种情况下,预测单元和变换单元可从上述最终编译单元拆分或分割。预测单元可以是样本预测的单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
在一些情况下,单元可与诸如块或区域的术语互换使用。在一般情况下,M×N块可表示由M列和N行组成的样本或变换系数的集合。样本通常可表示像素或像素值,可仅表示亮度分量的像素/像素值或者仅表示色度分量的像素/像素值。样本可用作与像素或像元的一个图片(或图像)对应的术语。
在编码设备200中,从输入图像信号(原始块、原始样本阵列)减去从帧间预测器221或帧内预测器222输出的预测信号(预测块、预测样本阵列)以生成残差信号(残差块、残差样本阵列),并且所生成的残差信号被发送到变换器232。在这种情况下,如所示出的,在编码器200中从输入图像信号(原始块、原始样本阵列)减去预测信号(预测块、预测样本阵列)的部分可被称为减法器231。预测器可对要处理的块(以下,称为当前块)执行预测并且生成包括当前块的预测样本的预测块。预测器可确定基于当前块或CU确定应用帧内预测还是帧间预测。如在各个预测模式的描述中稍后描述的,预测器可生成与预测有关的各种类型的信息(例如,预测模式信息)并将所生成的信息发送到熵编码器240。关于预测的信息可在熵编码器240中编码并以比特流的形式输出。
帧内预测器222可以通过参考当前图片中的样本来预测当前块。根据预测模式,所参考的样本可位于当前块附近或者可隔开。在帧内预测中,预测模式可包括多个非定向模式和多个定向模式。例如,非定向模式可包括DC模式和平面模式。例如,根据预测方向的详细程度,定向模式可包括33个定向预测模式或65个定向预测模式。然而,这仅是示例,可根据设置使用更多或更少的定向预测模式。帧内预测器222可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
帧间预测器221可基于参考图片上运动向量所指定的参考块(参考样本阵列)来推导当前块的预测块。这里,为了减少在帧间预测模式下发送的运动信息量,可基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位预测运动信息。运动信息可包括运动向量和参考图片索引。运动信息还可包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可相同或不同。时间邻近块可被称为并置参考块、并置CU(colCU)等,并且包括时间邻近块的参考图片可被称为并置图片(colPic)。例如,帧间预测器221可基于邻近块来配置运动信息候选列表并且生成指示哪一候选用于推导当前块的运动向量和/或参考图片索引的信息。可基于各种预测模式执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测器221可使用邻近块的运动信息作为当前块的运动信息。在跳过模式下,与合并模式不同,可不发送残差信号。在运动向量预测(MVP)模式的情况下,邻近块的运动向量可用作运动向量预测器,并且可通过用信号通知运动向量差来指示当前块的运动向量。
预测器220可基于下面描述的各种预测方法来生成预测信号。例如,预测器可不仅应用帧内预测或帧间预测以预测一个块,而且同时应用帧内预测和帧间预测二者。这可被称为组合帧间和帧内预测(CIIP)。另外,预测器可基于帧内块复制(IBC)预测模式或调色板模式来预测块。IBC预测模式或调色板模式可用于游戏等的内容图像/视频编译,例如屏幕内容编译(SCC)。IBC基本上在当前图片中执行预测,但是可与帧间预测相似地执行,使得在当前图片中推导参考块。即,IBC可使用本公开中描述的至少一个帧间预测技术。调色板模式可被视为帧内编译或帧内预测的示例。当应用调色板模式时,可基于关于调色板表和调色板索引的信息用信号通知图片内的样本值。
通过预测器(包括帧间预测器221和/或帧内预测器222)生成的预测信号可用于生成重构信号或生成残差信号。变换器232可通过对残差信号应用变换技术来生成变换系数。例如,变换技术可包括离散余弦变换(DCT)、离散正弦变换(DST)、Karhunen-Loève变换(KLT)、基于图形的变换(GBT)或条件非线性变换(CNT)中的至少一个。这里,当像素之间的关系信息由图形表示时,GBT意指从图形获得的变换。CNT是指基于使用所有先前重构的像素生成的预测信号生成的变换。另外,变换处理可应用于具有相同大小的正方形像素块或者可应用于具有正方形以外的可变大小的块。
量化器233可将变换系数量化并将它们发送到熵编码器240,并且熵编码器240可对量化的信号(关于量化的变换系数的信息)进行编码并输出比特流。关于量化的变换系数的信息可被称为残差信息。量化器233可基于系数扫描顺序将块类型量化的变换系数重排为一维向量形式,并且基于一维向量形式的量化的变换系数来生成关于量化的变换系数的信息。可生成关于变换系数的信息。熵编码器240可执行例如指数Golomb、上下文自适应可变长度编译(CAVLC)、上下文自适应二进制算术编译(CABAC)等的各种编码方法。熵编码器240可对量化的变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)一起或单独地进行编码。编码后的信息(例如,编码后的视频/图像信息)可按比特流的形式以NAL(网络抽象层)为单位发送或存储。视频/图像信息还可包括关于各种参数集的信息,例如自适应参数集(APS)、图片参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)。另外,视频/图像信息还可包括一般约束信息。在本公开中,从编码设备发送/用信号通知给解码设备的信息和/或语法元素可被包括在视频/图片信息中。视频/图像信息可通过上述编码过程编码并被包括在比特流中。比特流可经由网络发送或者可被存储在数字存储介质中。网络可包括广播网络和/或通信网络,并且数字存储介质可包括诸如USB、SD、CD、DVD、蓝光、HDD、SSD等的各种存储介质。发送从熵编码器240输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)可被包括作为编码设备200的内部/外部元件,并且另选地,发送器可被包括在熵编码器240中。
从量化器233输出的量化的变换系数可用于生成预测信号。例如,可通过经由反量化器234和逆变换器235对量化的变换系数应用反量化和逆变换来重构残差信号(残差块或残差样本)。加法器250将重构的残差信号与从帧间预测器221或帧内预测器222输出的预测信号相加以生成重构信号(重构图片、重构块、重构样本阵列)。如果要处理的块不存在残差(诸如应用跳过模式的情况),则预测块可用作重构块。加法器250可被称为重构器或重构块生成器。如下所述,所生成的重构信号可用于当前图片中要处理的下一块的帧内预测并且可通过滤波用于下一图片的帧间预测。
此外,可在图片编码和/或重构期间应用与色度缩放的亮度映射(LMCS)。
滤波器260可通过对重构信号应用滤波来改进主观/客观图像质量。例如,滤波器260可通过对重构图片应用各种滤波方法来生成修改的重构图片并将修改的重构图片存储在存储器270(具体地,存储器270的DPB)中。例如,各种滤波方法可包括去块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。滤波器260可生成与滤波有关的各种类型的信息并且将所生成的信息发送到熵编码器240,如在各个滤波方法的描述中稍后描述的。与滤波相关的信息可由熵编码器240编码并以比特流的形式输出。
发送到存储器270的修改的重构图片可用作帧间预测器221中的参考图片。当通过编码设备应用帧间预测时,可避免编码设备200与解码设备之间的预测失配并且编码效率可改进。
存储器270的DPB可存储用作帧间预测器221中的参考图片的修改的重构图片。存储器270可存储推导(或编码)当前图片中的运动信息的块的运动信息和/或图片中已经重构的块的运动信息。所存储的运动信息可被发送到帧间预测器221并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器270可存储当前图片中的重构块的重构样本并且可将重构样本传送至帧内预测器222。
图3是例示了可以应用本公开的实施方式的视频/图像解码设备的配置的示意图。
参照图3,解码设备300可包括熵解码器310、残差处理器320、预测器330、加法器340、滤波器350和存储器360。预测器330可包括帧内预测器331和帧间预测器332。残差处理器320可包括反量化器321和逆变换器322。根据实施方式,熵解码器310、残差处理器320、预测器330、加法器340和滤波器350可由硬件组件(例如,解码器芯片组或处理器)配置。另外,存储器360可包括解码图片缓冲器(DPB)或者可由数字存储介质配置。硬件组件还可包括存储器360作为内部/外部组件。
当输入包括视频/图像信息的比特流时,解码设备300可重构与在图2的编码设备中处理视频/图像信息的处理对应的图像。例如,解码设备300可基于从比特流获得的块分割相关信息来推导单元/块。解码设备300可使用编码设备中应用的处理器来执行解码。因此,例如,解码的处理器可以是编译单元,并且编译单元可根据四叉树结构、二叉树结构和/或三叉树结构从编译树单元或最大编译单元分割。可从编译单元推导一个或更多个变换单元。通过解码设备300解码和输出的重构图像信号可通过再现设备再现。
解码设备300可接收从图2的编码设备以比特流的形式输出的信号,并且所接收的信号可通过熵解码器310解码。例如,熵解码器310可对比特流进行解析以推导图像重构(或图片重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可包括关于各种参数集的信息,诸如自适应参数集(APS)、图片参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)。另外,视频/图像信息还可包括一般约束信息。解码设备还可基于关于参数集的信息和/或一般约束信息将图片解码。本公开中稍后描述的用信号通知/接收的信息和/或语法元素可通过解码过程解码并从比特流获得。例如,熵解码器310基于诸如指数Golomb编译、CAVLC或CABAC的编译方法对比特流中的信息进行解码,并且输出图像重构所需的语法元素和残差的变换系数的量化值。更具体地,CABAC熵解码方法可接收与比特流中的各个语法元素对应的信元(bin),使用解码目标语法元素信息、解码目标块的解码信息或在先前阶段中解码的符号/信元的信息来确定上下文模型,并且通过根据所确定的上下文模型预测信元出现的概率对信元执行算术解码,并且生成与各个语法元素的值对应的符号。在这种情况下,CABAC熵解码方法可在确定上下文模型之后通过将解码的符号/信元的信息用于下一符号/信元的上下文模型来更新上下文模型。熵解码器310所解码的信息当中与预测相关的信息可被提供给预测器(帧间预测器332和帧内预测器331),并且在熵解码器310中执行了的熵解码的残差值(即,量化的变换系数和相关参数信息)可被输入到残差处理器320。残差处理器320可推导残差信号(残差块、残差样本、残差样本阵列)。另外,熵解码器310所解码的信息当中关于滤波的信息可被提供给滤波器350。此外,用于接收从编码设备输出的信号的接收器(未示出)还可被配置成解码设备300的内部/外部元件,或者接收器可以是熵解码器310的组件。此外,根据本公开的解码设备可被称为视频/图像/图片解码设备,并且解码设备可被分类为信息解码器(视频/图像/图片信息解码器)和样本解码器(视频/图像/图片样本解码器)。信息解码器可包括熵解码器310,并且样本解码器可包括反量化器321、逆变换器322、加法器340、滤波器350、存储器360、帧间预测器332和帧内预测器331中的至少一个。
反量化器321可将量化的变换系数反量化并输出变换系数。反量化器321可按二维块形式重排量化的变换系数。在这种情况下,可基于在编码设备中执行的系数扫描顺序来执行重排。反量化器321可以通过使用量化参数(例如,量化步长信息)对量化的变换系数执行反量化并且获得变换系数。
逆变换器322对变换系数逆变换以获得残差信号(残差块、残差样本阵列)。
预测器可对当前块执行预测并生成包括当前块的预测样本的预测块。预测器可基于从熵解码器310输出的关于预测的信息来确定对当前块应用帧内预测还是帧间预测并且可确定特定帧内/帧间预测模式。
预测器320可基于下述各种预测方法来生成预测信号。例如,预测器不仅可应用帧内预测或帧间预测以预测一个块,而且可同时应用帧内预测和帧间预测。这可被称为组合帧间和帧内预测(CIIP)。另外,预测器可基于帧内块复制(IBC)预测模式或调色板模式来预测块。IBC预测模式或调色板模式可用于游戏等的内容图像/视频编译,例如屏幕内容编译(SCC)。IBC基本上执行当前图片中的预测,但是可与帧间预测相似地执行,使得在当前图片中推导参考块。即,IBC可使用本公开中描述的至少一种帧间预测技术。调色板模式可被视为帧内编译或帧内预测的示例。当应用调色板模式时,可以基于关于调色板表和调色板索引的信息用信号通知图片内的样本值。
帧内预测器331可以通过参考当前图片中的样本来预测当前块。根据预测模式,所参考的样本可位于当前块附近或者可隔开。在帧内预测中,预测模式可包括多个非定向模式和多个定向模式。帧内预测器331可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
帧间预测器332可基于参考图片上运动向量所指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式下发送的运动信息量,可基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位预测运动信息。运动信息可包括运动向量和参考图片索引。运动信息还可包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。例如,帧间预测器332可基于邻近块来配置运动信息候选列表并且基于所接收的候选选择信息来推导当前块的运动向量和/或参考图片索引。可基于各种预测模式来执行帧间预测,并且关于预测的信息可包括指示当前块的帧间预测模式的信息。
加法器340可通过将所获得的残差信号与从预测器(包括帧间预测器332和/或帧内预测器331)输出的预测信号(预测块、预测样本阵列)相加来生成重构信号(重构图片、重构块、重构样本阵列)。如果要处理的块不存在残差(例如,当应用跳过模式时),预测块可用作重构块。
加法器340可被称为重构器或重构块生成器。所生成的重构信号可用于当前图片中要处理的下一块的帧内预测,可如下所述通过滤波输出,或者可用于下一图片的帧间预测。
此外,可在图片解码处理中应用与色度缩放的亮度映射(LMCS)。
滤波器350可通过对重构信号应用滤波来改进主观/客观图像质量。例如,滤波器350可通过对重构图片应用各种滤波方法来生成修改的重构图片并且将修改的重构图片存储在存储器360(具体地,存储器360的DPB)中。例如,各种滤波方法可包括去块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。
存储在存储器360的DPB中的(修改的)重构图片可用作帧间预测器332中的参考图片。存储器360可存储推导(或解码)当前图片中的运动信息的块的运动信息和/或图片中已经重构的块的运动信息。所存储的运动信息可被发送到帧间预测器332以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器360可存储当前图片中的重构块的重构样本并将重构样本传送至帧内预测器331。
在本公开中,在编码设备200的滤波器260、帧间预测器221和帧内预测器222中描述的实施方式可与解码设备300的滤波器350、帧间预测器332和帧内预测器331相同或分别与之对应应用。这也可适用于单元332和帧内预测器331。
图4示例性例示了编译的视频/图像的层结构。
参照图4,编译的图像/视频被划分为视频编译层(VCL)、下层系统和网络抽象层(NAL),VCL执行图像/视频的解码处理并处置解码处理,下层系统发送和存储编译的信息,网络抽象层(NAL)存在于VCL与下层系统之间并且用于执行网络适配功能。
例如,可以在VCL中生成VCL数据,其包括压缩图像数据(切片数据)、或图片参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)或包括图像解码过程额外需要的补充增强信息(SEI)消息的参数集。
例如,在NAL中,报头信息(NAL单元数据)被添加到在VCL中生成的原始字节序列有效载荷(RSRP)以生成NAL单元。在这种情况下,在VCL中生成的切片数据、参数集、SEI消息等可以称作RBSP。NAL单元报头可以包括根据包括在对应NAL单元中的RSRP数据指定的NAL单元类型信息。
例如,如图4所示,可以根据在VCL中生成的RSRP将NAL单元分类为VCL NAL单元和非VCL NAL单元。VCL NAL单元可以意指包括关于信息的信息(切片数据)的NAL单元,并且非VCL NAL单元可以意指包括对图像进行解码所需的信息(参数集或SEI消息)的NAL单元。
VCL NAL单元和非VCL NAL单元可以通过网络被发送,而报头信息根据子系统的数据标准被添加。例如,NAL单元可以被转换成诸如H.266/VVC文件格式、实时传输协议(RTP)、传输流(TS)等的预定标准的数据格式,并且通过各种网络传输。
此外,如上文所描述的,关于NAL单元,NAL单元类型可以根据被包括在对应NAL单元中的RBSP数据结构指定,并且关于NAL单元类型的信息可以存储于NAL单元报头中并用信号通知。
例如,NAL单元可以根据NAL单元是否包括关于图像的信息(切片数据)而被分类为VCL NAL单元类型和非VCL NAL单元类型。此外,可以根据被包括在VCL NAL单元中的图片的性质和类型对VCL NAL单元类型进行分类,并且可以根据参数集的类型对非VCL NAL单元进行分类。
以下是根据被包括在非VCL NAL单元类型中的参数集的类型指定的NAL单元类型的示例。
-适配参数集(APS)NAL单元:包括APS的NAL单元的类型
-解码参数集(DPS)NAL单元:包括DPS的NAL单元的类型
-视频参数集(VPS)NAL单元:包括VPS的NAL单元的类型
-序列参数集(SPS)NAL单元:包括SPS的NAL单元的类型
-图片参数集(PPS)NAL单元:包括PPS的NAL单元的类型
-图片报头(PH)NAL单元:包括PH的NAL单元的类型
上述NAL单元类型可以具有NAL单元类型的语法信息,并且语法信息可以存储在NAL单元报头中并用信号通知。例如,语法信息可以是nal_unit_type并且NAL单元类型可以指定为nal_unit_type的值。
此外,一个图片可以包括多个切片,并且切片可以包括切片报头和切片数据。在这种情况下,可以针对多个切片(切片报头和切片数据的集合)添加一个图片报头。图片报头(图片报头语法)可以包括通常可以应用于图片的信息/参数。切片报头(切片报头语法)可以包括通常可以应用于切片的信息/参数。APS(APS语法)或PPS(PPS语法)可以包括通常可以应用于一个或更多个切片或图片的信息/参数。SPS(SPS语法)可以包括通常可以应用于一个或更多个序列的信息/参数。VPS(VPS语法)可以包括通常可以应用于多个层的信息/参数。DPS(DPS语法)可以包括通常可以应用于整体图像的信息/参数。DPS可以包括与编译视频序列(CVS)的级联相关的信息/参数。
在本公开中,从编码设备编码到解码设备并且以比特流的形式用信号通知的图像/视频信息可以包括图片内分割相关信息、帧内/帧间预测信息、层间预测相关信息、残差信息和环路内滤波信息,并且可以包含包括在APS中的信息、包括在PPS中的信息、包括在SPS中的信息、包括在VPS中的信息和/或包括在DPS中的信息。此外,图像/视频信息还可以包括NAL单元报头的信息。
此外,可以基于媒体文件格式来配置上述编码后的图像/视频信息,以便于生成媒体文件。例如,编码后的图像/视频信息可以基于编码后的图像/视频信息的一个或更多个NAL单元/样本条目形成媒体文件(分段)。媒体文件可以包括样本条目和轨道。例如,媒体文件(分段)可以包括各种记录,并且每个记录包括与图像/视频相关的信息或与媒体文件格式相关的信息。此外,例如,一个或更多个NAL单元可以存储在媒体文件的配置记录(或解码器配置记录或VVC解码器配置记录)字段中。这里,字段也可以称为语法元素。
例如,作为可以应用本公开中公开的方法/实施方式的媒体文件格式,可以使用ISO基本媒体文件格式(ISOBMFF)。ISOBMFF可以基于许多编解码器封装格式(例如,VC文件格式、HEVC文件格式和/或VVC文件格式)和许多多媒体容器格式(例如,MPEG-4文件格式、3GPP文件格式(3GP)和/或DVB文件格式)来使用。此外,除了诸如音频和视频的连续媒体之外,还可以根据ISOBMFF将诸如图像的静态媒体和元数据存储在文件中。根据ISOBMFF的文件结构化可以用于包括本地媒体文件回放、远程文件的渐进式下载、用于HTTP上的动态自适应流传输的分段(DASH)、要流传输的内容的容器和分组化指令、所接收的实时媒体流的记录等的各种目的。
下文将要描述的‘box’可以是ISOBMFF的基本语法元素。ISOBMFF文件可以由一系列框(box)组成,并且另一框可以被包括在框中。例如,电影框(分组类型为‘moov’的框)可以包括用于包括媒体文件的连续媒体流的元数据,并且每个流可以被显示为文件中的轨道。元数据可以被包括在轨道框(分组类型为‘trak’的框)中,轨道的媒体内容可以被包括在媒体数据框(分组类型为‘mdat’的框)中或者直接被包括在单独的文件中。轨道的媒体内容可以由诸如音频或视频访问单元的样本序列构成。例如,ISOBMFF可以指定诸如包括基本媒体流的媒体轨道、包括媒体传输指令或表示接收到的分组流的提示轨道以及包括时间同步元数据的定时元数据的类型的轨道。
此外,ISOBMFF被设计用于存储用途,但对于流传输(例如,渐进式下载或DASH)也非常有用。ISOBMFF中定义的电影片段可以用于流传输用途。片段化ISOBMFF文件可以由例如与视频和音频相关的两个轨道表示。例如,当在接收到‘moov’框之后包括随机访问时,所有电影片段‘moof’可以与相关的媒体数据一起解码。
此外,每个轨道的元数据可以包括用于轨道的编译或封装格式和提供处理对应格式所需的初始化数据的样本描述条目的列表。此外,每个样本可以级联到轨道的样本描述条目之一。
当使用ISOBMFF时,可以通过各种机制指定样本特定元数据。样本表框(分组类型为‘stb1’的框)中的特定框可以被标准化以应对一般要求。例如,同步样本框(分组类型为‘stss’的框)可以用于列出随机访问样本。当使用样本分组机制时,可以通过共享指定为样本组描述条目的相同特性的样本组根据四字符分组类型来映射样本。ISOBMFF中可以指定各种分组类型。
图5和图6例示了媒体文件结构的示例。
媒体文件可以包括至少一个框。这里,框可以是包括媒体数据或与媒体数据相关的元数据的数据块或对象。框可以处于分层结构中,并因此可以对数据进行分类,并且媒体文件可以具有适于存储和/或发送大容量媒体数据的格式。此外,媒体文件可以具有允许用户容易地访问诸如移动至特定媒体内容点的媒体信息的结构。
媒体文件可以包括ftyp框、moov框和/或mdat框。
ftyp框(文件类型框)可以提供关于对应媒体文件的文件类型或兼容性相关信息。ftyp框可以包括关于对应媒体文件的媒体数据的配置版本信息。解码器可以参考ftyp框识别对应媒体文件。
moov框(电影框)可以是包括关于对应媒体文件的媒体数据的元数据的框。moov框可以用作所有元数据的容器。moov框可以是与元数据相关的框当中的最高层。根据实施方式,媒体文件中可以仅存在一个moov框。
mdat框(媒体数据框)可以是包含对应媒体文件的实际媒体数据的框。媒体数据可以包括音频样本和/或视频样本。mdat框可以用作包含这样的媒体样本的容器。
根据实施方式,上述moov框还可以包括mvhd框、trak框和/或mvex框作为下层框。
mvhd框(电影报头框)可以包括与包括在对应媒体文件中的媒体数据的媒体呈现相关的信息。也就是说,mvhd框可以包括诸如对应媒体呈现的媒体生成时间、改变时间、时间标准和时段的信息。
trak框(轨道框)可以提供关于对应媒体数据的轨道的信息。trak框可以包括诸如流相关信息、呈现相关信息以及关于音频轨道或视频轨道的访问相关信息的信息。根据轨道的数量,可以存在多个trak框。
trak框还可以包括tkhd框(track报头框)作为下层框。tkhd框可以包括关于由trak框指示的轨道的信息。tkhd框可以包括诸如对应轨道的生成时间、改变时间和轨道标识符的信息。
mvex框(电影扩展框)可以指示对应媒体文件可以具有稍后将描述的moof框。为了识别特定轨道的所有媒体样本,可能需要扫描moof框。
根据一个实施方式,媒体文件可以被划分为多个片段(500)。因此,媒体文件可以被片段化并存储或发送。媒体文件的媒体数据(mdat框)可以被划分为多个片段,每个片段可以包括moof框和划分后的mdat框。根据一个实施方式,可能需要ftyp框和/或moov框的信息,以使用该片段。
moof框(电影片段框)可以提供关于对应片段的媒体数据的元数据。moof框可以是与对应片段的元数据相关的框当中的最高层框。
mdat框(媒体数据框)可以包括如上所述的实际媒体数据。mdat框可以包括对应于与其对应的每个片段的媒体数据的媒体样本。
根据实施方式,上述moof框还可以包括mfhd框和/或traf框作为下层框。
mfhd框(电影片段报头框)可以包括关于划分后的片段之间的相关性的信息。mfhd框可以通过包括序列号来指示对应片段的划分后的媒体数据的顺序。此外,可以使用mfhd框来检查划分后的数据当中是否存在缺失数据。
traf框(轨道片段框)可以包括关于对应轨道片段的信息。traf框可以提供关于包括在对应片段中的划分后的轨道片段的元数据。traf框可以提供元数据以使得对应轨道片段中的媒体样本可以被解码/再现。根据轨道片段的数量,可以存在多个traf框。
根据实施方式,上述traf框还可以包括tfhd框和/或trun框作为下层框。
tfhd框(轨道片段报头框)可以包括对应轨道片段的报头信息。tfhd框可以提供诸如通过上述traf框指示的轨道片段的媒体样本的基本样本大小、时段、偏移和标识符的信息。
trun框(轨道片段运行框)可以包括与对应轨道片段相关的信息。trun框可以包括诸如每个媒体样本的时段、大小和再现时间的信息。
前述媒体文件及其片段可以被处理成分段并被发送。分段可以包括初始化分段和/或媒体分段。
所示实施方式(510)的文件除了媒体数据之外还可以包括与媒体解码器初始化相关的信息。例如,该文件可以对应于前述初始化分段。初始化分段可以包括前述ftyp框和/或moov框。
所示实施方式(520)的文件可以包括前述片段。例如,该文件可以对应于前述媒体分段。媒体分段还可以包括styp框和/或sidx框。
styp框(分段类型框)可以提供用于识别划分后的片段的媒体数据的信息。styp框可以用作用于划分后的片段的上述ftyp框。根据实施方式,styp框可以具有与ftyp框相同的格式。
sidx框(分段索引框)可以提供指示划分后的片段的索引的信息。因此,可以指示划分后的片段的顺序。
根据实施方式(530),还可以包括ssix框。ssix框(子分段索引框)可以提供指示当分段被划分为子分段时的子段的索引的信息。
媒体文件中的框可以包括如所示实施方式(550)中所示的基于框或FullBox的更多扩展信息。在本实施方式中,大小(size)字段和大大小(largesize)字段可以以字节表示对应框的长度。版本字段可以指示对应框格式的版本。类型字段可以指示对应框的类型或标识符。标志字段可以指示与对应框相关联的标志。
此外,根据本公开的视频/图像的字段(性质)可以在被包括在基于DASH的自适应流模型中的同时被转发。
图7例示了基于DASH的自适应流传输模型的整体操作的图。根据所示实施方式(700)的基于DASH的自适应流传输模型例示了HTTP服务器与DASH客户端之间的操作。这里,HTTP上的动态自适应流传输(DASH)是用于支持基于HTTP的自适应流传输的协议并且可以根据网络状况动态地支持流传输。结果,可以无中断地再现AV内容。
首先,DASH客户端可以获取MPD。MPD可以从诸如HTTP服务器的服务提供商传递。DASH客户端可以使用MPD中描述的分段访问信息来从服务器请求该分段。这里,可以在考虑网络状况的情况下执行该请求。
在获取分段之后,DASH客户端可以在媒体引擎中处理分段,并且可以在屏幕上显示该分段。DASH客户端可以在实时考虑再现时间和/或网络状态(自适应流传输)的情况下请求和获取必要分段。结果,可以无中断地再现内容。
媒体呈现描述(MPD)是包括使DASH客户端能够动态地获取分段的详细信息的文件,并且可以用XML格式来表达。
DASH客户端控制器可以在考虑网络状态的情况下生成用于请求MPD和/或分段的命令。另外,控制器可以控制所获取的信息用于诸如媒体引擎的内部块中。
MPD解析器可以实时解析所获取的MPD。因此,DASH客户端控制器可以生成用于获取所需分段的命令。
分段解析器可以实时解析所获取的分段。根据包括在分段中的信息,包括媒体引擎的内部块可以执行特定操作。
HTTP客户端可以从HTTP服务器请求所需MPD和/或分段。另外,HTTP客户端可以将从服务器获取的MPD和/或分段传递给MPD解析器或分段解析器。
媒体引擎可以使用包括在分段中的媒体数据来在屏幕上显示内容。这里,可以使用MPD的多条信息。
DASH数据模型可以具有分层结构(710)。媒体呈现可以由MPD描述。MPD可以描述形成媒体呈现的多个时段的时间序列。时段可以表示媒体内容的一个部分。
在一个部分中,多条数据可以被包括在适配集中。适配集可以是可以彼此交换的多个媒体内容组成部分的集合。适配集可以包括表示(representation)的集合。表示可以对应于媒体内容组成部分。在一个表示内,内容可以在时间上划分成多个分段,这可以用于适当的访问和传递。可以提供每个分段的URL,以便于访问每个分段。
MPD可以提供与媒体呈现相关的信息,并且时段元素、适配集元素和表述元素可以分别描述时段、适配集和表示。表示可以被划分为子表示,并且子表示元素可以描述对应子表示。
可以定义公共性质/元素,该公共性质/元素可以应用于(包括在)适配集、表示、子表示等中。在公共性质/元素当中,可以存在基本性质和/或补充性质。
基本性质可以是包括被认为对于处理媒体呈现相关数据是必要的元素的信息。补充性质可以是包括可以用于处理媒体呈现相关数据的元素的信息。在经由MPD传递时,以下实施方式中描述的描述符可以被定义在基本性质和/或补充性质中并被传递。
此外,将在下文中描述的‘样本’可以是表示图片的3个样本阵列(Y、Cb和Cr)中的一者的单个元素或与单个时间相关的所有数据。例如,当在(媒体文件格式的)轨道的上下文中使用术语‘样本’时,‘样本’可以意指与对应轨道的单个时间相关的所有数据。这里,时间可以是解码时间或合成时间。另外,例如,当在图片的上下文中使用术语‘样本’时,也就是说,当‘样本’用作如“亮度样本”的图片的术语时,‘样本’可以表示表示图片的3个样本阵列中的一者中的单个元素。
为存储VVC内容,可以如下定义三种类型的基本流:
-包含VCL NAL单元并且不包含参数集、DCI或OPINAL单元的视频基本流。这里,所有参数集、DCI和OPINAL单元能够被存储在一个或多个样本条目中。
-包含VCL NAL单元的视频和参数集基本流,可以包含参数集、DCI或OPINAL单元,并且具有其中存储参数集、DCI或OPINAL单元的一个或多个样本条目。
-包含与视频轨道中包含的基本流同步的非VCL NAL单元的非VCL基本流。这里,VVC非VCL轨道不包含样本条目中的参数集、DCI或OPI NAL单元。
同时,VVC视频流能够被定义如下。
例如,VVC样本条目可以被定义为其样本条目类型为“vvc1”或“vvi1”的样本条目。VVC轨道中的每个样本条目可以是VVC样本条目。VVC样本条目可以包括下面定义的VVC配置框。VVC配置框可以包括包含解码器配置信息的VVC解码器配置记录。
另外,可选的BitRateBox可以存在于VVC样本条目中以用信号发送VVC视频流的比特率信息。另外,当在MPEG-4中使用时,还可能存在必须插入到基本流描述符中的扩展描述符。
此外,如ISO基本媒体文件格式规范所允许的,多个样本条目可以用于显示使用不同配置或参数集的视频的部分(section)。
如果VVC子图片轨道能够在没有另一个VVC子图片轨道的情况下被消耗并且包含一致的VVC比特流,则常规VVC样本条目(“vvc1”或“vvi1”)能够被用于VVC子图片轨道。否则,“vvs1”样本条目被用于VVC子图片轨道并且可以将以下约束应用于该轨道。
-track_in_movie标志等于0。
-轨道仅包含一个样本条目。
-轨道由一个或多个VVC基本轨道经由“subp”轨道引用来被引用。
-DCI、OPI、VPS、SPS、PPS、AUD、PH、EOS、EOB和其他AU或图片级非VCL NAL单元必须不出现在样本条目和“vvs1”轨道的样本两者中。
-除非另有规定,视频样本条目的子框(例如,CleanApertureBox和PixelAspectRatioBox)不得出现在样本条目中,如果存在则被忽略。
-除非样本中包括的所有VCL NAL单元都符合同步样本要求,否则样本不会被标记为同步样本。
-用于轨道“vvs1”中样本的合成时间偏移信息不存在。
-针对“vvs1”轨道中的样本可能存在子样本信息。如果存在子样本信息,则子样本信息必须遵循针对VVC的子样本的定义。
另外,VVC轨道可以包括“subp”轨道参考以及包含VVC子图片轨道的track_ID值或VVC子图片轨道的“alte”轨道组的track_group_id值之一的条目。类型“spor”的样本组能够位于每个VVC基本轨道中。用于VVC基本轨道的专用样本条目类型能够通过轨道类型的编解码器MIME参数来指示VVC基本轨道。
另外,类型“vvs1”的样本条目可以包括VvcNALUConfigBox。如果VVC子图片轨道被包含具有subpic_id_info_flag等于1的“spor”样本组描述条目的VVC基本轨道引用,则VVC子图片轨道可以潜在地包括使用默认样本分组机制的子图片ID样本组描述。
另外,如果样本条目名称是“vvc1”或“vvi1”,则此样本项应用到的流可以是兼容的VVC流,如在VVCConfigurationBox中提供的配置(包括简档、层级和级别)上操作的VVC解码器所看到的那样。
另外,如果样本条目名称是“vvc1”,则对于DCI、VPS、SPS和PPS NAL单元的阵列,array_completeness的值可以等于1,并且对于所有其他阵列可以等于0。另外,如果样本条目名称为“vvi1”,则对于所有阵列来说array_completeness的值可能等于0。
另外,如果轨道默认不包含VVC比特流并且在检查“subp”和“vvcN”轨道参考(如果存在)之后不指示VVC比特流,则该轨道可以包含承载“vopi”样本组或针对操作点实体组的“oref”跟踪引用的轨道。例如,如果单层VVC比特流包含存储在不同轨道中的两个时间子层,则包含具有TemporalId为1的子层的轨道可能包含对包含具有TemporalId为0的子层的轨道的“oref”轨道引用。
同时,用于VVC的ISO基本媒体文件格式(ISOBMF)的操作点信息可以作为具有分组类型为“vopi”的组框或具有分组类型为“opeg”的实体组中的样本被用信号发送。可能需要操作点信息来识别针对每个操作点的样本和样本条目。
同时,操作点可以是输出层集(OLS)的时间子集,其可利用OLS索引和TemporalId的最高值来识别。每个操作点可以与定义操作点的一致性点的简档、层级和级别(即,PTL)相关。
另外,例如,操作点实体组可以被定义为提供用于操作点的轨道映射和操作点的简档级别信息。如果“opeg”实体组存在,则文件可能包含具有包括在ISO/IEC 14496-12中指定的“unif”品牌(brand)的品牌组合的文件级ExtendedTypeBox。
在聚合映射到操作点实体组中描述的操作点的轨道样本的情况下,隐式重构过程不需要移除任何更多的VCL NAL单元来获得一致的VVC比特流。属于操作点实体组的轨道可以具有针对操作点实体组中指示的group_id的类型“oref”的轨道引用,并且可以不包括“vopi”样本组。
另外,包括在操作点实体组中的所有entity_id值必须指示属于相同VVC比特流的轨道的轨道ID。如果存在,OperatingPointGroupBox被包括在文件级MetaBox的GroupsListBox中,并且可能不会包括在其他文件级级别的MetaBox中。在这里,OperatingPointGroupBox可以表示操作点实体组。
上述操作点实体组的语法可以如下表所示。
【表1】
/>
另外,操作点实体组的语法的语义可以如下表所示。
【表2】
/>
/>
/>
另外,例如,媒体文件可以包括VVC比特流实体组。VVC比特流实体组能够被定义为提供单个VVC基本流的VVC轨道。
例如,如果存在具有grouping_type为“vvcb”的EntityToGroupBox,则可以应用以下约束。
1)EntityToGroupBox必须被包括在文件级MetaBox的GroupsListBox中,并且不包括在任何其他级别MetaBox中。
2)EntityToGroupBox中包括的entity_id值表示承载一个VVC基本流的所有VVC轨道的轨道ID。
3)EntityToGroupBox中包括的第一个entity_id值表示承载“vopi”样本组的VVC轨道的轨道ID。
4)具有由EntityToGroupBox中包含的第二个或更后面的entity_id值指示的轨道ID值的VVC轨道不承载“vopi”样本组。
此外,例如,媒体文件可以包括关于图像/视频内容的解码器配置信息。也就是说,媒体文件可以包括包括解码器配置信息的VVC解码器配置记录。
如果VVC解码器配置记录被存储在样本条目中,则VVC解码器配置记录可以包括在每个样本中使用以指示包括在VVC解码器配置记录中的NAL单元的长度的长度字段的大小,以及参数集、DCI、OPI和SEI NAL单元。VVC解码器配置记录可以被外部地成帧(VVC解码器配置记录的大小在包含VVC解码器配置记录的结构中提供)。
并且,VVC解码器配置记录还可以包括版本字段。本公开中的版本可以定义VVC解码器配置记录的版本1。与VVC解码器配置记录不兼容的改变可以被指示为版本号的改变。当版本号未被识别时,读取器不需要对VVC解码器配置记录或记录所应用的流进行解码。
VVC解码器配置记录的兼容扩展可以不改变配置版本代码。读取器需要准备忽略超过读取器理解的数据定义的未被识别的数据。
如果轨道主要包含VVC比特流或通过“subp”轨道引用解析,则解码器配置记录中必须存在VvcPtlRecord,在这种情况下,用于VVC比特流的特定输出层集可以由output_layer_set_idx字段指示。另外,如果轨道的解码器配置记录中的ptl_present_flag为0,则该轨道必须具有能够引用VVC轨道或“opeg”实体组的ID的“oref”轨道引用。
当对VVC解码器配置记录中描述的流进行解码时,VvcPTLRecord、chroma_format_idc和bit_depth_minus8的语法元素的值可以对于所有引用的参数集有效。特别地,可以应用以下限制。
-简档指示general_profile_idc指示OLS符合的简档,由配置记录中的output_layer_set_idx标识。
-层级指示general_tier_flag可以指示大于或等于OLS符合的profile_tier_level()语法结构(所有参数集)中指示的最高层级的层级,由配置记录中的output_layer_set_idx标识。
-仅当OLS符合的profile_tier_level()语法结构(所有参数集)中的所有General_constraints_info()语法结构中设置该比特时,才能够设置General_constraint_info的每个比特,由配置记录中的output_layer_set_idx标识。
-级别指示general_level_idc可以指示由配置记录中的output_layer_set_idx标识的等于或大于OLS遵循的profile_tier_level()语法结构(所有参数集)的最高级别的能力的级别。
另外,以下约束可以应用于chroma_format_idc。
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在由当前样本条目描述应用的样本的VCL NAL单元引用的所有SPS中必须相同,chroma_format_idc必须与sps_chroma_format_idc相同。
-否则(如果配置记录应用的VVC流是多层比特流),则ISO/IEC 23090-3中定义的vps_ols_dpb_chroma_format[MultiLayerOlsIdx[output_layer_set_idx]]的值对于当前样本条目描述应用的所有CVS必须相同,chroma_format_idc必须与vps_ols_dpb_chroma_format[MultiLayerOlsIdx[output_layer_set_idx]]的值相同。
另外,以下约束可以应用于bit_depth_minus8。
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在由当前样本条目描述应用的样本的VCL NAL单元引用的所有SPS中必须相同,bit_depth_minus8的值必须与sps_bitdepth_minus8的值相同。
-否则(如果配置记录应用到的VVC流是多层比特流),则ISO/IEC 23090-3中定义的vps_ols_dpb_bitdepth_minus8[MultiLayerOlsIdx[output_layer_set_idx]]的值对于当前样本条目描述应用的所有CVS必须相同,bit_depth_minus8的值必须与vps_ols_dpb_bitdepth_minus8[MultiLayerOlsIdx[output_layer_set_idx]]的值相同。
另外,以下约束可以应用于picture_width。
-如果应用配置记录的VVC流是单层比特流,则如ISO/IEC 23090-3中定义的,sps_pic_width_max_in_luma_samples的值在由当前样本条目描述应用的样本的VCL NAL单元引用的所有SPS中必须相同,picture_width的值必须与sps_pic_width_max_in_luma_samples的值相同。
-否则(如果配置记录应用的VVC流是多层比特流),则ISO/IEC 23090-3中定义的vps_ols_dpb_pic_width[MultiLayerOlsIdx[output_layer_set_idx]]的值对于当前样本条目描述应用所有CVS必须相同,picture_width的值必须与vps_ols_dpb_pic_width[MultiLayerOlsIdx[output_layer_set_idx]]的值相同。
另外,以下约束可以应用于picture_height。
-如果应用配置记录的VVC流是单层比特流,则如ISO/IEC 23090-3中定义的,sps_pic_height_max_in_luma_samples的值在由当前样本条目描述应用的样本的VCL NAL单元引用的所有SPS中必须相同,picture_height的值必须与sps_pic_height_max_in_luma_samples的值相同。
-否则(如果配置记录应用的VVC流是多层比特流),则ISO/IEC 23090-3中定义的vps_ols_dpb_pic_height[MultiLayerOlsIdx[output_layer_set_idx]]的值对于当前样本条目描述应用的所有CVS必须相同,picture_height的值必须与vps_ols_dpb_pic_height[MultiLayerOlsIdx[output_layer_set_idx]]的值相同。
能够在VVC解码器配置记录中提供色度格式和比特深度以及VVC视频基本流中使用的其他重要格式信息的显式指示。如果两个序列的VUI信息中的颜色空间或比特深度指示不同,则可能需要两个不同的VVC样本条目。
另外,VVC解码器配置记录可以具有承载初始化NAL单元的阵列的集合。NAL单元类型可以限于仅表示DCI、OPI、VPS、SPS、PPS、前缀APS和前缀SEI NAL单元。ISO/IEC 23090-3中保留的NAL单元类型以及此文档将来可能定义的NAL单元类型,读取器可能需要忽略具有保留或不允许的NAL单元类型值的阵列。
同时,阵列可以按以下顺序:DCI、OPI、VPS、SPS、PPS、前缀APS和前缀SEI。
上述VVC解码器配置记录的语法可以如下表所示。
【表3】
/>
另外,用于VVC解码器配置记录的语法的语义可以如下表所示。
【表4】
/>
/>
同时,根据本公开的VVC文件格式定义以下类型的轨道。
a)VVC轨道:VVC轨道通过在样本和样本条目中包括NAL单元并且可能通过参考包括VVC比特流的其他子层的其他VVC轨道并且可能通过参考VVC子图片轨道来表示VVC比特流。当VVC轨道称为VVC子图片轨道时,VVC轨道被称为VVC基本轨道。
b)VVC非VCL轨道:承载ALF、LMCS或缩放列表参数的APS,并且其他非VCL NAL单元可以存储在VVC非VCL轨道中,它能够通过与包含VCL NAL单元的轨道分离的轨道来发送。
c)VVC子图片轨道:VVC子图片轨道可以包括以下任一者。
例如,VVC子图片轨道可以包括一个或更多个VVC子图片的序列。
例如,VVC子图片轨道可以包括形成矩形区域的一个或更多个完整切片。
VVC子图片轨道的样本可以包括以下任一者。
例如,VVC子图片轨道的样本可以包括在ISO/IEC 23090-3中指定的按解码顺序是连续的一个或更多个完整子图片。
例如,VVC子图片轨道的样本可以包括在ISO/IEC 23090-3中指定的、形成矩形区域并且按解码顺序是连续的一个或更多个完整切片。
VVC子图片或被包括在VVC子图片轨道的随机样本中的切片可以按解码顺序连续。
VVC非VCL轨道和VVC子图片轨道使得可以如下优选地在流传输应用内传递VVC视频。
例如,轨道可以分别经由其独立的DASH表示来承载,并且可以需要包括VVC子图片轨道的子集的DASH表示和包括非VCL轨道的DASH表示以用于解码和渲染轨道的子集。该方法可以消除APS和其它非VCL NAL单元的冗余传输。
同时,能够如下执行数据共享和VVC比特流重构过程。这里,该过程的输出可以是VVC比特流,其可以被称为输出比特流。
例如,如果满足以下一个或多个条件,则文件读取器可能需要调用该进程:
i)文件中存在VVC比特流(“vvcb”)实体组,并且文件读取器处理由实体组表示的VVC比特流以生成输出比特流。
ii)文件中存在操作点(“opeg”)实体组,并且文件读取器使用该实体组描述的任何操作点生成输出比特流。
iii)文件读取器提取其中ptl_present_flag为1的VVC轨道的层或子层的子集,以生成输出比特流。
iv)文件读取器处理VVC默认轨道。
v)文件读取器处理具有关联的VVC非VCL轨道的VVC轨道。
例如,该过程可以由以下步骤的序列组成。
1)如果在上面提及的条件i、ii或iii为真,则在VVC比特流的开始处确定操作点,并且可以针对任何IRAP或GDR访问单元再次确定操作点。
如果文件读取器第一次选择操作点或者选择与先前选择的操作点不同的操作点,则文件读取器可能需要通过将其包括在插入到输出比特流中的OPI NAL单元中(从使用操作点的第一访问单元(如果有的话)到在AU定界符NAL单元之后的第一NAL单元)或通过其他方式向VVC解码器指示输出层集索引和所选择的操作点的最高TemporalId值。
以下排序步骤可以应用于按照解码顺序的访问单元的序列,从为其确定操作点的访问单元开始,到比特流或访问单元的末尾。这里,能够排他地确定接下来的操作点,其可以在解码顺序中更早。
2)如果VVC比特流由多个VVC轨道表示,则文件解析器能够如下识别所选操作点所需的轨道。
i)如果“opeg”实体组的操作点包括所选择的操作点,则文件解析器可以选择属于如“opeg”实体组中指示的操作点的轨道。
ii)如果“opeg”实体组不存在(即,“vopi”样本组存在),则文件解析器能够确定“vvcb”实体组中的VVC轨道是否表示VVC比特流。“vvcb”实体组的第一entity_id可以标识包含“vopi”样本组的轨道。操作点到层和子层的映射能够从“vopi”样本组得出。包含所选择的操作点的层和子层并且因此需要解码所选择的操作点的轨道的集合能够从存在于VVC比特流的VVC轨道中的“linf”样本组得出。因为特定层或子层能够由一个或多个轨道来表示,当标识操作点所需的轨道时,可以从包括所有特定层或子层的轨道的集合中选择。
3)对输出比特流的访问单元可以按照所选操作点的解码时间顺序(如果上面的条件i、ii或iii为真)或VVC基本轨道的样本(如果在上面提及的条件iv为真)或VVC轨道所需的VVC轨道(如果上述v条件为真)被恢复。
当多个轨道包含用于访问单元的数据时,可以基于样本解码时间来执行轨道中的每个样本的对齐。
能够通过重复调用稍后描述的隐式重构过程,从所需轨道的每个样本来重构访问单元的序列。
恢复的访问单元可以按照解码时间增加的顺序放置在输出比特流中。
4)另外,如果以下两个条件都为真,则文件读取器可能需要在应用于输出比特流的操作点的每个层中包括EOS NAL单元。
-访问单元的序列选择与之前选择的操作点不同的操作点。
-访问单元的序列不以所应用的操作点的每个层中的EOS NAL单元或EOB NAL单元结束。
当VVC比特流被显示为多个VVC轨道时,一旦轨道组合成单个对齐的比特流,样本的解码时间可能需要如在ISO/IEC 23090-3中的规定那样修改访问单元顺序,从而增加解码时间。
另外,VVC比特流过程的隐式重构可以如下执行。该过程可以表示来自以下当中的具有当前解码时间的时间对齐的样本中的访问单元的恢复。
-所需的VVC轨道,
-相关的VVC非VCL轨道(如果有的话),和
-引用的VVC子图像轨道(如果有的话)。
当VCL NAL单元重构包含具有大于0的TemporalId的子层的比特流时,同一层内的所有较低子层(即,其中VCL NAL单元具有较小的TemporalId的子层)也可以被包括在所得到的比特流中。
另外,如果具有当前解码时间的样本包括具有大于所选择的操作点中包含的最大TemporalId的TemporalId的VCL NAL单元,则不能从当前解码时间恢复访问单元。
另外,当恢复访问单元时,具有相同解码时间(在ISO/IEC 23090-3中规定)的样本的图片单元可以按照nuh_layer_id值的升序放置在访问单元中。例如,如果条件应用,则可以执行以下步骤:
-如果包含样本的第一图片单元的轨道的样本被标记为属于具有对应于AUD NAL单元内的目标操作点的ols_idx和lower_ols_idx的样本组“aud”。这里,“aud”样本组中的AUD NAL单元可以被放置在AU中作为第一NAL单元。
-如果轨道中的样本被标记为属于包含ols_idx、max_tid和lower_ols_idx的样本组“eos”,则能够将与目标操作点相对应的“eos”样本组中的EOS NAL单元放置在所指示的位置处的AU。也就是说,当由样本组“aud”插入时,它能够被放置在重构的AU的eos_position-th NAL单元之后,排除AUD NAL单元。
-如果轨道中的样本被标记为属于包含ols_idx、max_tid和lower_ols_idx的样本组“eos”,则与目标操作点相对应的“eob”样本组中的EOB NAL单元可以被放置在AU中的所有NAL单元(包括EOS NAL单元)之后的AU中。
仅目标操作点处的层和子层的图片单元能够被包括在输出比特流中。
另外,当基于与输出层集索引i相关联的操作点恢复访问单元时(在“vopi”样本组的num_olss的for循环中),可以应用以下。
-当恢复访问单元时,对于设置为0到layer_count[i]-1范围内的索引j的输出层的每个层,如果num_ref_sublayers_in_layer_in_ols[i][j]大于0,则VCL NAL单元可以属于其中VCL NAL单元具有小于或等于Min(num_ref_sublayers_in_layer_in_ols[i][j]-1,max_temporal_id)的TemporalId的层的子层。这里,max_temporal_id是与操作点相对应的语法元素的值并且被包括在所得到的比特流中,并且能够相应地选择必要的轨道。
-当恢复访问单元时,对于设置为0到layer_count[i]-1范围内的索引j的输出层的每个层,如果num_ref_sublayers_in_layer_in_ols[i][j]等于0,则根据引用层的所有参考图片,仅具有ph_recovery_poc_cnt等于0的IRAP图片单元和GDR图片单元包含在所得到的比特流中,并且能够相应地选择必要的轨道。
另外,如果VVC轨道的访问单元包含未指定的NAL单元类型(在UNSPEC_28..UNSPEC_31(包括)范围内的具有nal_unit_type的NAL单元,即,如ISO/IEC 23090-3中定义的范围28至31内的具有nal_unit_type值的单元),则未指定的NAL单元类型可能会从最终恢复的比特流中丢弃。
另外,如果VVC轨道包含“subp”轨道引用,则能够按照ISO/IEC 23090-3的章节11.6.3中的规定来恢复每个图片单元。另外,如果VVC轨道包含“recr”轨道引用,则可以按照ISO/IEC 23090-3的章节11.6.6中的规定来恢复每个图片单元。可以按照nuh_layer_id的升序对目标操作点的每个层重复ISO/IEC 23090-3的章节11.6.3或11.6.6中的过程。
恢复的访问单元可以按照解码时间增加的顺序放置在VVC比特流中。
因为特定层或子层能够由一个或多个轨道来表示,所以当标识操作点所需的轨道时,可以从包括所有特定层或子层的轨道的集合中进行选择。
另外,能够如下执行从引用VVC子图片轨道的VVC轨道的样本的图片单元恢复过程。VVC轨道的样本能够按照以下顺序被解析成图片单元。
-如果AUD NAL单元在相关联的VVC非VCL轨道的样本或时间对齐样本中,则它可以被包括在图片单元中。例如,如果样本中存在AUD NAL单元,则它可能是样本中的第一NAL单元。
-如果样本是与相同样本条目相关联的样本序列的第一样本,则样本条目中包括的DCI、OPI、参数集和SEI NAL单元(如果有的话)可以包括在图片单元中。
-如果存在关联的VVC非VCL轨道并且图片单元是从样本恢复的访问单元的第一图片单元,则下一个NAL单元被包括在图片单元中。如果在EOS_NUT、EOB_NUT、SUFFIX_APS_NUT、SUFFIX_SEI_NUT、FD_NUT或具有nal_unit_type等于RSV_NVCL_27的关联的VVC非VCL轨道的时间对齐样本中至少存在一个NAL单元(具有上述NAL单元类型的NAL单元不能先于图片单元中的第一VCL NAL单元),则除了第一单元之外的上述NAL单元(排除AUD NAL单元)可以被包括在相关联的VVC非VCL轨道的时间对齐的样本中。在其他情况下,可以包括相关联的VVC非VCL轨道的时间对齐样本的所有NAL单元。
-如果样本具有nal_unit_type等于EOS_NUT、EOB_NUT、SUFFIX_APS_NUT、SUFFIX_SEI_NUT、FD_NUT或RSV_NVCL_27的一个或多个NAL单元(具有上述NAL单元类型的NAL单元不能先于单元图片中的第一VCL NAL单元),则样本的NAL单元当中除了第一单元之外的NAL单元可以被包括在图片单元中,否则,样本的所有NAL单元可以被包括在图片单元中。
-如果读取器选择操作点,则读取器可能需要从在以上所有步骤中恢复的访问单元中排除样本条目和存储在样本中的所有OPINAL单元。
-如果VVC轨道不是指代VVC子图片轨道,则VVC轨道中的样本的NAL单元可以被包括在图片单元中。
此外,如果不是这样,则能够应用以下内容。
-轨道引用可以按照ISO/IEC 23090-3的条款11.6.4的规定进行解析。
-如有必要,可以根据ISO/IEC 23090-3的条款11.6.5的规定更新参数集。
-按照“subp”轨道引用中引用的VVC子图片轨道的顺序(如果映射到样本的“spor”样本组条目的相同组条目的num_subpic_ref_idx为0)或者按照映射到样本的“spor”样本组条目中指定的顺序(如果映射到样本的“spor”样本组条目中的相同组条目的num_subpic_ref_idx大于0),以及所有DCI、OPI、VPS、SPS、PPS、AUD、PH、EOS、EOB NAL单元,图片单元能够被添加每个引用的VVC子图片轨道中的时间对齐(在解码时)解析样本的内容,除了其中sn_subpic_flag为1的可扩展嵌套的SEI NAL消息之外。
另外,如果所引用的VVC子图片轨道与VVC非VCL轨道相关联,则VVC子图片轨道的解析样本可以包括以下的NAL单元。
-如果在具有nal_unit_type等于RSV_NVCL_27的EOS_NUT、EOB_NUT、SUFFIX_APS_NUT、SUFFIX_SEI_NUT、FD_NUT或关联的VVC非VCL轨道的时间对齐的样本中存在至少一个NAL单元(具有上述的NAL单元类型的NAL单元不能先于图片单元中的第一VCL NAL单元),上述NAL单元(排除AUD NAL单元),排除关联的VVC非VCL轨道的时间对齐的样本中的第一单元。
-否则,相关联的VVC非VCL轨道的时间对齐的样本的所有NAL单元。
-来自引用的VVC子图片轨道样本的NAL单元。
-关联的VVC非VCL轨道的时间对齐的样本中的剩余NAL单元(如果有的话)。
-样本中具有EOS_NUT、EOB_NUT、SUFFIX_APS_NUT、SUFFIX_SEI_NUT、FD_NUT或RSV_NVCL_27的nal_unit_type的所有NAL单元。
-如果存在关联的VVC非VCL轨道并且图片单元是从样本恢复的访问单元的最后的图片单元,则具有nal_unit_type为EOS_NUT、EOB_NUT、SUFFIX_APS_NUT、SUFFIX_SEI_NUT、FD_NUT或RSV_NVCL_27的关联的VVC非VCL轨道的时间对齐的样本的所有NAL单元。
-在UNSPEC_28..UNSPEC_31范围(包括)内的具有nal_unit_type的样本中的所有NAL单元或类似NAL单元的结构都可以被删除。
同时,本文档中公开的样本组可以包括以下样本组。
例如,可以定义流访问点样本组。ISO/IEC 14496-12中规定的流访问点(SAP)样本组“sap”能够被用于提供有关所有SAP的信息。
例如,如果layer_id_method_idc为0,则SAP能够被解释如下。
-如果样本条目类型为“vvc1”或“vvi1”,并且轨道不包含具有TemporalId为0的子层,则SAP能够指定对轨道中所有子层的访问。
-否则,SAP能够指定对轨道中任何层的访问。
另外,例如,VVC比特流的GDR图片通常可以在“sap”样本组中显示为SAP类型4。
此外,例如,如果VVC轨道中的样本引用具有pps_mixed_nalu_types_in_pic_flag等于1的PPS,对于范围从0到sps_num_subpics_minus1的每个子图片索引i,sps_subpic_treatment_as_pic_flag[i]为1,在相同的CLVS中或在继当前样本之后存在具有相同的子图片索引i的至少一个IRAP子图片,则可以应用以下。
-样本可以标记为类型4的SAP样本。
-可以将样本映射到具有针对解码过程修改的roll_distance值的“roll”样本组描述条目,以在IRAP子图片存在之前省略对具有特定子图片索引的子图片的解码。
如果使用SAP样本组,则可能需要在承载相同VVC比特流的所有轨道上进行使用。
另外,例如,可以定义随机访问恢复点样本组。ISO/IEC 14496-12中规定的随机访问恢复点样本组“roll”能够被用于提供有关逐步解码刷新的恢复点的信息。当“roll”样本组与VVC轨道一起使用时,grouping_type_parameter的语法和语义可以被指定为与用于ISO/IEC 14496-12中的“sap”样本组相同。另外,当映射到“roll”样本组的样本的目标层的图片是GDR图片时,能够使用等于0和1的layer_id_method_idc。例如,如果layer_id_method_idc等于0,则“roll”样本组能够指定轨道中所有层的行为。另外,例如,layer_id_method_idc等于1的语义可以在ISO/IEC 14496-12的章节9.5.7中公开。例如,当映射到“roll”样本组的样本的目标层中的所有图片都不是GDR图片时,能够使用等于2和3的layer_id_method_idc,以下能够被应用于不是GDR图片的目标层的图片。
-所引用的PPS具有等于1的pps_mixed_nalu_types_in_pic_flag。
-对于0到sps_num_subpics_minus1范围内的每个子图片索引i,以下二者都能够为真:sps_subpic_treatment_as_pic_flag[i]为1,存在至少一个IRAP子图片,其跟随相同CLVS中的与当前样本相同的子图片索引i之后或者具有相同CLVS中的与当前样本相同的子图片索引i。
此外,例如,如果layer_id_method_idc等于2,则“roll”样本组能够指定轨道中所有层的行为。另外,例如,layer_id_method_idc等于3的语义可以在ISO/IEC 14496-12的章节9.5.7中公开。
如果读取器使用通过layer_id_method_idc等于2或3指示的样本开始解码,则为了确保以标记为属于具有layer_id_method_idc为2和3的样本组的样本开始的比特流是匹配的比特流,读取器可能需要进一步如下修改恢复的比特流的SPS、PPS和PH NAL单元。
-样本中引用的所有SPS可以具有等于1的sps_gdr_enabled_flag。
-样本中引用的所有PPS可以具有等于0的pps_mixed_nalu_types_in_pic_flag。
-从样本恢复的AU的所有VCL NAL单元可以具有与GDR_NUT相同的nal_unit_type。
-从样本恢复的AU的所有图片头可以具有等于1的ph_gdr_pic_flag和与样本被映射到的“roll”样本组描述条目的roll_distance相对应的ph_recovery_poc_cnt值。
而且,例如,如果“roll”样本组与依赖层相关但不与引用层相关,则样本组可以表示当依赖层的所有引用层可用并且被解码时应用的特性。样本组能够被用于开始解码预测层。
另外,例如,可以定义层信息样本组。由轨道承载的层和子层的列表能够作为层信息(“linf”)样本组被用信号发送。如果当前轨道包含两个或多个层、两个或多个子层或一个子层,但该子层不是具有TemporalId为0的子层,则可能需要层和子层信息来解释在不同样本组中用信号发送的信息,诸如“sap”、“rap”、“sync”、“tele”和“vopi”样本组。另外,如果“linf”样本组存在于VVC轨道中,则sub_layer_presence_flags可以等于0。
另外,例如,可以定义操作点信息样本组。应用能够使用关于为VVC基本流和配置提供的各种操作点通知的操作点信息样本组(“vopi”)。操作点可以与输出层集、最大TemporalId值、简档、层级和级别信令相关。所有上述信息都能够通过“vopi”样本组捕获。除了上述信息之外,操作点信息样本组还可以提供层之间的依赖关系信息。
另外,例如,如果对于VVC基本流存在多于一个VVC轨道并且对于VVC基本流不存在操作点实体组,则以下两者都可以应用。
-在用于VVC基本流的VVC轨道当中,只能存在承载“vopi”样本组的一个轨道。
-VVC基本流中的所有其他VVC轨道可以具有对承载“vopi”样本组的轨道的“vref”类型的轨道引用。
对于给定轨道的特殊样本,其他轨道的时间上并置的样本能够被定义为具有与该特殊样本的解码时间相同的解码时间。对于具有对承载“vopi”样本组的轨道Tk的“vref”轨道引用的轨道TN的每个样本SN,以下可以应用。
-如果存在轨道Tk的时间并置的样本Sk,则样本SN可以关联于与样本Sk相同的“vopi”样本组条目。
-否则,样本SN可以与“vopi”样本组条目相关联,该“vopi”样本组条目等于在解码时先于样本SN的轨道Tk的最后样本。
另外,如果VVC基本流引用多个VPS,则可能需要将多个条目包括在具有grouping_type为“vopi”的样本组描述框中。另外,如果只有一个VPS,则最好在样本表框中包括操作点信息样本组,而不是使用默认样本组描述索引并将其包括在每个轨道片段中。另外,不能为其分组类型为“vopi”的SampleToGroupBox定义grouping_type_parameter。
“vopi”样本组条目可以包括VVC操作点记录。VVC操作点记录的语法可以如下表所示。
【表5】
/>
另外,用于VVC操作点记录的语法的语义可以如下表所示。
【表6】
/>
/>
/>
另外,例如,可以定义访问单元定界符样本组。样本组的样本组描述条目可以包括AUD NAL单元。
如果样本被映射到访问单元限制器样本组(“aud”),如果目标操作点对应于“aud”样本组内指示的输出层集之一,则可以指示样本组内包含的AUD NAL单元应被插入到恢复的AU中。
访问单元定界符样本组的AUD样本条目的语法可以如下表所示。
【表7】
另外,用于AUD样本条目的语法的语义可以如下表所示。
【表8】
另外,例如,可以定义序列样本组的末尾。样本组的样本组描述条目可以包括EOSNAL单元。
如果样本映射到序列结束样本组(“eos”),如果目标操作点对应于“eos”样本组内指示的输出层集和最大时间ID之一,则它可以指示样本组中包括的EOS NAL单元应插入到恢复的AU的指示位置。
序列结束样本组的序列结束样本条目的语法可以如下表所示。
【表9】
另外,用于序列结束样本条目的语法的语义可以如下表所示。
【表10】
另外,例如,可以定义比特流样本组的结尾。样本组的样本组描述条目可以包括EOB NAL单元。
如果样本映射到比特流结束样本组(“eob”),如果目标操作点对应于“eob”样本组内指示的输出层集和最大时间ID之一,则可以指示样本组中包括的EOB NAL单元应插入到恢复的AU中。
比特流结束样本组的比特流结束样本条目的语法可以如下表所示。
【表11】
另外,用于比特流结束样本条目的语法的语义可以如下表所示。
【表12】
同时,当目标操作点如上所述改变时,当前VVC文件格式指定如下。
【表13】
/>
如上表13所示,如果以下两个条件都为真,则文件读取器可能需要在作为输出比特流应用的操作点的每个层中包括EOS NAL单元。
-在访问单元的序列之后,选择与先前操作点不同的操作点。
-访问单元的序列不以所应用的操作点的每个层中的EOS NAL单元或EOB NAL单元结束。
然而,上述过程可能会导致至少以下问题。
首先,目标操作点具有两个分量,包括目标OLS和最大时间ID,即使只有最大时间ID改变,目标操作点也被认为已经改变,但可能不需要调用上述的过程。最大时间ID的变化可以响应于网络状态的变化而平滑地发生。因此,可以提出一种方法,使得仅当变化与目标OLS相关时才调用该过程。
其次,该过程要求文件读取器在所应用的操作点的每个层中包括作为输出比特流的EOS NAL单元,这可能意味着文件读取器必须能够将EOS NAL单元放置在访问单元内的适当的位置中。这可能是一种负担。因为VVC允许EOS NAL单元存在于访问单元内的任何位置,只要它不先于关联的图片单元,所以文件解析器不需要将EOS放入正确的层中。
因此,此文件提出对上面所提及的问题的解决方案。所提出的实施例能够被单独地或组合地应用。
作为第一示例,替代当目标操作点改变时调用插入EOS NAL单元的过程,本文提出了仅当目标OLS改变时调用用于插入EOS NAL单元的过程的方法。因此,如果仅改变最大时间ID,则能够跳过该过程。
作为第二示例,当在上述过程中插入EOS NAL单元时,此文档提出一种方法,其允许文件解析器包括与目标OLS中的层数一样多的EOS NAL单元,而不必将它们放置在相应的层中。
作为第三示例,此文档提出一种允许将所有必要的EOS NAL单元放置在访问单元的末尾的方法。
作为第四示例,此文档建议使上述过程可选。
作为示例,反映此文档中提出的第一至第三示例的实施例可以如下。上述实施例能够被表达为如下表所示的VVC文件格式规范。
【表14】
例如,根据上表14,能够确定以下两个条件是否真。例如,第一条件可以是是否在访问单元的序列之后选择与先前输出层集(OLS)不同的OLS。另外,例如,第二条件可以是访问单元的序列是否不以所应用的OLS的每个层中的EOS NAL单元或EOB NAL单元结束。
如果上述两个条件为真,即,在访问单元的序列之后,选择与先前的OLS不同的OLS,如果访问单元的序列在所应用的OLS的每个层中不以EOS NAL单元或EOB NAL单元结束,则文件读取器能够在最后的访问单元中包括与应用于作为输出比特流而应用的目标输出层的层数一样多的层的EOS NAL单元。所包括的EOS NAL单元可以按照NAL单元的层ID的升序被放置在访问单元的末尾。
作为另一示例,反映此文档中提出的第一至第四示例的实施例可以如下。上述实施例能够被表达为如下表所示的VVC文件格式规范。
【表15】
例如,根据上表15,可以确定以下两个条件是否真。例如,第一条件可以是是否在访问单元的序列之后选择与先前输出层集(OLS)不同的OLS。另外,例如,第二条件可以是访问单元的序列是否在所应用的OLS的每个层中不以EOS NAL单元或EOB NAL单元结束。
如果上述两个条件为真,即,在访问单元的序列之后,选择与先前的OLS不同的OLS,如果访问单元序列在所应用的OLS的每个层中不以EOS NAL单元或EOB NAL单元结束,则文件读取器能够在最后的访问单元中包括与应用于作为输出比特流而应用的目标输出层的层数一样多的层的EOS NAL单元。包括EOS NAL单元的过程可以是可选的。所包括的EOSNAL单元可以按照NAL单元的层ID的升序被放置在访问单元的末尾。
图8例示了应用本公开提出的一个实施方式的媒体文件生成方法。
参照图8,第一设备可以对轨道进行配置(S800)。例如,第一设备可以根据前述实施方式对轨道进行配置。例如,第一设备可以指发送端、编码端或媒体文件生成端。例如,第一设备可以对子图片轨道和基本轨道进行配置。第一设备可以包括编码器。
第一设备可以基于轨道生成媒体文件(S810)。例如,第一设备可以根据前述实施方式基于轨道生成媒体文件。
图9例示了对通过应用本公开提出的实施方式生成的媒体文件进行解码的方法。
参照图9,第二设备可以获得/接收包括轨道的媒体文件(S900)。例如,第二设备可以根据前述实施方式获得/接收包括轨道的媒体文件。例如,第二设备可以指接收端、解码端或渲染端。
例如,媒体文件可以包括在表1、表3、表5、表7、表9和/或表11中描述的信息。
第二设备可以解析/获得轨道(S910)。第二设备可以解析/获得被包括在媒体文件中的轨道。例如,轨道可以包括子图片轨道或基本轨道。例如,第二设备可以对子图片轨道和基本轨道进行解析。
第二设备可以基于轨道生成一个或更多个子图片的切片。第二设备可以基于轨道生成重构样本。第二设备可以基于轨道获得图像/视频解码所需的信息。
图10示意性地示出根据此文档的媒体文件生成设备创建媒体文件的方法。图10中公开的方法能够由图11中公开的媒体文件创建设备来执行。媒体文件创建设备可以代表上述第一设备。具体地,例如,图10的S1000至S1030可以由媒体文件创建设备的媒体文件创建单元执行。另外,虽然未示出,但是对包括视频信息的比特流进行编码的过程可以由编码器执行。编码器可以被包括在媒体文件创建设备中或者可以被配置为外部组件。
媒体文件生成设备生成用于第一输出层集(OLS)的访问单元的序列(S1000)。例如,媒体文件生成设备能够导出包括经编码的视频信息的比特流并且生成针对该比特流的媒体文件。例如,媒体文件创建设备能够通过网络或(数字)存储介质获得经编码的视频信息。这里,网络可以包括广播网络和/或通信网络,并且数字存储介质可以包括诸如USB、SD、CD、DVD、蓝光、HDD和SSD的各种存储介质。或者,例如,媒体文件生成设备可以包括编码器并导出编码的视频信息。例如,媒体文件生成装置可以生成用于包括编码的视频信息的比特流的第一OLS。例如,媒体文件生成设备可以生成用于第一OLS的访问单元的序列。
媒体文件创建设备确定第一条件和第二条件是否为真(S1010)。媒体文件生成装置可以确定第一条件和第二条件是否为真。
例如,第一条件可以是是否在访问单元的序列之后选择与第一OLS不同的OLS。也就是说,例如,如果在访问单元的序列之后选择与第一OLS不同的OLS,则第一条件可以被确定为真。同时,例如,与第一OLS不同的OLS可以被称为第二OLS。
此外,例如,第二条件可以是在第一OLS的每个层中访问单元的序列是否不以EOSNAL单元结束或者不以比特流结束(EOB)NAL单元结束。也就是说,例如,如果在第一OLS的每个层中访问单元的序列不以EOS NAL单元结束或者不以比特流结束(EOB)NAL单元结束,则第二条件可以被确定为真。
基于第一条件和第二条件为真,媒体文件生成设备插入等于应用于第一OLS的层数的序列结束(EOS)网络抽象层(NAL)单元(S1020)。例如,如果第一条件和第二条件为真,则媒体文件生成设备可以将等于应用于第一OLS的层数的序列结束(EOS)网络抽象层(NAL)单元插入到第一OLS中。
而且,例如,EOS NAL单元可以不被放置在相应的层中。
另外,例如,媒体文件生成设备可以按照EOS NAL单元的层ID的升序将所插入的EOS NAL单元插入到序列的最后访问单元的末尾。另外,例如,插入的EOS NAL单元可以按EOS NAL单元的层ID的升序放置在序列的访问单元的末尾。
另外,例如,如果在生成的访问单元的序列之后没有选择与第一OLS不同的OLS并且仅改变目标操作点,则可以不插入EOS NAL单元。例如,如果在生成的访问单元的序列之后没有选择与第一OLS不同的OLS,并且仅改变最大时间ID,则可以不插入EOS NAL单元。
媒体文件生成设备生成包括第一OLS的媒体文件(S1030)。媒体文件生成设备可以生成包括第一OLS和/或第二OLS的媒体文件。
同时,虽然未示出,但是媒体文件生成设备可以生成第二OLS。例如,媒体文件创建设备可以生成用于第二OLS的访问单元的序列。另外,虽然未示出,但是媒体文件生成设备可以将生成的媒体文件存储在(数字)存储介质中,或者通过网络或(数字)存储介质将其发送到媒体文件处理设备。这里,网络可以包括广播网络和/或通信网络,并且数字存储介质可以包括诸如USB、SD、CD、DVD、蓝光、HDD和SSD的各种存储介质。
图11示意性地示出执行根据此文档的媒体文件生成方法的媒体文件生成设备。图10中公开的方法能够由图11中公开的媒体文件创建设备来执行。具体地,例如,图11的媒体文件生成设备的媒体文件生成单元可以执行步骤S1000至S1030。另外,虽然未示出,但是对包括视频信息的比特流进行编码的过程可以由媒体文件创建设备的编码器执行。
图12示意性地示出根据此文档的媒体文件处理设备的媒体文件处理方法。图12中公开的方法可以由图13中公开的媒体文件处理设备来执行。媒体文件处理设备可以代表上述第二设备。对于具体示例,图12的S1200至S1220。可以由媒体文件处理设备的媒体文件处理单元执行。媒体文件处理单元可以包括文件解析器和/或文件读取器。另外,虽然未示出,但是获取媒体文件的过程可以由接收单元执行,导出包括用于第一OLS的访问单元的序列和用于与第一OLS不同的OLS的访问单元的序列的比特流的过程可以由媒体文件处理单元执行,解码比特流的过程可以由解码器执行。解码器可以包括在媒体文件处理设备中或可以被配置为外部组件。
媒体文件处理设备恢复用于第一输出层集(OLS)的访问单元的序列(S1200)。例如,媒体文件处理设备可以通过网络或者(数字)存储介质获得媒体文件。媒体文件可以包括用于第一OLS的访问单元的序列。媒体文件处理设备可以重构用于第一OLS的访问单元的序列。这里,网络可以包括广播网络和/或通信网络,并且数字存储介质可以包括诸如USB、SD、CD、DVD、蓝光、HDD和SSD的各种存储介质。
媒体文件处理设备确定第一条件和第二条件是否为真(S1210)。媒体文件处理设备可以确定第一条件和第二条件是否为真。
例如,第一条件可以是是否在访问单元的序列之后选择与第一OLS不同的OLS。也就是说,例如,如果在访问单元的序列之后选择与第一OLS不同的OLS,则第一条件可以被确定为真。同时,例如,与第一OLS不同的OLS可以被称为第二OLS。
此外,例如,第二条件可以是在第一OLS的每个层中访问单元的序列是否不以EOSNAL单元结束或者不以比特流结束(EOB)NAL单元结束。也就是说,例如,如果在第一OLS的每个层中访问单元的序列不以EOS NAL单元结束或者不以比特流结束(EOB)NAL单元结束,则第二条件可以被确定为真的。
基于第一条件和第二条件为真,媒体文件处理设备插入等于应用于第一OLS的层数的序列结束(EOS)网络抽象层(NAL)单元(S1220)。例如,如果第一条件和第二条件为真,则媒体文件处理设备可以将等于应用于第一OLS的层数的序列结束(EOS)网络抽象层(NAL)单元插入到第一OLS中。
而且,例如,EOS NAL单元可以不被放置在相应的层中。
另外,例如,媒体文件处理设备可以按照EOS NAL单元的层ID的升序将所插入的EOS NAL单元插入到序列的最后的访问单元的末尾。另外,例如,插入的EOS NAL单元可以按EOS NAL单元的层ID的升序被放置在序列的访问单元的末尾。
另外,例如,如果在恢复的访问单元的序列之后没有选择与第一OLS不同的OLS并且仅改变目标操作点,则可以不插入EOS NAL单元。例如,如果在恢复的访问单元的序列之后没有选择与第一OLS不同的OLS,并且仅改变最大时间ID,则可以不插入EOS NAL单元。
同时,虽然未示出,但是媒体文件处理设备可以恢复用于第二OLS的访问单元的顺序。另外,媒体文件处理设备可以导出包括用于第一OLS的访问单元序列和用于第二OLS的访问单元序列的比特流,并且可以对比特流进行解码。该比特流可以被称为VVC比特流或输出比特流。例如,媒体文件处理设备能够对比特流中的视频信息进行解码并基于视频信息生成恢复的图片。
图13示意性地示出执行根据此文档的媒体文件处理方法的媒体文件处理设备。图12中公开的方法可以由图13中公开的媒体文件处理设备来执行。具体地,例如,图12的媒体文件处理设备的媒体文件处理单元可以执行图12的步骤S1200至S1220。同时,虽然未示出,但是媒体文件处理设备可以包括解码器,获取媒体文件的过程可以由接收单元执行,导出包括用于第一OLS的访问单元的序列和用于与第一OLS不同的OLS的访问单元的序列的比特流的过程可以由媒体文件处理单元执行,对比特流进行解码的过程可以由解码器执行。
根据上述的此文档,即使仅改变最大时间ID,也能够防止插入EOS NAL单元的不必要的操作,从而改进整体编译效率。
另外,根据此文档,能够防止当将EOS NAL单元插入到访问单元内的适当位置时发生的负担,从而改进整体编译效率。
在上述实施方式中,基于具有一系列步骤或块的流程图描述了方法。本公开不限于上述步骤或块的顺序。一些步骤或块可以同时或以与如上所述的其它步骤或块不同的顺序发生。此外,本领域技术人员将理解,上述流程图中所示的步骤不是排他性的,可以包括其它步骤,或者可以删除流程图中的一个或更多个步骤,而不影响本公开的范围。
本说明书中描述的实施方式可以通过在处理器、微处理器、控制器或芯片上实现而执行。例如,每个图中所示的功能单元可以通过在计算机、处理器、微处理器、控制器或芯片上实现而执行。在这种情况下,用于实现的信息(例如,关于指令的信息)或算法可以存储在数字存储介质中。
另外,本公开适用于的设备可以被包括在多媒体广播发送/接收设备、移动通信终端、家庭影院视频设备、数字影院视频设备、监控摄像头、视频聊天设备、诸如视频通信的实时通信设备、移动流传输设备、存储介质、便携式摄像机、VoD服务提供设备、顶置(OTT)视频设备、互联网流传输服务提供设备、三维(3D)视频设备、虚拟现实(VR)设备、增强现实(AR)设备、电话会议视频设备、运输工具用户设备(例如,车辆用户设备、飞机用户设备、轮船用户设备等)和医疗视频设备中,并且可以被用于处理视频信号或数据信号。例如,顶置(OTT)视频设备可以包括游戏控制台、蓝光播放器、联网TV、家庭影院系统、智能手机、平板PC和数字视频记录仪(DVR)等。
此外,本公开适用于的处理方法可以以计算机执行的程序的形式产生,并且可以存储在计算机可读记录介质中。具有根据本公开的数据结构的多媒体数据也可以存储在计算机可读记录介质中。计算机可读记录介质包括存储有计算机系统可读数据的所有类型的存储装置。例如,计算机可读记录介质可以包括BD、通用串行总线(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁带、软盘和光学数据存储装置。此外,计算机可读记录介质包括以载波(例如,通过互联网传输)形式实现的介质。另外,通过编码方法生成的比特流可以存储在计算机可读记录介质中,或者可以通过有线/无线通信网络发送。
另外,本公开的实施方式可以被实现为根据程序代码的计算机程序产品,并且程序代码可以通过本公开的实施方式而在计算机执行。程序代码可以存储在计算机可读的载体上。
图14例示了应用本公开的内容流传输系统的结构图。
应用本公开的实施方式的内容流传输系统可以基本上包括编码服务器、流传输服务器、网络服务器、媒体存储器、用户装置和多媒体输入装置。
编码服务器将从诸如智能电话、照相机、便携式摄像机等的多媒体输入装置输入的内容压缩为数字数据,以生成比特流,并且将该比特流发送至流传输服务器。作为另一示例,在诸如智能电话、照相机、便携式摄像机等的多媒体输入装置直接生成比特流时,可以省略编码服务器。
可以通过本公开的实施方式应用于的编码方法或比特流生成方法来生成比特流。并且流传输服务器可以在发送或接收比特流的过程中暂时存储比特流。
流传输服务器基于用户的请求通过网络服务器向用户装置发送多媒体数据,并且网络服务器充当向用户通知服务的介质。当用户从网络服务器请求想要的服务时,网络服务器将请求递送至流传输服务器,并且流传输服务器将多媒体数据发送至用户。在这种情况中,内容流传输系统可以包括单独的控制服务器。在这种情况下,控制服务器用来控制内容流系统中的各个装置之间的命令/响应。
流传输服务器可以从媒体存储器和/或编码服务器接收内容。例如,在从编码服务器接收内容时,可以实时地接收内容。在这种情况下,为了提供流畅的流传输服务,流传输服务器可以将比特流存储预定时间。
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航、板式PC、平板PC、超薄本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字TV、台式计算机、数字标牌等。可以将内容流传输系统中的每个服务器作为分布式服务器操作,并且在这种情况下,可以分发从每个服务器接收的数据。
本公开中描述的权利要求可以以各种方式组合。例如,本公开的方法权利要求中的技术特征可以组合以实现为设备,并且本公开的设备权利要求中的技术特征可以组合以实现为方法。另外,本公开的方法权利要求中的技术特征和设备权利要求中的技术特征可以组合以实现为设备,并且本公开的方法权利要求中的技术特征和设备权利要求中的技术特征可以组合以实现为方法。

Claims (15)

1.一种用于处理媒体文件的方法,所述方法包括:
重构用于第一输出层集(OLS)的访问单元的序列;
确定第一条件和第二条件是否为真;以及
基于所述第一条件和所述第二条件为真,插入与应用于所述第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元,
其中,所述第一条件是在所述访问单元的序列之后与所述第一OLS不同的OLS是否被选择,并且
其中,所述第二条件是在所述第一OLS的每个层中,是否所述访问单元的序列不以EOSNAL单元或比特流结束(EOB)NAL单元结束。
2.根据权利要求1所述的方法,其中,插入的EOS NAL单元按照所述EOS NAL单元的层ID的升序排列在所述序列的访问单元的末尾。
3.根据权利要求1所述的方法,其中,插入的EOS NAL单元不被放置在对应的层中。
4.根据权利要求1所述的方法,其中,如果在所述重构的访问单元的序列之后没有选择除了所述第一OLS之外的OLS并且仅改变目标操作点,则不插入所述EOS NAL单元。
5.根据权利要求1所述的方法,其中,如果在所述重构的访问单元的序列之后没有选择除了所述第一OLS之外的OLS并且仅改变最大时间ID,则不插入所述EOS NAL单元。
6.根据权利要求1所述的方法,其中,插入所述EOS NAL单元的过程是可选的。
7.一种用于执行媒体文件处理方法的媒体文件处理装置,包括:
接收器,所述接收器获取媒体文件;以及
媒体文件处理器,所述媒体文件处理器重构用于所述媒体文件的第一输出层集(OLS)的访问单元的序列,确定第一条件和第二条件是否为真,并且基于所述第一条件和所述第二条件为真,插入与应用于所述第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元,
其中,所述第一条件是在所述访问单元的序列之后是否与所述第一OLS不同的OLS被选择,并且
其中,所述第二条件是在所述第一OLS的每个层中,是否所述访问单元的序列不以EOSNAL单元或比特流结束(EOB)NAL单元结束。
8.根据权利要求7所述的媒体文件处理装置,其中,插入的EOS NAL单元按照所述EOSNAL单元的层ID的升序排列在所述序列的访问单元的末尾。
9.根据权利要求7所述的媒体文件处理装置,其中,插入的EOS NAL单元不被放置在相应的层中。
10.根据权利要求7所述的媒体文件处理装置,其中,如果在所述重构的访问单元的序列之后没有选择除了所述第一OLS之外的OLS并且仅改变目标操作点,则不插入所述EOSNAL单元。
11.根据权利要求7所述的媒体文件处理装置,其中,如果在所述重构的访问单元的序列之后没有选择除了所述第一OLS之外的OLS并且仅改变最大时间ID,则不插入所述EOSNAL单元。
12.根据权利要求7所述的媒体文件处理装置,其中,插入所述EOS NAL单元的过程是可选的。
13.一种用于生成媒体文件的方法,所述方法包括:
生成用于第一输出层集(OLS)的访问单元的序列;
确定第一条件和第二条件是否为真;
基于所述第一条件和所述第二条件为真,插入与应用于所述第一OLS的层数一样多的序列结束(EOS)网络抽象层(NAL)单元;以及
生成包括所述第一OLS的所述媒体文件,
其中,所述第一条件是在所述访问单元的序列之后是否选择与所述第一OLS不同的OLS,并且
其中,所述第二条件是在所述第一OLS的每个层中,是否所述访问单元的序列不以EOSNAL单元或比特流结束(EOB)NAL单元结束。
14.根据权利要求13所述的方法,其中,插入的EOS NAL单元按照所述EOS NAL单元的层ID的升序排列在所述序列的访问单元的末尾。
15.根据权利要求13所述的方法,其中,插入的EOS NAL单元不被放置在对应的层中。
CN202280033808.2A 2021-04-19 2022-04-14 媒体文件处理方法及其设备 Pending CN117296317A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163176834P 2021-04-19 2021-04-19
US63/176,834 2021-04-19
PCT/KR2022/005393 WO2022225256A1 (ko) 2021-04-19 2022-04-14 미디어 파일 처리 방법 및 그 장치

Publications (1)

Publication Number Publication Date
CN117296317A true CN117296317A (zh) 2023-12-26

Family

ID=83722432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280033808.2A Pending CN117296317A (zh) 2021-04-19 2022-04-14 媒体文件处理方法及其设备

Country Status (5)

Country Link
EP (1) EP4329303A1 (zh)
JP (1) JP2024515091A (zh)
KR (1) KR20230159499A (zh)
CN (1) CN117296317A (zh)
WO (1) WO2022225256A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9866852B2 (en) * 2014-06-20 2018-01-09 Qualcomm Incorporated Video coding using end of sequence network abstraction layer units
US10623755B2 (en) * 2016-05-23 2020-04-14 Qualcomm Incorporated End of sequence and end of bitstream NAL units in separate file tracks
CA3143885A1 (en) * 2019-06-20 2020-12-24 Nokia Technologies Oy An apparatus, a method and a computer program for video encoding and decoding
CN114467262A (zh) * 2019-09-24 2022-05-10 华为技术有限公司 视频译码中的sei消息依赖简化

Also Published As

Publication number Publication date
KR20230159499A (ko) 2023-11-21
EP4329303A1 (en) 2024-02-28
WO2022225256A1 (ko) 2022-10-27
JP2024515091A (ja) 2024-04-04

Similar Documents

Publication Publication Date Title
US10893256B2 (en) Apparatus, a method and a computer program for omnidirectional video
US10575004B2 (en) Method, device, and computer program for obtaining media data and metadata from encapsulated bit-streams wherein operating point descriptors can be dynamically set
CN113498606A (zh) 用于视频编码和解码的装置、方法和计算机程序
US20170171282A1 (en) Method, device, and computer program for encapsulating hevc layered media data
WO2019141907A1 (en) An apparatus, a method and a computer program for omnidirectional video
US20230059516A1 (en) Apparatus, a method and a computer program for omnidirectional video
US20220201308A1 (en) Media file processing method and device therefor
EP3673665A1 (en) An apparatus, a method and a computer program for omnidirectional video
US20230336761A1 (en) Method for processing media file and device therefor
CN116134821A (zh) 用于在图像/视频编码系统中处理高级语法的方法和设备
EP4329303A1 (en) Media file processing method, and device therefor
EP4287624A1 (en) Media file processing method and device
US20230362456A1 (en) Media file processing method and device
US20230328261A1 (en) Media file processing method and device therefor
US20240048768A1 (en) Method and apparatus for generating and processing media file
US20240040169A1 (en) Media file processing method and device therefor
US20240031622A1 (en) Media file processing method and device
US20230388508A1 (en) Method and device for generating media file
US20230345028A1 (en) Media file processing method and apparatus therefor
US20240064323A1 (en) Media file generation/reception method and device for signaling subpicture id information, and computer-readable recording medium in which media file is stored
US20230319374A1 (en) Method and device for creating/receiving media file containing layer information, and media file transfer method
CN116569557A (zh) 支持以样本为单位的随机访问的媒体文件生成/接收方法和设备及发送媒体文件的方法
CN117223290A (zh) 用于基于eos样本组生成/接收媒体文件的方法和设备以及用于发送媒体文件的方法
CN116868575A (zh) 生成/接收包括nal单元信息的媒体文件的方法和装置及发送媒体文件的方法
CN116601963A (zh) 生成/接收包括nal单元阵列信息的媒体文件的方法和装置及发送媒体文件的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination