CN109691103B - 视频编码 - Google Patents

视频编码 Download PDF

Info

Publication number
CN109691103B
CN109691103B CN201780056540.3A CN201780056540A CN109691103B CN 109691103 B CN109691103 B CN 109691103B CN 201780056540 A CN201780056540 A CN 201780056540A CN 109691103 B CN109691103 B CN 109691103B
Authority
CN
China
Prior art keywords
tile
video
bitstream
boundary
identifier
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.)
Active
Application number
CN201780056540.3A
Other languages
English (en)
Other versions
CN109691103A (zh
Inventor
E.托马斯
O.A.尼阿穆特
R.科恩恩
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.)
Nederlandse Organisatie voor Toegepast Natuurwetenschappelijk Onderzoek TNO
Koninklijke KPN NV
Original Assignee
Nederlandse Organisatie voor Toegepast Natuurwetenschappelijk Onderzoek TNO
Koninklijke KPN NV
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 Nederlandse Organisatie voor Toegepast Natuurwetenschappelijk Onderzoek TNO, Koninklijke KPN NV filed Critical Nederlandse Organisatie voor Toegepast Natuurwetenschappelijk Onderzoek TNO
Publication of CN109691103A publication Critical patent/CN109691103A/zh
Application granted granted Critical
Publication of CN109691103B publication Critical patent/CN109691103B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/174Methods 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 an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

描述了一种用于由解码器设备形成输出视频帧的方法,其中该方法包括:接收比特流,该比特流包括表示视频图块的编码媒体数据的比特流部分和与编码视频图块相关联的图块定位信息;从比特流提取图块定位信息,图块定位信息包括用于标识编码视频图块的图块标识符,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的边界;基于图块定位信息中的边界标识符确定图块图,图块图表示输出视频帧中的视频图块的空间布局;并且,形成输出视频帧,包括标识表示图块图中标识的视频图块的编码媒体数据的比特流的部分,解码所标识的编码媒体数据并根据图块图的空间布局在输出视频帧缓冲器中复制解码的媒体数据。

Description

视频编码
技术领域
本发明涉及视频编码,并且特别地,但是不排他地,涉及由解码器处理比特流的方法、由编码器形成比特流的方法、用于处理比特流的解码器设备、用于形成比特流的编码器设备以及用于执行这样的方法的计算机程序产品。
背景技术
能够解码视频的媒体设备可以配备有一个或多个硬件视频解码器。在媒体设备的处理器支持多核功能的情况下,如果已经基于支持这样的功能的编解码器生成(输入)比特流,则可以针对单个解码器设备实现某种级别的并行性。例如,HEVC/H.265标准支持所谓的HEVC图块(tile)和波前并行处理,其使得视频数据的处理能够分布在不同的处理器核上。
然而,数量越来越多的媒体设备现在支持多个解码器实例,通常以多个硬件解码器或一个软件解码器和一个硬件解码器实例的形式。例如,除了嵌入在图形卡中的专用GPU(图形处理单元)之外,消费级计算机现在配备有包括GPU的CPU。这些图形卡例如是由NVIDIA或ATI制造的,它们是该行业中的主要参与者。然而,两种类型的GPU(在CPU中或在专用图形卡中)具有硬件视频解码器能力(例如,对于它们中的一些,MPEG-4第10部分AVC/H.264和HEVC/H.265)。为了充分利用多个解码器实例的潜力,应该将比特流逻辑分解(分割)成被供应给不同解码器的单独比特流。然而,诸如HEVC之类的现有技术视频编码标准不被设计为支持允许将输入比特流灵活地分解成不同的比特流的高级并行化架构。这些不同的比特流由不同的解码器实例处理。
除了增加的硬件功能外,视频的分辨率在未来正迅速从4K增加到8K甚至更多。在这样的场景中,将期望比特流可以容易地被分解成与原始比特流的视频帧的不同的感兴趣的区域相关联的单独比特流。
比特流在表示不同的感兴趣的区域的比特流中的灵活分解在很大程度上取决于比特流被结构化的方式。例如,如果人们想要提取HEVC比特流中的关于HEVC图块的信息,则需要分析比特流的语法直到其最低级别。特别地,它将需要解析和分析网络抽象层(NAL)单元、承载视频数据的VCL NAL单元和包括与视频数据相关联的元数据的非VCL单元。另外,它将需要基于与VCL NAL单元相关联的所谓PPS非VCL单元中的图块网格信息来解析和分析VCL NAL单元的净荷中的切片段数据。
此外,为了隔离特定视频图块的视频数据,空间和时间解码依赖性应该被约束在图块边界内。然而,对于比特流解析器来说,推断时间依赖性是否被有效地约束到连续帧上的图块边界将是极其困难的任务。实际上,这将需要解码所有运动矢量,以便确定两个帧之间的这些运动矢量是否在两个帧上的相同位置处的两个图块中开始和结束。
另外,每个HEVC图块的净荷不构成有效HEVC比特流(例如,可以由符合HEVC标准的HEVC解码器解码的比特流),因为强制SPS和PPS NAL单元将缺失。
换句话说,对于解码器而言,将HEVC比特流实时分解成多个比特流,其中每个比特流表示输出视频的视频帧中的视频图块,并且其中每个比特流可以由单独的解码器处理,实际上将是非常困难的,并且需要过于大量的资源。
因此,本领域中存在对改进的编码方案的需要,该方案允许将视频比特流灵活地分解成多个比特流,所述比特流可以由多个视频解码器实例并行地单独处理,使得可以实现高级并行比特流处理。
发明内容
如将由本领域技术人员理解的那样,本发明的各方面可以被实现为系统、方法或计算机程序产品。因此,本发明的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或者组合全部通常可以在本文中被称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。在本公开中描述的功能可以被实现为由计算机的微处理器执行的算法。此外,本发明的各方面可以采取在具有在其上实现(例如,存储)的计算机可读程序代码的一个或多个计算机可读介质中实现的计算机程序产品的形式。
可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子的、磁的、光的、电磁的、红外的或半导体系统、装置、或设备或前述内容的任何合适的组合。计算机可读存储介质的更具体示例(非穷尽列表)将包括以下内容:具有一根或多根线的电连接、便携式计算机软磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式压缩盘只读存储器(CD-ROM)、光存储设备、磁存储设备或者前述内容的任何合适的组合。在本文档的上下文中,计算机可读存储介质可以是可以包含或存储用于由指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的任何有形介质。
计算机可读信号介质可以包括具有在其中实现的计算机可读程序代码的传播数据信号(例如,在基带中或作为载波的部分)。这样的传播信号可以采取多种形式中的任何形式,包括但不限于电磁、光或其任何合适的组合。计算机可读信号介质可以是不是计算机可读存储介质并且可以传送、传播或传输用于由指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的任何计算机可读介质。
在计算机可读介质上实现的程序代码可以使用任何适当的介质来传输,所述任何适当的介质包括但不限于无线、有线线路、光纤、电缆、RF等或前述内容的任何合适的组合。用于执行针对本发明的各方面的操作的计算机程序代码可以以一个或多个编程语言的任何组合来写,所述一个或多个编程语言包括面向对象的编程语言(诸如Java(TM)、Smalltalk、C++或者诸如此类)和常规程序编程语言(诸如“C”编程语言或者类似的编程语言)。程序代码可以完全地在用户的计算机上、部分地在用户的计算机上、作为独立软件包、部分地在用户的计算机上并且部分地在远程计算机上或完全地在远程计算机或服务器上执行。在后者的情况中,远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型的网络被连接到用户的计算机,或者可以对外部计算机进行连接(例如,通过使用因特网服务提供商的因特网)。
以下参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图描述本发明的各方面。将理解,流程图图示和/或框图中的每个块以及流程图图示和/或框图中的块的组合可以通过计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器(特别是微处理器或者中央处理单元(CPU))以产生机器,使得经由计算机、其他可编程数据处理装置或者其他设备的处理器执行的指令创建用于实现在流程图和/或一个或多个框图块中指定的功能/动作的构件。
这些计算机程序指令还可以被存储在计算机可读介质中,其可以引导计算机、其他可编程数据处理装置或其他设备以特定方式运转,使得存储在计算机可读介质中的指令产生包括实现在流程图和/或一个或多个框图块中指定的功能/动作的指令的制品。
计算机程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上以使得一系列可操作步骤在计算机、其他可编程装置或其他设备上被执行以产生计算机实现的过程,使得在计算机或其他可编程装置上执行的指令提供用于实现在流程图和/或一个或多个框图块中指定的功能/动作的过程。
图中的流程图和框图图示了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在该方面中,流程图或框图中的每个块可以表示模块、段或代码的部分,其包括用于实现指定的(一个或多个)逻辑功能的一个或多个可执行指令。还应当注意,在一些替代的实现中,在块中指出的功能可以脱离在图中指出的顺序发生。例如,取决于涉及的功能,连续示出的两个块实际上可以基本上同时地被执行,或者块有时可以以相反的顺序来执行。还将注意,框图和/或流程图图示的每个块以及在框图和/或流程图图示中的块的组合可以通过执行指定功能或动作的基于专用硬件的系统或者专用硬件和计算机指令的组合来实现。
本公开中的实施例定义了编码方案和比特流格式,其中比特流中的编码视频数据被组织在视频图块中,并且其中解码器装置可以基于视频图块的空间布置来形成输出视频帧。
在一个方面中,本发明可以涉及由解码器装置处理比特流,包括:由解码器装置接收比特流,比特流包括多个比特流部分,比特流部分包括与一个或多个视频图块相关联的编码媒体数据,一个或多个视频图块的每个视频图块表示输出视频帧中的不同区域;由解码器装置接收包括图块标识符和边界标识符的图块定位信息,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界;基于图块标识符和边界标识符确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局;并且,基于一个或多个视频图块的解码媒体数据和图块图生成输出视频帧。
因此,表示视频图块的编码媒体数据的比特流部分基于图块位置信息被处理,用于发信号通知解码器关于视频图块相对于输出视频帧中的其他视频图块的相对位置。基于一个或多个边界标识符来确定经由帧的输出中的视频图块的相对位置,所述边界标识符可以发信号通知解码器两个图块是否具有相邻边界(例如,当第一视频图块的第一边界标识符与第二视频图块的第二边界标识符匹配或具有预定关系时)。可以通过标识具有相邻边界的视频图块来形成关于输出视频帧中的参阅(vide)图块的空间布置(布局)(图块图)的信息。图块图使得解码器能够基于视频图块的解码媒体数据高效地组成输出视频帧缓冲器中的输出视频帧。
应该观察到,为了本申请的目的,更具体地说,为了描述如要求保护的本发明,术语解码器或解码器装置或解码器设备是可互换使用的,并且所有都指代来自现有技术的如众所周知的解码器。此外,术语“比特流”指代解码器的输入视频流或编码器的输出视频流(视情况而定),而没有被封装。因此,如果这样的(视频)比特流以封装形式传输,例如以诸如ISO/IEC 14496-12 ISO基本媒体文件格式(ISOBMFF)、MPEG-2 TS的容器格式传输,则文件解析器首先从该容器中提取(视频)比特流,然后将其馈送到解码器。术语“比特流”的该解释符合其在视频编码的技术领域中的常用含义。
在实施例中,视频图块的编码媒体数据可以是可独立解码的。这里,术语可独立解码意味着在不同视频图块的媒体数据之间不存在解码依赖性,使得可以解码一个视频图块的编码视频数据而不需要其他视频图块的视频数据。这样,视频图块的编码媒体数据可以由可以并行运行的不同解码器实例独立地处理。
在实施例中,生成输出视频帧可以包括:解码器装置从比特流提取比特流部分,并向不同的解码器实例提供不同的比特流部分。
在实施例中,生成输出视频帧可以包括:解码器装置向第一解码器实例提供包括至少第一视频图块的编码媒体数据的至少第一比特流部分,以及向第二解码器实例提供包括至少第二视频图块的编码媒体的至少第二比特流部分,其中第一视频图块不同于第二视频图块;第一和第二解码器实例将至少第一比特流部分的至少部分和至少第二比特流部分的至少部分解码为解码的媒体数据。
在实施例中,可以由第一解码器实例对第一视频图块的媒体数据的至少部分以及由第二解码器实例对第二视频图块的媒体数据并行解码。因此,提取的比特流部分的至少部分的媒体数据由不同的视频解码器实例并行解码为解码的媒体数据。
在进一步的实施例中,该方法可以包括根据由图块图定义的空间布局将解码的媒体数据定位在解码器装置的输出视频帧缓冲器中。
在实施例中,生成输出视频帧可以包括以下各项中的至少一项:解析比特流,以便标识比特流中属于输出视频帧的一个或多个比特流部分;从比特流中提取标识的比特流部分,并将提取的比特流部分提供给不同的视频解码器实例。
因此,本发明使得能够实现在编码域中的灵活比特流分解(例如,分解成比特流部分,其中每个比特流部分表示编码视频图块),其不影响解码过程。这样的比特流分解允许解码器装置通过不同的解码器实例独立地、并行地或至少部分并行地处理不同的比特流部分(视频图块)。例如,不同的硬件解码器,例如GPU,或处理器,例如硬件或软件解码器(或其组合),其被配置成并行执行多个解码器实例。
本发明使得解码器装置的比特流解析器能够处理比特流,所述比特流包括表示视频图块的编码媒体数据的比特流部分。解码器装置可以使用与编码视频图块相关联的图块定位信息来确定视频图块的空间布置(图块图),用于基于图块图来配置输出视频帧缓冲器,以及用于基于图块图中的信息在输出视频帧缓冲器中在空间上布置解码视频图块。
比特流中的视频图块的图块定位信息向解码器发信号通知输出视频帧中的图块的相对位置。使用无坐标方案表示这些图块的相对位置。特别地,视频流中的图块位置信息定义了图块相对于彼此的位置,而输出帧中的图块的位置是绝对位置。这样的绝对位置可以例如以像素单位坐标表示。
在实施例中,图块定位信息可以被包括在比特流中。在实施例中,接收图块定位信息可以进一步包括从比特流提取图块定位信息。在另一实施例中,可以利用解码器预先配置图块定位信息(的至少部分),或者在解码器被激活时在单独的通信信道中提供给解码器。
在实施例中,确定图块图包括:基于边界标识符确定第一视频图块和第二视频图块是否具有相邻边界。
在实施例中,确定图块图可以包括:基于第一视频图块和第二视频图块各自的边界标识符来确定第一视频图块和第二视频图块是否具有相邻边界;优选地,如果存在第一视频图块的边界标识符和第二视频图块的边界标识符之间的预定关系,则第一视频图块和第二视频图块具有相邻边界。在实施例中,第一边界标识符和第二边界标识符之间的预定关系可以包括第一边界标识符的至少部分与第二边界标识符的至少部分匹配。因此,可以通过根据视频图块的相邻边界在空间上布置(对齐)视频图块来确定图块图。
在实施例中,图块定位信息可以进一步包括取向信息,取向信息将视频图块的至少一个边界与输出视频帧缓冲器的参考空间中的取向链接。在实施例中,取向信息可以包括与至少一个边界标识符相关联的至少一个取向标识符,其中取向信息使得解码器装置能够将视频图块(例如矩形视频图块)的预定边界与矩形输出视频帧缓冲器的预定边界对齐。
取向信息可以使得解码器设备能够复制输出视频帧缓冲器中的视频图块的解码的媒体数据,使得视频图块在缓冲器的参考空间中具有预定的取向。例如,矩形参阅图块的北边界可以与输出视频帧缓冲器中的矩形缓冲器空间的北边界对齐。
在实施例中,视频输出缓冲器可以与坐标系相关联,该坐标系包括至少第一和第二轴。图块定位信息可以进一步包括取向信息,用于发信号通知解码器装置以相对于所述坐标系的所述第一和/或第二轴的预定取向来布置输出视频帧缓冲器中的视频图块的至少一个边界。在该实施例中,坐标系,例如包括原点、x轴和y轴的2D坐标系,可以被用于确定输出视频帧缓冲器中的视频图块的位置。视频图块的一个边界标识符可以与取向信息(例如取向标识符)相关联,用于发信号通知这样标识的边界应该以相对于轴之一(例如,x轴或y轴)的预定方式(例如,平行或垂直)取向。
在实施例中,比特流可以包括元帧,元帧包括比特流中的比特流部分,该比特流包括形成单个输出视频帧的视频图块的编码媒体数据。
在实施例中,比特流中的元帧的开始和/或结束可以由解码器装置确定,比特流中的一个或多个元帧定界符的一个基础。
在另一实施例中,比特流中的元帧的开始和/或结束可以由解码器装置基于一个或多个元帧顺序计数器来确定。
在实施例中,元帧定界符或元帧顺序计数器可以被格式化为比特流中的一个或多个网络抽象层NAL单元。
在实施例中,图块定位信息中的至少部分被包含在比特流中。在另一实施例中,图块定位信息中的至少部分被包含在比特流中的一个或多个图块定位单元中,图块定位单元是非视频编码层非VCL NAL单元,包括标识视频图块的图块标识符和用于标识图块定位单元指代视频图块的一个或多个边界的一个或多个边界标识符。
在实施例中,确定图块图可以包括:从比特流提取形成单个输出视频帧的视频图块的图块定位信息,并且基于提取的图块定位信息中的边界标识符标识相邻视频图块。
在实施例中,一个或多个图块定位单元可以被配置用于使得解码器实例能够确定比特流中的一个或多个另外的NAL单元,所述一个或多个另外的NAL单元是视频编码层VCLNAL单元并且包括一个或多个视频图块的编码媒体数据。因此,图块定位NAL单元可以包括用于标识包括与图块定位单元相关联的视频图块的编码媒体数据的一个或多个VCL NAL单元的信息。
在实施例中,比特流被格式化为HEVC比特流或其扩展。
在实施例中,图块定位信息中的至少部分可以被包含在一个或多个补充增强信息SEI消息中。在实施例中,SEI消息被嵌入在比特流中。在实施例中,一个或多个SEI消息可以包括一个或多个图块标识符和/或一个或多个边界标识符。因此,代替图块定位单元或除了图块定位单元之外,还可以将图块定位信息作为SEI消息发信号通知给解码器。
在实施例中,图块定位信息和/或编码的媒体数据中的至少部分可以被包含在比特流中的NAL单元中,其中NAL单元中的至少部分包括NAL单元报头,NAS单元报头包括用于发信号通知解码器装置NAL单元属于哪个视频图块的信息。
在实施例中,其中生成输出视频帧可以包括:在输出帧缓冲器中分配用于存储第一视频图块的解码媒体数据的第一缓冲空间,以及与输出帧缓冲器中的第一缓冲空间相邻的用于存储第二视频图块的解码媒体数据的第二缓冲空间。
在实施例中,可以基于图块定位信息确定分配的缓冲空间的位置;和/或,基于比特流中的视频图块大小信息确定视频图块的缓冲空间的大小。
在实施例中,图块定位单元中的至少一个被配置为偏移图块定位单元,用于在输出视频帧中的两个视频图块之间创建偏移。在实施例中,偏移图块定位单元不包括对比特流中的媒体数据的引用。
在进一步的方面中,本发明可以涉及一种由视频编码器装置形成比特流的方法。
在实施例中,该方法可以包括:
将输出视频帧的一个或多个视频图块的媒体数据编码成一个或多个比特流部分,每个比特流部分包括与视频图块相关联的编码媒体数据,并且每个视频图块表示输出视频帧的不同区域,每个比特流部分可独立解码。
确定图块定位信息,图块位置信息包括一个或多个视频图块的图块标识符和与每个视频图块相关联的一个或多个边界标识符,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界,图块标识符和边界标识符被布置用于确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局,优选地,边界标识符被配置成标识图块图中的相邻视频图块;
形成比特流,比特流包括表示一个或多个视频图块的编码媒体数据和图块定位信息的比特流部分。
在实施例中,在对媒体数据编码之前执行确定图块定位信息。
在替代实施例中,确定图块定位信息与对媒体数据编码并行地执行。
视频图块编码成比特流部分的任一方式都各自与图块标识符和至少一个边界标识符相关联。图块和边界标识符被布置用于被用来确定视频图块的空间布局。这可以以如说明书中进一步详述的各种方式联完成。
在进一步的实施例中,比特流随后被封装在合适的数据容器中。在优选实施例中,根据ISOBMFF格式将比特流封装在数据容器中。
在一个方面中,本发明可以涉及一种视频解码装置,包括:计算机可读存储介质,其具有利用其实现的程序的至少部分;以及计算机可读存储介质,其具有利用其实现的计算机可读程序代码,以及耦合到计算机可读存储介质的处理器,优选地是微处理器,其中响应于执行计算机可读程序代码,处理器被配置成执行可执行操作,包括:接收比特流,比特流包括多个比特流部分,比特流部分包括与一个或多个视频图块相关联的编码媒体数据,所述一个或多个视频图块中的每个视频图块表示输出视频帧中的不同区域,视频图块的编码媒体数据被配置为是可独立解码的;接收包括图块标识符和边界标识符的图块定位信息,图块标识符标识属于预定形状(优选地,矩形形状)的视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界;基于图块标识符和边界标识符确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局;以及,基于一个或多个视频图块的解码媒体数据和图块图生成输出视频帧。
在进一步的实施例中,视频解码装置适于(例如,配置成)执行如上定义的要由解码装置执行的比特流处理步骤中的任何步骤。
在一个方面中,本发明可以涉及一种视频编码装置,包括:计算机可读存储介质,其具有利用其实现的程序的至少部分;以及计算机可读存储介质,其具有利用其实现的计算机可读程序代码,以及耦合到计算机可读存储介质的处理器,优选地是微处理器,其中响应于执行计算机可读程序代码,处理器被配置成执行可执行操作,包括:
将输出视频帧的一个或多个视频图块的媒体数据编码成一个或多个比特流部分,每个比特流部分包括与视频图块相关联的编码媒体数据,并且每个视频图块表示输出视频帧的不同区域,每个比特流部分是可独立解码的;
确定图块定位信息,图块定位信息包括一个或多个视频图块的图块标识符和与每个视频图块相关联的一个或多个边界标识符,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界,图块标识符和边界标识符被布置用于确定图块图,图块图定义在输出视频帧中的一个或多个视频图块的空间布局,其中边界标识符被配置成标识图块图中的相邻视频图块;
形成比特流,比特流包括表示视频图块的编码媒体数据的比特流部分和图块定位信息。
在进一步的实施例中,视频编码设备适于执行上述方法和/或详细描述中定义的比特流形成步骤中的任何步骤。
本公开中描述的本发明还可以被用于描述平铺视频的视频图块的相对位置,其可以使用HTTP自适应流式传输协议(诸如MPEG DASH)在流式传输空间平铺视频的上下文中使用。
在该情况下,源视频文件的视频帧可以根据平铺布置来在空间上划分为图块,并且与不同图块相关联的视频数据可以作为不同文件被存储在存储介质(例如服务器)上。客户端设备(例如,HTTP自适应流式传输客户端)可以被配置成请求服务器将视频数据作为不同的图块流传输(流式传输)到客户端,并且将图块流的视频数据处理成输出视频帧以供显示。
可以使用所谓的清单文件,以便向客户端设备发信号通知关于不同的图块流之间的空间关系。例如,可以在清单文件中定义由四个(或更多个)图块流形成的2x2图块马赛克的空间关系,使得客户端能够请求图块流并相应地处理图块流的视频数据。在实施例中,清单文件可以是如从ISO/IEC 23009标准(MPEG DASH标准)已知的媒体呈现描述(MPD)。
在实施例中,可以利用描述新坐标系的新方案标识符来扩展从MPEG DASH标准已知的现有空间关系描述(SRD),该新方案标识符基于如本公开中所描述的边界标识符方案。这样,诸如DASH客户端的HTTP自适应流式传输客户端可以被通知关于比特流中的图块的空间关系。
在实施例中,SupplementalProperty和/或EssentialProperty描述符可以被用于向DASH客户端发信号通知比特流支持基于边界标识符布置的视频图块。在实施例中,可以将@schemeldUri设置为“urn:mpeg:dash:srd:relative:4-connected:2016”,以便向DASH客户端提供与包含空间对象相关联的相对空间关系信息,这里是AdaptationSet。
因此,上述清单文件可以被存储在客户端设备的非暂时性计算机可读存储介质上,其中客户端设备被配置成基于清单文件处理视频图块中的每个的视频流,其中清单文件包括计算机可读数据,该计算机可读数据包括用于标识多个图块流的多个图块流标识符,其中每个图块流与一个或多个边界标识符相关联,其中所述图块中的每个的一个或多个边界标识符定义了一个图块相对于清单文件中定义的一个或多个其他图块的位置。
客户端设备可以使用清单文件中的信息,以便请求和处理图块流。特别地,客户端设备可以使用清单文件中的图块流标识符(例如,URL)来请求一个或多个网络节点,例如一个或多个媒体服务器,以将图块流传输到客户端设备。客户端设备可以使用清单文件中的SRD信息来处理不同图块流的视频数据。该处理可以包括将不同图块流的媒体数据解码为不同图块流的视频帧,并将不同图块流(属于一个呈现时间实例)的视频帧缝合到输出视频帧中以供显示。
在一些实施例中,可以基于支持空间平铺的编解码器对视频数据进行编码。例如,HEVC标准支持HEVC图块,其中视频帧在空间上被划分为图块的网格。对这些HEVC图块进行编码,使得图块中的每个图块可以由微处理器的不同核处理。可以对与HEVC图块相关联的媒体数据进行编码,使得它们对相同视频帧的其他图块的媒体数据不具有任何空间解码依赖性。此外,对与图块相关联的媒体数据进行编码,使得它们对较早或未来视频帧的其他图块的媒体数据不具有任何时间解码依赖性。在那种情况下,每个HEVC图块的视频数据可以被存储为媒体源上的HEVC图块轨道,即HEVC图块文件。这些图块轨道可以具有基于ISO/IEC14496-12 ISO基本媒体文件格式(ISOBMFF)或ISO/IEC 14496-15 ISO基本媒体文件格式中的NAL单元结构化视频的传输的数据容器格式。在那种情况下,内容处理设备应该包括支持图块的HEVC客户端,图块可以将所请求的HEVC图块流解码成单个视频帧。
本发明还可以涉及一种计算机程序产品,其包括软件代码部分,所述软件代码部分被配置用于当在计算机的存储器中运行时,执行根据以上所描述的过程步骤中的任一个的方法步骤。
将参考附图进一步说明本发明,所述附图将示意性地示出根据本发明的实施例。将理解,本发明不以任何方式被限于这些具体实施例。
附图说明
图1A-1C描绘了根据本发明的实施例的用于解码基于图块的比特流的解码系统的示意图。
图2A-2C图示了根据本发明的实施例的基于图块定位信息的图块图的形成。
图3示意性地根据本发明的实施例的图块图的形成。
图4描绘了根据本发明的实施例的编码器装置的示例。
图5描绘了根据本发明的实施例的解码器装置的示例。
图6描绘了根据本发明的各种实施例的与不同形状的图块相关联的边界标识符的概念。
图7描绘了根据本发明的各种实施例的与不同形状的图块相关联的边界标识符的概念。
图8A-8C描绘了根据本发明的实施例的图块图和相关联的平铺输出视频帧。
图9A和9B描绘了根据本发明的实施例的图块图和相关联的平铺输出视频帧。
图10描绘了在HEVC标准中使用的NAL单元之间的关系的示意图。
图11描绘了根据本发明的实施例的TPS与其他NAL单元的关系。
图12描绘了根据本发明的实施例的基于图块的比特流的数据格式。
图13描绘了根据本发明的实施例的客户端设备的清单文件。
图14描绘了图示可以与本公开中描述的实施例一起使用的示例性数据处理系统的框图。
具体实施方式
本公开中的实施例使得能够实现灵活比特流分解,例如,在编码域中分解成表示编码的视频图块的位流部分,其不影响解码过程。这样的比特流分解允许不同的比特流部分由不同的解码器实例独立地和并行地处理,所述不同的解码器实例例如不同的硬件解码器或被配置成并行执行多个解码器实例的硬件解码器。
特别地,本公开中的实施例定义了编码方案和比特流格式,其中比特流中的编码视频数据被组织在视频图块(例如感兴趣的区域)中。每个视频图块被链接到元数据,包括用于向解码器发信号通知视频图块相对于解码器的输出视频帧缓冲器中的其他视频图块的相对位置的定位信息。基于可以向解码器发信号通知解码器两个图块是否具有相邻边界(边缘)的一个或多个边界标识符来描述视频图块的相对位置。
根据本发明的编码方案和比特流格式使得解码器的比特流解析器能够:解析包括表示视频图块的编码媒体数据的比特流部分和与编码视频图块相关联的图块定位信息的比特流,以提取形成输出视频帧的图块的图块定位信息,基于定位信息确定图块图,基于图块图配置输出视频帧缓冲器,解码视频图块的编码媒体数据以及基于图块图中的信息将解码的视频图块存储到输出视频帧缓冲器中。
因此,比特流中的图块的图块定位信息可以向解码器发信号通知输出视频帧中的图块的相对位置。使用无坐标方案表示这些图块的相对位置。特别地,视频流中的图块位置信息定义了图块相对于彼此的位置,而输出帧中图块的位置是绝对位置。这样的绝对位置可以例如以像素单位坐标来表示。
通过引入标识图块的边界的边界标识符的概念,使得能够实现图块图中的相邻图块的相对定位。边界标识符可以被用于确定相邻图块,即具有相邻边界的图块。
比特流部分的序列可以表示被用于来自输出视频帧的视频图块的编码媒体数据。比特流中的这样的比特流部分的序列可以被称为元帧。可以基于一个或多个元帧定界符来标识比特流中的元帧的位置。
图1A-1C描绘了根据本发明的实施例的用于解码基于图块的比特流的解码装置的示意图。特别地,图1A描绘了解码器装置100,其包括比特流解析器104、一个或多个解码器处理器106、以及用于缓冲解码的视频数据的一个或多个缓冲器108、116。解码器装置可以进一步包括图块图生成器110、缓冲器大小计算器112和用于配置一个或多个输出视频帧缓冲器116的输出缓冲器分配器114。输出视频帧缓冲器的输出可以被耦合到渲染引擎,用于向用户显示视频帧。
可以将基于图块的比特流102馈送到比特流解析器104的输入。图1B中更详细地图示了所述(da)这样的基于图块的视频比特流的示例。基于图块的比特流102可以包括比特流的部分,其中每个比特流部分可以包括表示输出视频帧的视频图块的编码的媒体数据1221-4和相关联的图块定位信息1201-4
图1C描绘了由解码器装置生成的输出视频帧128的示例。如该图中所示,输出视频帧可以包括(在这样的情况下为四个)解码器装置的一个或多个输出帧缓冲器中的视频图块1261-4。因此,视频图块表示输出视频帧中的区域。包括这样的视频图块的视频帧可以被称为平铺视频帧。
在实施例中,每个视频图块可以与图块定位单元相关联。这里,图块定位单元(TPU)可以包括图块标识符1241-4或用于标识比特流中的视频图块的信息,使得解码器能够将至少一个图块定位单元链接到比特流中的至少一个视频图块。
例如,图1B中的图块标识符1244可以将图块定位单元4 1204与比特流中的编码视频图块4 1224链接。图块定位单元可以进一步包括一个或多个边界标识符1251-4,用于标识由图块定位单元中的图块标识符标识的视频图块的一个或多个边界。在实施例中,边界标识符可以与图块的一个边界相关联。在另一个实施例中,边界标识符可以与形成图块的角的图块的(至少)两个边界相关联。在实施例中,与两个边界相关联的这样的边界标识符可以被定义为角边界标识符。下面更详细地描述边界标识符的示例。
由解码器装置使用图块定位单元的边界标识符,以便确定图块图,图块图定义了在平铺输出视频帧中视频图块如何相对于彼此来定位。
视频图块的编码视频数据可以与视频元数据相关联,所述视频元数据例如关于分辨率、颜色方案和由解码器需要以用于解码视频图块的视频数据并基于解码的视频数据形成视频帧的任何其他参数的信息。
比特流可以被格式化为逻辑数据单元,使得视频图块和图块定位单元的编码的媒体数据可以由比特流解析器解析,并且使得可以从比特流高效地提取具体信息,例如图块定位单元和/或与一个图块相关联的视频数据。例如,在实施例中,可以基于所谓的网络抽象层(NAL)单元来格式化比特流。具体地,视频数据可以被格式化为VCL NAL单元,并且视频元数据和定位单元可以被格式化为非VCL NAL单元。下面更详细地描述这样的NAL单元的示例。
比特流解析器可以从比特流中提取视频图块的编码视频数据(简称为“编码视频图块”),并将它们馈送到解码器处理器106,所述解码器处理器106被配置成执行一个或多个解码器实例。在实施例中,解码器处理器是支持多个解码器实例的执行的硬件解码器处理器。例如,硬件解码器处理器可以包括多个图形处理单元(GPU)。这样,不同视频图块的编码视频数据可以由不同的解码器实例或图形处理单元来解码。
在实施例中,在不同视频图块之间不存在解码依赖性,使得可以在不需要其他视频图块的视频数据的情况下解码一个视频图块的编码视频数据。这样,不同的解码实例可以并行地对编码视频图块进行解码,使得可以实现高解码效率。
在解码的视频图块108被复制到输出视频帧缓冲器116中之前,解码器处理器可以对编码的视频图块(在该示例中为四个)和(临时)缓冲器(与之相关联的视频数据)解码。
在实施例中,可以基于常规的解码方案对编码视频图块中的每个进行解码。
类似地,比特流解析器可以提取与视频图块相关联的图块定位单元,并将图块定位单元1201-4馈送到图块图生成器110。图块图生成器可以使用信息图块定位单元(例如,图块标识符和一个或多个边界标识符)来生成所谓的图块图,即输出视频帧中的视频图块的空间布局。图块图可以表示以视频样本单元(例如,像素单元)表示的输出视频帧中的视频图块的空间布置。换句话说,当基于解码的图块构建输出视频帧时,图块图向解码器发信号通知比特流中的视频图块应如何相对于彼此定位。在实施例中,视频图块的视频数据可以包括关于视频图块的大小的信息(元数据)(以像素为单位)。替代地,和/或另外,图块定位单元可以包括关于视频图块的大小的信息(元数据)(以像素为单位)。
为此,图块图生成器可以基于不同图块定位单元的边界标识符来定义视频图块的空间布置。例如,在实施例中,在这些边界的边界标识符匹配的情况下,图块图生成器可以确定由两个视频图块的图块ID标识的两个视频图块的边界是相邻边界。在两个边界标识符符满足某规则情况下,边界标识符匹配。例如,在实施例中,图块图生成器可以确定如果两个图块定位单元包括相同的边界标识符,则所述两个图块具有相邻的边界。
另外,基于比特流中的图块定位单元和/或元数据,缓冲器大小计算器112可以确定输出缓冲器的大小。可以通过对针对图块图中的每个图块的缓冲器空间的要求求和来计算(空)输出缓冲器的大小。生成输出缓冲器分配信息,使得解码器可以配置缓冲器大小,使得可以基于图块图将图块存储在输出缓冲器中。这样,缓冲器大小信息由输出缓冲器分配器114使用,以便在缓冲存储器中分配输出视频帧缓冲器116。基于图块图,源自解码器处理器的解码图块108被复制在输出视频帧缓冲器116中的特定空间位置处。此后,解码器系统可以将在图块图中标识并且由解码器处理器解码的解码图块复制到输出视频帧缓冲器中。一旦将在图块图中标识的所有图块的视频数据复制到输出缓冲器中(从而形成平铺的视频帧),解码器就可以发信号通知渲染引擎118以显示平铺的视频帧126,如图1C中所示。
据认为,图1A-1C仅描绘了缓冲过程的一种可能实现。例如,为了避免对每个图块需要临时缓冲器,可以根据图块图立即将每个解码图块存储在输出缓冲器中。
图2A-2C图示了根据本发明的实施例的基于图块定位信息的图块图的形成。具体地,图2A描绘了两个图块定位单元2021、2,每个图块定位单元包括图块标识符2041、2或用于将图块定位单元链接到视频图块的媒体数据的信息。此外,图块标识符可以包括用于标识图块的边界的边界标识符2061、2
在图2A中,边界标识符被图形地图示为位于(矩形)图块定位单元的边界处的点,该点根据其指代的视频图块的(矩形)形状成形。这样的边界由(唯一的)边界标识符值标识。例如,在图2A中,第一图块定位单元2021包括指代矩形第一视频图块2081的第一图块标识符2041,并且针对第一视频图块的南边界定义了第一边界标识符2061。类似地,第二图块定位单元2022包括指代矩形第二视频图块2082的第二图块标识符2042,并且针对第二视频图块的北边界定义了第二边界标识符2062
可以从比特流提取图块定位单元,并且图块图生成器可以确定第一图块定位单元的第一边界标识符值与第二图块定位单元的第二边界标识符值匹配。因此,因为图块定位单元共享公共边界标识符,所以图块图生成器能够确定输出视频帧包括两个相邻视频图块,其中第一图块的南边界(边界)触及第二图块的北边界(边界)。缓冲器大小计算器可以进一步基于与图块的视频数据相关联的元数据来确定第一和第二视频图块的大小。基于第一和第二视频图块的大小,输出缓冲器分配器可以分配足够大的输出缓冲器210,使得可以基于图块图构建输出视频帧。
此外,如图2B中所示,图块图可以将输出缓冲器空间划分为针对第一视频图块的第一缓冲空间2121和针对第二视频图块的第二缓冲空间2122。在解码视频图块之后,可以将每个图块的解码视频数据复制到输出视频帧缓冲器中的分配缓冲空间中。
当复制到输出视频帧缓冲器的分配缓冲空间时,视频数据形成输出视频帧的元帧2081、2,所述元帧被形成在视频帧缓冲器中,如图2C中所示。比特流可以包括元帧信息,用于向解码器发信号通知比特流中的哪些比特流部分属于元帧。
如图2A-2C中所示的图块定位单元和边界标识符的概念可以基于任何类型的图块形状(例如,六边形、三角形等)扩展到任何类型的图块布置。可以使用多个边界标识符以便发信号通知更复杂的平铺布置(镶嵌(tessellations))。
图3示意性地根据本发明的实施例的图块图的形成。在该示例中,在比特流中发信号通知四个图块定位单元3021-4。在图3的示例中,第一图块定位单元3021和第二图块定位单元3022共享相同的边界标识符值137c5828-852f 304,从而向图块图生成器发信号通知第一图块(第一图块定位单元指代)的北边界(边界)图块与第二图块(第二图块定位单元指代)的南边界(边界)相邻。以相同的方式,第一图块定位单元3021和第三图块定位单元3023共享相同的边界标识符值ee5b3edf-0ce2 306,从而发信号通知第一图块的西边界与第三图块的东边界相邻。
第四定位单元3024包括分别与四个边界标识符标识符相关联的四个定义的边界标识符3081-4。如图3中所示,这些边界标识符都不匹配第一、第二和第三定位单元的边界标识符标识符。因此,在第四图块(第四定位单元指代)与其他图块之间不存在表达的空间关系。该场景的最终渲染将由以视频应用级别的考虑来确定。假设使用单个屏幕来渲染与该图块图相关联的内容,则不同的呈现可能性可能是可能的,例如:
- 丢弃图块4并呈现图块1、2和3;
- 丢弃图块1、2和3并展示图块4;
- 以这样的方式呈现图块4和图块1、2和3,使得图块4被隔离并显示在其他图块旁边。
在实施例中,为了在基于图块定位单元的多个组合是可能的情况下加速图块图的生成或消除图块图的歧义,边界标识符可以与参考空间(例如,输出视频缓冲空间)中的取向相关联。例如,如图3中所示,输出视频缓冲器可以定义矩形参考空间,所述矩形参考空间具有由取向标识符(例如,标识取向的标识符值,例如北、东、南和西)标识的侧。在那种情况下,图块定位单元可以包括取向信息,使得——当构建图块图时——图块定位单元可以基于取向信息在参考空间中定位。
例如,图块定位单元的边界标识符或边界标识符中的至少一个边界标识符可以与取向标识符相关联。这样的取向标识符可以定义在图块图的参考空间中的例如南、东、北、西的取向,使得解码器知道如何在矩形输出缓冲器中取向矩形视频图块。矩形视频图块的北边界可以与输出视频帧缓冲器的矩形参考空间的边界对齐。
这样,与边界标识符相关联的取向标识符(例如,将边界定作为图块的北侧的标识符)使得解码器能够复制输出视频帧缓冲器中的特定取向中的视频图块的媒体数据。
边界标识符需要是唯一的直到某点,以防止图块图中的边界标识符的冲突。有两个参数要考虑;范围(例如,帧、帧的组、整个视频序列等),对于所述范围,边界标识符是唯一的,以及在给定范围中可以呈现多少边界标识符。通常,范围越大并且标识符越多,标识符的唯一性必须越高。基于该观察,表1提供了合适的边界标识符的一些场景,其中假设的是图块图可以包括最多为100个图块定位单元:
Figure DEST_PATH_IMAGE002A
表1- 边界标识符的示例。
当需要匹配的边界标识符的数量是很大的时,可以应用快速匹配技术。例如,边界标识符的第一部分(将在上下文中指定)可以标识边界标识符的组,使得可以加速匹配过程。
图4描绘了根据本发明的实施例的编码器装置的示例。
编码过程可以以定义图块坐标4061-n的视频图块构建器设备404开始,所述图块坐标4061-n可以由视频平铺功能使用,该功能被配置成将一个或多个源视频402的视频帧划分成多个视频图块4071-n(感兴趣的区域)。可以选择视频图块以便形成输出视频帧的N个视频图块的空间布置。这样,可以选择N个视频图块的媒体数据并将其馈送到编码器装置的输入中。在实施例中,编码器装置可以包括多个编码器处理器或编码器实例。在实施例中,编码器装置可以被配置成启动N个编码器实例,每个视频图块一个编码器实例。在另一实施例中,视频图块的至少第一集合的媒体数据由至少第一编码器实例编码,并且视频图块的至少第二集合的媒体数据由至少第二编码器实例编码。
编码器处理器4081-n可以随后将媒体数据(即,视频图块的音频/视频(AV)数据)编码成单独的(N)比特流部分,其中每个比特流部分表示独立编码的视频图块4091-n,所述视频图块4091-n可以被临时存储在缓冲器中。这里,独立编码意味着在不同视频图块的视频数据之间不存在编码依赖性。换句话说,一个视频图块的媒体数据可以由解码器实例解码,而不需要其他视频图块的媒体数据。
可以使用任何已知的编解码器(例如AVC、SVC、HEVC、VP9等)或未来的编解码器方案来对视频数据编码。此外,媒体数据可以与如在虚拟现实应用中使用的常规2D媒体数据或全向视频数据相关。例如,视频图块可以包括与全向视频数据的球面投影有关的视频数据。
当生成图块坐标时,视频图块构建器设备可以基于构建输出参阅帧的视频图块的一个或多个边界的边界标识符来确定视频图块相对于彼此的相对位置。描述相对位置的信息可以被称为图块位置信息,并且因此包括标识视频图块的图块标识符和与视频图块相关联的一个或多个边界标识符。
在实施例中,图块位置信息(的至少部分)可以被包含在图块定位单元中,其中图块定位单元与包括图块标识符和一个或多个边界标识符的视频图块相关联。输出参阅帧中的视频图块的图块定位单元可以被配置成形成图块图,所述图块图表示输出视频帧中的视频图块的空间布局,如例如上面参考图1-3解释的那样。
图块位置信息可以被转发到比特流聚合器410,比特流聚合器410将N个比特流部分和图块位置信息组合(合并)成一个基于图块的视频比特流412。
如下面将更详细描述的,基于图块的视频比特流可以由比特流聚合器设备基于图块位置信息来格式化,使得解码器设备能够标识表示比特流中不同编码视频图块的比特流部分,并高效地从比特流中提取编码视频图块。
图块位置信息,特别是包括图块标识符和一个或多个边界标识符的图块定位单元,可以在比特流中以相对高的级别(例如以NAL单元级别(如例如在AVC或HEVC视频编码标准中使用))被定义,使得该信息对于解码器设备的比特流解析器来说是可以容易地可访问的。这样,解码器设备可以容易地从比特流提取与输出视频帧相关联的图块定位单元,基于图块定位单元中的信息构建图块图并相应地处理(解码)媒体数据。
为了生成图块定位信息,所述图块定位信息包括图块定位单元,所述图块定位单元包括用于描述图块之间的空间关系的边界标识符,图块定位单元与所述图块相关联,图块构建器可以执行以下步骤:
- 确定或接收平铺视频帧的布局;
- 确定针对平铺视频帧中的每个图块的图块坐标;
- 基于一个或多个视频源的一个或多个视频帧来确定图块,每个图块与图块标识符相关联;
- 将一个或多个边界标识符分配给平铺视频帧的一个或多个图块的边界;
- 如果第一和第二边界是相邻边界,则在第一图块的第一边界标识符和第二图块的第二边界标识符之间提供预定关系;
- 在平铺视频帧中形成与图块相关联的图块定位单元,图块定位单元至少包括图块标识符和由图块标识符标识的图块的一个或多个边界标识符。
图5描绘了根据本发明的实施例的解码器装置的示例。解码装置可以执行解码处理,该解码处理以解码器装置在输入处接收基于图块的视频比特流502开始,所述视频比特流502包括视频图块和用于在输出视频帧缓冲器中相对于彼此定位视频图块的图块定位信息。比特流解析设备504可以解析比特流,即分析比特流的语法和结构(例如,根据NAL单元和元帧),并且确定元帧中所需的视频图块的数量,以便形成(平铺的)输出视频帧。
然后,解码器装置可以通过将元帧中的视频图块的每个编码媒体数据分割成单独的比特流部分(“图块比特流”)来分解比特流,其中每个比特流部分包括视频图块的编码媒体数据和相关联的元数据。具体地,比特流分离器可以从比特流中提取比特流部分5081-n,并将比特流部分中的每个馈送到解码器实例5101-n的输入。在实施例中,视频图块的至少第一集合的媒体数据可以由至少第一解码器实例来解码,并且视频图块中的至少第二集合的媒体数据可以由至少第二解码器实例来解码。优选地,比特流部分中的至少部分由不同的解码器实例并行解码。图块布置设备516可以使用视频图块5121-n的解码视频数据来基于图块定位信息以与参考图1和2描述的类似的方式在输出视频缓冲器中构建平铺输出视频帧。
如图5中所示,图块定位信息的使用允许将比特流高效分解成单独的可独立解码的比特流,所述比特流表示可以由多个解码器实例(例如一个或多个单独的硬件GPU、被配置成执行多个解码器实例或硬件和软件解码器的组合的GPU)并行处理的视频图块。在实施例中,解码器实例可以实现例如HEVC等视频编码标准的常规操作(逆变换、信号预测、运动补偿等)。例如,使用图块位置信息,图块布置设备生成表示图块相对于彼此的空间布局的图块图。由图块布置设备使用图块图来将解码的元帧复制到输出帧缓冲器中。据认为,如上参考图4和5所述的编码器和解码器系统的功能元件可以被实现为集成设备,例如被实现为微处理器或芯片组。替代地,功能元件可以被实现为单独的或至少部分地相互作用的设备。例如,编码器系统的一个或多个编码过程可以由一个或多个服务器系统执行。类似地,解码系统的不同部分可以由在不同设备上运行的不同软件和/或硬件应用来执行。
尽管本公开中的图块的示例在2D空间中定义,其中图块表示在2D平面中的具有边界和角的多边形,但是本发明不限于此。在最一般的情况下,图块可以是由N维空间的镶嵌定义的多面体。例如,在3D中,“图块”可以表示立方体或任何多面体。在那种情况下,相邻图块可以被定义为具有相邻表面的两个立方体。因此,在那种情况下,边界标识符与图块的至少一个表面相关联。此外,图块不一定是矩形的,而是可以是任意形状,例如圆形、八边形、六边形等……在进一步的实施例中,图块的镶嵌可以包括不同形状的图块。
图6描绘了根据本发明的各种实施例的用于不同形状的图块的边界标识符的示例。
图块602、608、614的边界606、612、618可以与位于图块的给定边界的线段平分线605、611、617上的边界标识符604、610、616相关联。在边界到边界的平铺中(如在常规平铺中),可以基于相邻边界的边界标识符之间的预定函数关系来确定相邻边界。例如,在实施例中,功能关系可以是这样的,使得两个相邻边界的图块标识符是相同的。
图7描绘了另一种类型的边界标识符的示例,所述一种类型的边界标识符可以被称为角边界标识符。对于图块702、706的角706、712(也可以被称为顶点),可以确定角平分线705、711。角边界标识符704、710是位于图块的区域内的该平分角上的边界标识符。因此,角边界标识符标识形成图块的角的图块的边界(在2D情况下为两个边界)。
边界标识符可以被用于定义相邻的图块而不管选择的镶嵌,因为两个相邻的图块彼此具有至少一个相邻的边界。然而,在某些情况下,也可以使用如图7中描绘的角边界标识符。针对角边界标识符的典型场景是矩形形状图块的描述,其中图块的角的一个或多个角边界标识符可以被用于描述共享相邻角的对角相邻的图块。除非另外具体指出,否则在本公开中,术语边界标识符还包括角边界标识符。
图8A-8D描绘了根据本发明的实施例的图块图和相关联的平铺输出视频帧。具体地,图8A和8B图示了两个图块图,其包括基于边界标识符相对于彼此取向的多个图块定位单元(TPU)。这些图块图可以定义具有不同大小的视频图块的空间布置,如图8C中所示。图8A和8B图示了可以如何基于包括边界标识符的图块定位单元来定义这样的图块图。
如图8A中所示,图块定位单元6的东边界和图块定位单元5的西边界,图块定位单元14的东边界和图块定位单元9的西边界,以及图块定位单元12的东边界和图块定位单元15的西边界未被定义为相邻边界,使得当由解码器系统使用该图块图以在输出视频帧缓冲器中分配缓冲空间时,可以定义用于大尺寸(高分辨率)视频图块的较大尺寸的缓冲区域,该缓冲区域不会干扰与其他视频图块相关联的其他分配的缓冲区域。
例如,当使用该图块图用于在输出视频缓冲器中分配缓冲区域时,可以按数字顺序处理图块定位单元。因此,如图8B中所示,以图块定位单元1开始,可以在输出视频帧缓冲器中分配缓冲空间1,其具有与图块定位单元1指代的视频图块的像素大小相匹配的大小。这里,输出缓冲器的左直角可以被定义为原点8021,用于分配与第一图块定位单元相关联的元帧。此后,可以处理图块定位单元2,其中解码器系统确定视频图块1的东侧边界与视频图块2的西侧边界相邻。在那种情况下,缓冲空间8021的原点可以在与缓冲空间1的长度匹配的距离上在东方向上平移。缓冲空间2可以在缓冲空间1旁边分配,并且具有缓冲空间1的相同大小。可以对所有其他图块定位单元重复该过程。如图8B中所示,当处理图块定位单元6时,解码器系统将在原点8021处分配缓冲空间6。由于视频图块6具有与视频图块2相邻的边界,因此,为视频图块6分配的缓冲空间刚好在为视频图块2分配的缓冲空间的最左下位置的下面的位置处开始,如图8B中所示。
据认为,可以以不同方式处理图块图中的图块定位单元的序列。例如,以光栅扫描顺序处理图块定位单元,使得图块定位单元13和16将在图块定位单元12之后被处理,这也是可能的。
此外,据认为,可以使用导致相同的平铺输出视频帧的其他图块图。在图8B中描绘了用于定义视频马赛克的边界标识符的另一种可能组合。注意,在该实施例中,在图块定位单元9和14之间,在图块定位单元5和6之间以及在图块定位单元15和12之间没有公共边界标识符。这意味着与这些图块定位单元相关联的图块不被标识为相邻图块。因此,当在输出视频缓冲器中分配缓冲空间时,这些空间将在分配缓冲区域6时彼此“滑动”,使得它能够存储视频图块6的视频数据。
在另外的实施例中,一个或多个图块定位单元可以被配置用于在两个视频图块之间创建偏移位置。这样的图块定位单元可以被称为偏移图块定位单元。参考图9A和9B描述了这样的图块定位单元的更详细示例,其描绘了根据本发明的实施例的图块图和相关联的图块输出视频帧。
图9B描绘了包括视频图块912(帧2)的最终渲染平铺视频帧,视频图块912(帧2)沿着另一视频图块914(帧1)的边界以偏移来布置。偏移由输出视频帧中的偏移区域916表示。基于关于相邻视频图块的惯例,似乎如图9B中描绘的视频图块布置将是不可能的。然而,可以定义不与视频数据(即比特流中的实际视频净荷)相关联的图块定位单元。因此,偏移图块定位单元可以包括关于偏移区域的大小的信息(以像素为单位),使得解码器可以在输出视频帧缓冲器中为偏移区域分配缓冲空间,从而获得图9B的视频帧布置。
描述具有偏移区域的平铺视频帧布置的图块图的示例在图9A中示出。如上面解释的那样,可以在具有与偏移区域匹配的像素尺寸的比特流中发信号通知偏移图块定位单元0 904,使得可以分配缓冲空间但不将图块定位单元链接到实际视频数据。相反,图块定位单元1 902和图块定位单元2 906各自具有与图块定位单元0相邻的边界。通过匹配边界标识符90812和91012来发信号通知每个相邻边界。因此,当处理图9A的图块图时,解码器系统可以分配与图块视频帧1和2匹配的缓冲空间,如图9B中所示。在这里,左下部分将被视为“缺失数据”,例如其将被转换为具有特定颜色(诸如绿色或黑色)的像素。
在实施例中,可以旋转图块定位单元,例如,正方形图块定位单元可以被旋转超过90度。当旋转图块定位单元时,相应的视频图块帧也将被旋转。
可以允许或不允许图块定位单元的旋转。如果不允许旋转,则仅允许某些边界标识符组合,即针对4连接矩形图块系统的北/南(N/S)和东/西(E/W)(即基于边界标识符),以及针对8连接矩形图块系统的N/S、N-E/S-W、E/W、N-W/S-E(即基于边界和角边界标识符)。图块定位单元的所有边界与输出视频帧中的所有其他图块边界平行或与其成直角。其他边界标识符组合可以被认为是不兼容数据(例如,在基于比特流的信令方案的情况下不兼容比特流)。
如果允许旋转,则存在发信号通知哪个图块定位单元需要相对于另一个旋转的需要。因此,需要针对每个图块定位单元发信号通知用于旋转能力。在实施例中,可以认为所有图块定位单元都是锚定的,并且每图块的可选标志可以发信号通知用于旋转的能力。在另一个实施例中,图块定位单元可以能够旋转,并且每图块的可选标志可以发信号通知图块定位单元不旋转的事实。在4连接系统中,表2定义了可以通过相应的相邻边界关联向解码器发信号通知的旋转:
Figure 401196DEST_PATH_IMAGE003
表2- 4连接系统中的旋转。
在8连接系统中,表3定义了可以通过相应的相邻边界关联向解码器发信号通知的旋转:
Figure 144767DEST_PATH_IMAGE004
表3- 8连接系统中的旋转。
当发信号通知旋转时,两个图块定位单元中的一个可以被锚定而另一个能够旋转(否则数据被认为是不兼容的)。当处理图块图时,被锚定(不能旋转)的图块可以将该性质传输到被附接的相邻图块定位单元。
当组成图块图时,针对每个图块定位单元的最终旋转角度是已知的。按照惯例,视频图块帧的顶部边界(边缘)可以与图块定位单元的北边界(边缘)相关联。因此,最终输出帧中的每个图块以与它们对应的旋转图块定位单元相同的角度旋转。
对于某些角度,例如45°和135°,图块的旋转需要对最终渲染输出视频帧中的图块的像素值进行插值。
本发明可以被实现为HEVC标准的扩展。当前的HEVC视频编码标准ISO/IEC 23008-2定义非VCL NAL单元以发信号通知包括多媒体数据(例如音频-视频(AV)数据)的VCL NAL单元的性质和特性。视频编码层(VCL)NAL单元是针对包含视频样本的NAL单元的集合术语,或者由HEVC标准认为是NAL单元。
图10描绘了例如在HEVC和AVC标准中使用的NAL单元之间的关系。非VCL NAL单元包括与视频数据相关联的元数据。这些非VCL NAL单元包括图片参数集(PPS)1006、序列参数集1004(SPS)和视频参数集1002(VPS),其中一个PPS指代一个SPS,一个SPS又指一个VPS。视频数据被包含在VCL NAL单元中,其被称为切片段1008。切片段中的视频数据基于其所指代的PPS、SPS和VPS中的信息被解码。
为了引入参考图1-9描述的图块定位信息的概念,可以定义新的NAL单元,特别是新的非VCL NAL单元。该NAL单元可以称为平铺定位参数集(TPS)。图11描绘了根据本发明的实施例的TPS与其他NAL单元、特别是VPS和SPS的关系。图块定位参数集的语法在表4中被定义:
Figure 924505DEST_PATH_IMAGE005
表4- 图块定位参数集语法。
TPS可以包括以下参数中的一个或多个:
-
Figure 116452DEST_PATH_IMAGE007
:TPS依赖于其的VPS NAL单元ID;
-
Figure 258720DEST_PATH_IMAGE009
:该图块定位参数集的Id;
-
Figure 550024DEST_PATH_IMAGE011
:位于图块的北边界处的边界标识符;
-
Figure 144953DEST_PATH_IMAGE013
:位于图块的东边界处的边界标识符;
-
Figure DEST_PATH_IMAGE015
:位于图块的南边界处的边界标识符;
-
Figure DEST_PATH_IMAGE017
:位于图块的西边界处的边界标识符。
表4中定义的TPS可以与包括四个边界的矩形视频图块相关联,其中每个边界可以与边界标识符相关联。边界标识符可以与取向信息相关联,用于向解码器发信号通知关于矩形输出视频帧缓冲器中的视频图块的取向。表4的TPS是根据本发明的TPS的仅一个示例。例如,TPS可以描述具有除常规矩形形状之外的另一形状(例如三角形)的视频图块。
因此,TPS包括用于标识该TPS的标识符,指向一个或多个其他非VCL NAL单元(特别是VPS NAL单元)的至少一个指针,以及用于标识矩形图块的边界(在该示例中)的边界标识符标识符的集合。
如图11中所示,每个TPS 11041、2包括视频图块标识符tps_id(指向一个或多个非VCL NAL单元,例如SPS和PPS,以及包括属于一个视频图块的编码媒体数据的一个或多个切片段11101、2,)和一个或多个边界标识符。此外,TPS包括VPS标识符tps_vps_id,其将视频图块(TPS、SPS、PPS和切片段)链接到VPS(由VPS_id标识),VPS是在输出视频帧中定义视频图块的非VCL NAL单元。
视频图块的一个或多个非VCL NAL单元,例如,SPS和PPS,可以包括关于视频图块的视频数据的进一步的信息。例如,SPS 11061、2可以包括关于图块的视频数据的颜色格式、比特深度和样本分辨率等的信息。PPS 11081、2可以包括关于图片解码的信息,其包括关于图块的视频数据的熵编码的信息等。VPS可以包括用于编码视频比特流的一般参数,该编码视频比特流包括多个数量的视频图块(如由不同的TPS NAL单元定义)。
如果可能值的范围被认为是不足的,或者相反,相对于具有不同唯一值的实际需要是过多的,则边界标识符的存储器大小(在示例中是16比特的无符号整数)可以被适配(参见
Figure DEST_PATH_IMAGE019
Figure DEST_PATH_IMAGE021
针对边界标识符标识符的其他示例)。
鉴于TPS,可以根据下表5中的信息更新SPS的定义。也就是说,SPS指向TPS而不再指向VPS。
Figure DEST_PATH_IMAGE022
表5- 序列参数集语法。
如HEVC标准中所定义的,每个非VCL NAL单元(PPS、SPS和VPS)最初在解码过程的操作的开始时被认为是不活动的。另外,该规范定义了在解码过程的操作期间在任何给定时刻,最多一个PPS、SPS和VPS被认为是活动的。
HEVC标准指定当PPS(具有pps_pic_parameter_set_id的特定值)是不活动的并且由编码切片段NAL单元(使用等于pps_pic_parameter_set_id值的slice_pic_parameter_set_id的值)引用时,它被激活。继而,由PPS引用的SPS被激活,并且类似地,由SPS引用的VPS也被激活。
当PPS、SPS或VPS被激活时,它解激活当前激活的相同类型的非VCL NAL单元(当存在时)。因此,对于解码器,始终只有一个PPS、SPS和VPS被激活。
根据这些规则,在由激活的图块定位参数集激活最多一个PPS和SPS的意义上,图块定位参数集的使用改变了当前HEVC规范。仍然应最多激活一个VPS。此外,图块定位参数集的被激活的方式与PPS、SPS或VPS相同。但是,无法以与当前非VCL NAL单元相同的方式解激活图块定位参数集。因此,可能存在最大数量的活动的定义TPS。可以以绝对方式定义该值,或者针对比特流与其兼容的简档设置。
如图11中所示,通过在NAL单元级处管理视频图块,可以容易地操纵用于构建输出帧(元帧)的视频图块的数量和/或序列。例如,通过使用图块定位NAL单元从比特流中过滤掉周围图块,表示6x4平铺全景视图的比特流可以容易地转换为更小的4x3中心视图。
代替在比特流级别处发信号通知元数据,例如以图块定位参数集的形式的NAL单元,可以使用图块定位描述消息。图块定位描述消息可以被定义为补充增强信息(SEI)消息,其包括用于定义图块和与这样的图块相关联的边界标识符所需的信息。表6中给出了SEI消息语法的示例:
Figure DEST_PATH_IMAGE023
表6- 图块定位描述消息语法。
图块定位描述SEI消息可以包括以下参数:
-
Figure DEST_PATH_IMAGE025
:图块的SPS NAL单元,其又与PPS相关联,PPS又与切片段相关联。
Figure DEST_PATH_IMAGE027
:位于图块的北边界处的边界标识符;
-
Figure DEST_PATH_IMAGE029
:位于图块的东边界处的边界标识符;
-
Figure DEST_PATH_IMAGE031
:位于图块的南边界处的边界标识符;
-
Figure DEST_PATH_IMAGE033
:位于图块的西边界处的边界标识符。
如表6中所示,SEI消息可以(以与TSP类似的方式)包括一个或多个边界标识符,其中边界标识符可以与用于定义参考空间中的视频图块的取向的取向信息相关联。
该新的SEI消息可以是139类型的并且是前缀SEI消息。因此,可以如下面在下表7中那样修改解析SEI消息的过程。也就是说,在针对类型139的解析算法中添加了新的测试语句。
Figure DEST_PATH_IMAGE034
表7- 图块定位描述SEI消息的解析过程。
当基于比特流中的边界标识符(使用例如TPS或图块描述消息)实现具有相对于彼此的位置的视频图块的概念时,解码器需要标识构建一个元帧的所有切片,即,共享相同的呈现时间戳的所有视频图块帧。为此,从HEVC标准中已知的图片顺序计数参数可以通过将该参数设置为属于相同元帧的所有切片的相同值来使用。图片顺序计数参数是HEVC标准中的现有参数,其是按HEVC比特流的序列顺序分配给每个帧的整数。该参数从0到2max-poc循环,其中max_poc在比特流本身中发信号通知。
另外,属于相同元帧的切片需要在比特流中以连续顺序定位,以促进解码过程并提供解码过程的较低延迟。如果在比特流中切片彼此远离定位,则切片的解码与其显示之间的时间将确实增加。因此,输出视频帧缓冲器的大小也将增加。
然而,仅使用图片顺序计数可能有一些缺点。当组成来自不同视频源的比特流时,需要重写源自一个视频源的比特流的图片顺序计数参数,以便与源自一个或多个其他视频源的一个或多个比特流对齐。另外,在第一元帧的结尾和新的第二元帧的开始处,可能发生连续图片顺序计数参数中的变化。因此,检测元帧的所有切片中的变化需要解析每个连续切片以便提取图片顺序计数,这增加了比特流组装过程的复杂性。
因此,在实施例中,使用显式元帧定界符来缓解这些问题。元帧定界符可以具有标记新元帧的开始的NAL单元的结构。这样的定界符的存在还意味着当前元帧的结束(如果存在)。这样,通过仅提取这些定界符并且不必解析所有切片,可以容易地实现与给定视频图块相关联的切片的提取或插入。
另外,在实施例中,可以通过元帧顺序计数(类似于每个图片顺序计数)来标识元帧。元帧顺序计数参数可以具有(新)NAL单元的结构。该NAL单元类型可以具有如表8中指定的值41(取自保留的值的范围)。
Figure DEST_PATH_IMAGE036
表8- 元帧定界符的新NAL单元类型。
元帧定界符的语法在下表9中提供:
Figure DEST_PATH_IMAGE037
表9- 元帧定界符的语法。
这里,参数
Figure DEST_PATH_IMAGE039
为当前元帧指定了模
Figure DEST_PATH_IMAGE041
的元帧顺序计数。
Figure DEST_PATH_IMAGE043
语法元素的长度是
Figure DEST_PATH_IMAGE045
比特。
Figure DEST_PATH_IMAGE047
的值可以在0到
Figure DEST_PATH_IMAGE049
的范围中选择,包含0和
Figure 809765DEST_PATH_IMAGE049
。该定义基于现有的
Figure DEST_PATH_IMAGE051
参数并适用于元帧。参数
Figure DEST_PATH_IMAGE053
被添加在视频参数集中,如表10中所定义的那样:
Figure DEST_PATH_IMAGE054
表10- 视频参数集语法。
这里,参数
Figure DEST_PATH_IMAGE056
指定在元帧顺序计数的解码过程中使用的变量
Figure DEST_PATH_IMAGE058
的值,如下所示:
Figure DEST_PATH_IMAGE060
Figure DEST_PATH_IMAGE062
的值应在0到12的范围内,包括0和12。该定义基于现有的
Figure DEST_PATH_IMAGE064
并适用于元帧。
图12描绘了根据本发明的实施例的基于图块的比特流的数据格式。如图12中所示,比特流可以包括非VCL NAL单元,其包括例如VPS、TPS、SPS和PPS非VCL NAL单元以及TPS非VCL NAL单元,如参考图11描述的那样。另外,比特流可以包括VCL NAL单元,VCL NAL单元包括以切片的形式的视频数据和元帧定界符(非VCL单元),元帧定界符发信号通知解码器切片属于元帧(即输出视频帧中的图块)。
为了从视频比特流中产生图块比特流或将新图块比特流合并到现有视频比特流中,解码器或编码器应该能够容易地标识属于每个视频图块的NAL单元。为此,可以在NAL单元的报头中使用新的nuh_tile_id参数。可以基于表11中的信息来定义报头信息nal_unit_header:
Figure DEST_PATH_IMAGE065
表11- NAL单元报头的语法。
这里,参数nuh_tile_id可以等于0,以便标识与图块概念无关的NAL单元,并且因此对图块比特流的合并和提取操作必须是不变的。例如,当提取给定的图块比特流时,必须在新的图块比特流中复制具有nuh_tile_id等于0的NAL单元。另一方面,非零值标识属于给定图块的NAL单元。具有给定nuh_tile_id的TPS NAL单元提供给定图块定位单元的性质(参见表4-图块定位参数集语法)。这样,HEVC比特流的所有NAL单元可以通过简单地解析其报头,即NAL单元报头,被分类为属于某个图块或不属于某个图块。
可以在比特流中发信号通知的进一步的信息包括比特流中的最大图块的数量。该形成对于解码器的一致性和实现可能是必要的。在实施例中,可以将最大图块的数量作为NAL单元中的参数、特别是作为视频参数集中的参数被发信号通知给解码器。
本发明可以基于现有的编码标准(例如HEVC标准或从其导出的编码标准)来实现。替代地,它可以形成新编码方案的基础,其中图块和元帧的概念可以在视频比特流语法中以高级别实现。
当基于HEVC标准实现时,本发明需要对当前HEVC标准的一些改变(扩展),诸如解码器架构(例如,多个常规HEVC解码过程,每个视频图块或视频图块的子集一个HEVC解码过程),SEI消息图块描述的创建。
在实施例中,视频比特流可以被存储在合适的数据容器中(例如,通过执行已知的封装过程)。特别地,视频数据可以以ISOBMFF格式被存储(封装在基于ISOBMFF的数据容器中)。ISOBMFF(ISO/IEC 14496-12)标准定义了其中可以存储媒体流(即音频 - 视频数据)的轨道的概念。因此,在实施例中,图块比特流可以被存储为单独的轨道。
与前述实施例类似,可以在MPEG-2 TS数据结构中传输相同的元数据。
在进一步的实施例中,本公开中描述的数据格式,即其中基于图块定位单元定义图块图的数据格式,用于定义平铺视频马赛克中的视频图块的相对位置(如例如参考图2、3、8和9描述的那样),也可以在基于诸如MPEG DASH的HTTP自适应流式传输协议的流式传输空间平铺视频的上下文中使用。
源视频文件的视频帧可以根据平铺布置在空间上划分在图块中,并且与不同图块相关联的视频数据可以作为不同文件存储在存储介质(例如服务器)上。客户端可以被配置成请求服务器将视频数据作为不同的图块流传输(流式传输)到客户端,并且将图块流的视频数据处理成输出视频帧以供显示。
可以使用所谓的清单文件,以便向客户端设备发信号通知关于不同的图块流之间的空间关系。例如,可以在清单文件中定义由四个(或更多个)图块流形成的2x2图块马赛克的空间关系,使得客户端能够请求图块流并相应地处理图块流的视频数据。在实施例中,清单文件可以是如从ISO/IEC 23009标准(MPEG DASH标准)已知的媒体呈现描述(MPD)。
在实施例中,可以利用描述新坐标系的新方案标识符来扩展从MPEG DASH标准已知的现有空间关系描述(SRD),该新方案标识符基于如本公开中所描述的边界标识符方案。这样,DASH客户端可以被通知关于比特流中的图块的空间关系。
在实施例中,SupplementalProperty和/或EssentialProperty描述符可以被用于向DASH客户端发信号通知比特流支持基于边界标识符布置的视频图块。在实施例中,可以将@schemeldUri设置为“urn:mpeg:dash:srd:relative:4-connected:2016”,以便向DASH客户端提供与包含空间对象相关联的相对空间关系信息,这里是AdaptationSet。下表12提供了与该新方案id相关联的语法的示例。
Figure DEST_PATH_IMAGE067
表12- SupplementalProperty和/或EssentialProperty描述符的语法。
如参考表12描述的示例基于四个边界标识符。然而,本发明不限于此,并且可以容易地扩展到更多边界标识符,包括例如角边界标识符。下表13提供了MPD的示例,该MPD被配置成向DASH客户端发信号通知相对位置信息:
Figure DEST_PATH_IMAGE068
Figure DEST_PATH_IMAGE069
表13- 包括基于边界的SRD的示例MPD。
表13中的上述MPD可以定义图块图,如图13中所示。该图块图包括四个图块定位单元TPU 1、TPU 2、TPU 4、TPU 5,所述四个图块定位单元TPU 1、TPU 2、TPU 4、TPU 5基于边界标识符13021、2相对于彼此定位。例如,如MPD中所示,左上方视频图块基于SRD
Figure DEST_PATH_IMAGE071
、值=“0,200,201,202,101”来定义,其向DASH客户端发信号通知视频图块与四个边界标识符相关联,该四个边界标识符即北边界id 200、东边界id 201、南边界id 202和西边界id 101(如表12中示出并且在图13中图示的那样)。在该特定情况下,每图块定位单元四个边界标识符(例如TPU 1包括边界标识符200、101、102、103)。
如图13中所示,2x2马赛克可以由TPU 1和TPU 2的公共边界标识符102、TPU 1和TPU 2的公共边界标识符101、TPU 2和TPU 5的公共边界标识符202以及TPU 4和TPU 5的公共边界标识符303定义。
虽然一些边界标识符不具有匹配的边界标识符,但它们仍在MPD中被发信号通知。此外,将需要匹配边界标识符的仅三个集合来描述该视频马赛克。例如,可以在不改变平铺输出视频帧的情况下移除TPU 2和TPU 5的边界标识符202。然而,如果在该情况下移除了图块5,那么使得图块4与图块1和2不相关。因此,图13中描绘的边界标识符冗余可以提供对平铺视频马赛克的更鲁棒的描述,并且避免对在后面的阶段添加更多边界标识符的需要,例如当媒体编排用例需要分割马赛克时。
因此,上述清单文件可以被存储在客户端设备的非暂时性计算机可读存储介质上,其中客户端设备被配置成基于清单文件处理视频图块中的每个视频图块的视频流,其中清单文件包括计算机可读数据,该计算机可读数据包括用于标识多个图块流的多个图块流标识符,其中每个图块流与一个或多个边界标识符相关联,其中所述图块中的每个图块的一个或多个边界标识符定义一个图块相对于清单文件中定义的一个或多个其他图块的位置。
客户端设备可以使用清单文件中的信息,以便请求和处理图块流。特别地,客户端设备可以使用清单文件中的图块流标识符(例如,URL)来请求一个或多个网络节点,例如一个或多个媒体服务器,以将图块流传输到客户端设备。客户端设备可以使用清单文件中的SRD信息来处理不同图块流的视频数据。该处理可以包括将不同图块流的媒体数据解码为不同图块流的视频帧,并将不同图块流(属于一个呈现时间实例)的视频帧缝合到输出视频帧中以供显示。
在一些实施例中,可以基于支持空间平铺的编解码器对视频数据进行编码。例如,HEVC标准支持HEVC图块,其中视频帧在空间上被划分为图块的网格。对这些HEVC图块进行编码,使得图块中的每个图块可以由微处理器的不同核处理。可以对与HEVC图块相关联的媒体数据进行编码,使得它们对相同视频帧的其他图块的媒体数据不具有任何空间解码依赖性。此外,对与图块相关联的媒体数据进行编码,使得它们对较早或未来视频帧的其他图块的媒体数据不具有任何时间解码依赖性。在那种情况下,每个HEVC图块的视频数据可以被存储为媒体源上的HEVC图块轨道,即HEVC图块文件。这些图块轨道可以具有基于ISO/IEC14496-12 ISO基本媒体文件格式(ISOBMFF)或ISO/IEC 14496-15 ISO基本媒体文件格式中的NAL单元结构化视频的传输的数据容器格式。在那种情况下,内容处理设备应该包括支持图块的HEVC客户端,图块可以将所请求的HEVC图块流解码成单个视频帧。自然地,根据本发明的用于基于图块图、图块标识符和边界标识符生成输出视频帧的方法然后应当优先于用于生成输出视频帧的已知的基于HEVC的后解码过程。例如,HEVC解码器装置可以被配置使得当其在传入比特流中检测到根据本发明的图块定位信息的存在时,它将应用根据本发明的方法,而不是常规的HEVC后解码过程。
图14是图示可以在如本公开中描述中使用的示例性数据处理系统的框图。数据处理系统1400可以包括通过系统总线1306耦合到存储器元件1404的至少一个处理器1402。因此,所述数据处理系统可以将程序代码存储在存储器元件1404内。另外,处理器1402可以执行经由系统总线1406从存储器元件1404访问的程序代码。在一个方面中,数据处理系统可以被实现为适用于存储和/或执行程序代码的计算机。然而应当理解的是,可以以能够执行本说明书内描述的功能的包括处理器和存储器的任何系统的形式来实现该数据处理系统1300。
存储器元件1404可以包括一个或多个物理存储器设备,诸如例如,本地存储器1408和一个或多个大容量储存设备1410。本地存储器可以指代通常在程序代码的实际执行期间使用的随机存取存储器或(一个或多个)其他非持久存储器件。大容量存储设备可以被实现为硬盘驱动器或其他持久数据存储设备。处理系统1300还可以包括一个或多个高速缓存(未示出),其提供至少一些程序代码的暂时性储存以便减少必须在执行期间从大容量储存设备1410检索程序代码的次数。
描绘为输入设备1412和输出设备1414的输入/输出(I/O)设备可选地可以被耦合到数据处理系统。输入设备的示例可以包括但不限于例如键盘、指示设备(诸如鼠标)等。输出设备的示例可以包括但不限于例如监视器或者显示器、扬声器等。输入设备和/或输出设备可以直接地或者通过中间I/O控制器被耦合到数据处理系统。网络适配器1416还可以被耦合到数据处理系统以使得其能够通过中间私有或公共网络变得耦合到其他系统、计算机系统、远程网络设备和/或远程存储设备。网络适配器可以包括:数据接收器,其用于接收由所述系统、设备和/或网络传输到所述数据的数据;以及数据发送器,其用于将数据传输到所述系统、设备和/或网络。调制解调器、电缆调制解调器和以太网卡是可以与数据处理系统1450一起使用的不同的类型的网络适配器的示例。
如在图14中描绘的那样,存储器元件1404可以存储应用1418。应当理解,数据处理系统1400可以进一步执行可以促进应用的执行的操作系统(未示出)。被以可执行的程序代码的形式实现的应用可以由数据处理系统1300(例如,由处理器1402)执行。响应于执行应用,数据处理系统可以被配置成执行在本文中进一步详细地描述的一个或多个操作。
在一个方面中,例如,数据处理系统1400可以表示客户端数据处理系统。在该情况下,应用1418可以表示客户端应用,所述客户端应用当被执行时,将数据处理系统1400配置成执行在本文中参考“客户端”所描述的各种功能。客户端的示例可以包括但不限于个人计算机、便携式计算机、移动电话等。
在另一方面中,数据处理系统可以表示服务器。例如,数据处理系统可以表示(HTTP)服务器,在该情况下,应用1418当被执行时可以将数据处理系统配置成执行(HTTP)服务器操作。在另一方面中,数据处理系统可以表示如在本说明书中指代的模块、单元或者功能。
在本文中使用的术语仅用于描述特定实施例的目的并且不旨在是对本发明的限制。如在本文中使用的那样,除非上下文另外清楚地指示,否则单数形式“一”、“一个”和“该”旨在也包括复数形式。将进一步理解,当在该说明书中使用时,术语“包括”和/或“包括了”指定陈述的特征、整体、步骤、操作、元件和/或部件的存在,但是不排除一个或多个其他特征、整体、步骤、操作、元件、部件和/或其组的存在或者添加。
在以下的权利要求中的所有构件或者步骤加功能元件的对应的结构、材料、动作和等同物旨在包括用于与如具体地要求保护的其他要求保护的元件组合地执行功能的任何结构、材料或者动作。本发明的描述已经被提供用于说明和描述的目的,但是不旨在是穷尽的或者限于以公开的形式的本发明。在不脱离本发明的范围和精神的情况下,许多修改和变型对本领域普通技术人员而言将是显而易见的。实施例被选择和描述以便最好地解释本发明的原理和实际的应用,并且使得本领域的其他的普通技术人员能够针对具有如适于考虑的特定使用的各种修改的各种实施例来理解本发明。

Claims (12)

1.由解码器装置处理比特流的方法,包括:
由解码器装置接收比特流,比特流包括多个比特流部分,比特流部分包括与视频图块相关联的编码媒体数据,一个或多个视频图块中的每个视频图块表示输出视频帧中的不同区域,视频图块的编码媒体数据被配置为是可独立解码的;
由解码器装置接收包括图块标识符和边界标识符的图块定位信息,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界;
由解码器装置基于图块标识符和边界标识符来确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局,其中确定图块图包括:基于第一视频图块和第二视频图块各自的边界标识符来确定第一视频图块和第二视频图块是否具有相邻边界;如果第一视频图块的边界标识符和第二视频图块的边界标识符之间的预定关系存在,则第一视频图块和第二视频图块具有相邻边界;第一边界标识符和第二边界标识符之间的预定关系包括:第一边界标识符的至少部分与第二边界标识符的至少部分匹配;以及,
在确定图块图之后,由解码器装置基于一个或多个视频图块的解码媒体数据和图块图来生成输出视频帧,其中,所述生成包括:在输出视频帧缓冲器中分配第一缓冲空间,所述第一缓冲空间被配置用于存储第一视频图块的解码媒体数据,并在输出视频帧缓冲器中分配与第一缓冲空间相邻的第二缓冲空间,用于存储第二视频图块的解码媒体数据,基于比特流中的视频图块大小信息来确定第一缓冲空间和第二缓冲空间的大小。
2.根据权利要求1所述的方法,其中,生成输出视频帧包括:
解码器装置从比特流提取比特流部分;
解码器装置向第一解码器实例提供包括至少第一视频图块的编码媒体数据的至少第一比特流部分,以及向第二解码器实例提供包括至少第二视频图块的编码媒体的至少第二比特流部分,其中第一视频图块不同于第二视频图块;
第一和第二解码器实例将至少第一比特流部分的至少部分和至少第二比特流部分的至少部分解码成解码的媒体数据;并且,
根据由图块图定义的空间布局,将解码的媒体数据定位在解码器装置的输出视频帧缓冲器中。
3.根据权利要求2所述的方法,图块定位信息进一步包括取向信息,取向信息使得解码器装置能够将视频图块的预定边界与输出视频帧缓冲器的预定边界对齐。
4.根据权利要求1-3中任一项所述的方法,其中,比特流包括元帧,元帧包括比特流中的比特流部分,所述比特流包括形成单个输出视频帧的视频图块的编码媒体数据。
5.根据权利要求4所述的方法,其中,比特流中的元帧的开始和/或结束由解码器装置确定,比特流中的一个或多个元帧定界符的一个基础;或者,其中比特流中的元帧的开始和/或结束由解码器装置基于一个或多个元帧顺序计数器确定。
6.根据权利要求1-3中任一项所述的方法,其中图块定位信息中的至少部分被包含在比特流中,图块定位单元是非视频编码层非VCL NAL单元,包括标识视频图块的图块标识符和用于标识图块定位单元指代视频图块的一个或多个边界的一个或多个边界标识符。
7.根据权利要求6所述的方法,其中确定图块图包括从比特流提取形成单个输出视频帧的视频图块的图块定位信息,并且基于所提取的图块定位信息中的边界标识符来标识相邻视频图块。
8.根据权利要求6所述的方法,其中,所述一个或多个图块定位单元被配置用于使得解码器实例能够确定比特流中的一个或多个另外的NAL单元,所述一个或多个另外的NAL单元是视频编码层VCL NAL单元,并且包括一个或多个视频图块的编码媒体数据。
9.根据权利要求1-3中任一项所述的方法,其中,比特流被格式化为HEVC比特流或其扩展;和/或,其中图块定位信息中的至少部分被包含在一个或多个补充增强信息SEI消息中。
10.根据权利要求1-3中任一项所述的方法,基于图块定位信息来确定第一和第二缓冲空间的位置。
11.一种视频解码装置,包括:
计算机可读存储介质,其具有利用其实现的程序的至少部分;以及,
计算机可读存储介质,其具有利用其实现的计算机可读程序代码,以及耦合到计算机可读存储介质的处理器,其中,响应于执行计算机可读程序代码,处理器被配置成执行可执行操作,包括:
接收比特流,比特流包括多个比特流部分,比特流部分包括与一个或多个视频图块相关联的编码媒体数据,一个或多个视频图块中的每个视频图块表示输出视频帧中的不同区域,视频图块的编码媒体数据被配置为是可独立解码的;
接收包括图块标识符和边界标识符的图块定位信息,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界;
基于图块标识符和边界标识符来确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局,其中确定图块图包括:基于第一视频图块和第二视频图块各自的边界标识符来确定第一视频图块和第二视频图块是否具有相邻边界;如果第一视频图块的边界标识符和第二视频图块的边界标识符之间的预定关系存在,则第一视频图块和第二视频图块具有相邻边界;第一边界标识符和第二边界标识符之间的预定关系包括:第一边界标识符的至少部分与第二边界标识符的至少部分匹配;以及,
在确定图块图之后,基于一个或多个视频图块的解码媒体数据和图块图来生成输出视频帧,其中,所述生成包括:在输出视频帧缓冲器中分配第一缓冲空间,所述第一缓冲空间被配置用于存储第一视频图块的解码媒体数据,并在输出视频帧缓冲器中分配与第一缓冲空间相邻的第二缓冲空间,用于存储第二视频图块的解码媒体数据,基于比特流中的视频图块大小信息来确定第一缓冲空间和第二缓冲空间的大小。
12.一种非暂时性计算机可读介质,用于存储程序,所述程序使计算机执行解码过程,所述解码过程包括:
接收比特流,比特流包括多个比特流部分,比特流部分包括与视频图块相关联的编码媒体数据,一个或多个视频图块中的每个视频图块表示输出视频帧中的不同区域,视频图块的编码媒体数据被配置为是可独立解码的;
接收包括图块标识符和边界标识符的图块定位信息,图块标识符标识属于视频图块的编码媒体数据,图块标识符与一个或多个边界标识符相关联,边界标识符标识由图块标识符标识的视频图块的至少一个边界;
基于图块标识符和边界标识符来确定图块图,图块图定义输出视频帧中的一个或多个视频图块的空间布局,其中确定图块图包括:基于第一视频图块和第二视频图块各自的边界标识符来确定第一视频图块和第二视频图块是否具有相邻边界;如果第一视频图块的边界标识符和第二视频图块的边界标识符之间的预定关系存在,则第一视频图块和第二视频图块具有相邻边界;第一边界标识符和第二边界标识符之间的预定关系包括:第一边界标识符的至少部分与第二边界标识符的至少部分匹配;以及,
基于一个或多个视频图块的解码媒体数据和图块图来生成输出视频帧,其中,所述生成包括:在输出视频帧缓冲器中分配第一缓冲空间,所述第一缓冲空间被配置用于存储第一视频图块的解码媒体数据,并在输出视频帧缓冲器中分配与第一缓冲空间相邻的第二缓冲空间,用于存储第二视频图块的解码媒体数据,基于比特流中的视频图块大小信息来确定第一缓冲空间和第二缓冲空间的大小。
CN201780056540.3A 2016-07-14 2017-07-05 视频编码 Active CN109691103B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16179530 2016-07-14
EP16179530.7 2016-07-14
PCT/EP2017/066844 WO2018011042A1 (en) 2016-07-14 2017-07-05 Video coding

Publications (2)

Publication Number Publication Date
CN109691103A CN109691103A (zh) 2019-04-26
CN109691103B true CN109691103B (zh) 2023-02-28

Family

ID=56464047

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780056540.3A Active CN109691103B (zh) 2016-07-14 2017-07-05 视频编码

Country Status (5)

Country Link
US (1) US11943452B2 (zh)
EP (1) EP3485643B1 (zh)
CN (1) CN109691103B (zh)
ES (1) ES2963845T3 (zh)
WO (1) WO2018011042A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10742999B2 (en) * 2017-01-06 2020-08-11 Mediatek Inc. Methods and apparatus for signaling viewports and regions of interest
KR102390413B1 (ko) * 2017-03-03 2022-04-25 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
US10607623B2 (en) 2018-01-12 2020-03-31 Ribbon Communications Operating Company, Inc. Methods and apparatus for supporting communication of content streams using efficient memory organization
GB2572770B (en) * 2018-04-09 2022-11-02 Canon Kk Method and apparatus for encoding or decoding video data with frame portions
CN108737689A (zh) * 2018-04-27 2018-11-02 浙江大华技术股份有限公司 一种视频的拼接显示方法及显示控制设备
CN112703742B (zh) * 2018-09-14 2023-03-31 华为技术有限公司 视频译码中的分块指示
KR20210058947A (ko) * 2018-09-20 2021-05-24 샤프 가부시키가이샤 비디오 코딩에서 파라미터들을 시그널링하기 위한 시스템들 및 방법들
US11503308B2 (en) * 2018-10-02 2022-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Picture tile attributes signaled using loop(s) over tiles
WO2020117027A1 (ko) * 2018-12-07 2020-06-11 삼성전자 주식회사 타일 및 슬라이스를 이용하는 비디오 부호화 방법 및 복호화 방법, 및 타일 및 슬라이스를 이용하는 비디오 부호화 장치 및 복호화 장치
US11140403B2 (en) * 2018-12-20 2021-10-05 Tencent America LLC Identifying tile from network abstraction unit header
US11528538B2 (en) 2018-12-21 2022-12-13 Koninklijke Kpn N.V. Streaming volumetric and non-volumetric video
CN111835994B (zh) * 2019-04-16 2022-09-20 瑞昱半导体股份有限公司 多通道视频处理方法与系统
CN112135139B (zh) * 2019-06-24 2023-03-24 腾讯美国有限责任公司 对编码视频数据进行分区的方法、计算机系统及存储介质
US11589043B2 (en) * 2019-06-24 2023-02-21 Tencent America LLC Flexible slice, tile and brick partitioning
EP3761647A1 (en) 2019-07-05 2021-01-06 Tiledmedia B.V. Methods and devices for rendering a video on a display
EP4018655A4 (en) * 2019-08-19 2022-08-24 Telefonaktiebolaget Lm Ericsson (Publ) MULTIMEDIA DATA FLOW MANAGEMENT METHODS AND DEVICES
BR112022005448A2 (pt) * 2019-09-24 2022-06-21 Huawei Tech Co Ltd Métodos implementados por codificador, e decodificador, dispositivos de codificação de vídeo, e de produto de computador
CN110636372B (zh) * 2019-10-08 2022-02-25 未来电视有限公司 视频解码方法、视频播放装置、电子设备及存储介质
US11792432B2 (en) * 2020-02-24 2023-10-17 Tencent America LLC Techniques for signaling and identifying access unit boundaries
CN113453006B (zh) * 2020-03-25 2024-04-16 腾讯美国有限责任公司 一种图片封装方法、设备以及存储介质
US20210383122A1 (en) * 2020-06-05 2021-12-09 Electronics And Telecommunications Research Institute Method of processing immersive video and method of producing immersive video
KR102356037B1 (ko) * 2020-10-14 2022-02-07 성균관대학교산학협력단 다시점 360도 영상 스트리밍 방법 및 장치
CN114025172A (zh) * 2021-08-20 2022-02-08 北京旷视科技有限公司 视频帧的处理方法、装置和电子系统
US20230169621A1 (en) * 2021-12-01 2023-06-01 Huawei Technologies Co., Ltd. Compute shader with load tile

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637864A (zh) * 2013-10-14 2016-06-01 高通股份有限公司 视频译码中的并行处理的指示

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1862010A4 (en) * 2005-03-25 2011-08-17 Korea Electronics Telecomm HIERARCHICAL VIDEO ENCODING / DECODING METHOD FOR COMPLETE SCALE VARIABILITY AND APPARATUS THEREOF
JP5718456B2 (ja) 2010-05-25 2015-05-13 ヴィディオ・インコーポレーテッド 複数のカメラおよび複数のモニタを使用する拡張可能なビデオ通信用のシステムおよび方法
EP2602999A1 (en) 2010-08-06 2013-06-12 Panasonic Corporation Encoding method, display device, and decoding method
US9325999B2 (en) 2011-03-10 2016-04-26 Sharp Kabushiki Kaisha Video decoder for slices
US8767824B2 (en) * 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
JP6384650B2 (ja) 2011-08-25 2018-09-05 サン パテント トラスト 符号化方法、符号化装置、復号方法、および復号装置
US9584819B2 (en) 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
SI2697973T1 (sl) * 2012-04-16 2017-11-30 Hfi Innovation Inc. Postopek in naprava za zančno filtriranje preko meja rezine ali ploščice
US9161039B2 (en) 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
US9491457B2 (en) 2012-09-28 2016-11-08 Qualcomm Incorporated Signaling of regions of interest and gradual decoding refresh in video coding
US9467707B2 (en) 2013-03-05 2016-10-11 Qualcomm Incorporated Parallel processing for video coding
US9749627B2 (en) * 2013-04-08 2017-08-29 Microsoft Technology Licensing, Llc Control data for motion-constrained tile set
US9628792B2 (en) 2013-07-15 2017-04-18 Qualcomm Incorporated Cross-layer parallel processing and offset delay parameters for video coding
GB2516825B (en) * 2013-07-23 2015-11-25 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data using a generic signaling for coding dependencies
GB201318324D0 (en) 2013-10-15 2013-11-27 Design Bridge Ltd Visual display apparatus
US10694192B2 (en) * 2014-06-27 2020-06-23 Koninklijke Kpn N.V. HEVC-tiled video streaming
US9800898B2 (en) * 2014-10-06 2017-10-24 Microsoft Technology Licensing, Llc Syntax structures indicating completion of coded regions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637864A (zh) * 2013-10-14 2016-06-01 高通股份有限公司 视频译码中的并行处理的指示

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
22-4-2013 - 26-4-2013 ; MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11 MPEG2012,no.m29231》.2013, *
Jean Le Feuvre 等.《Support for efficient tile access in the HEVC File Format》.《MPEG MEETING *

Also Published As

Publication number Publication date
CN109691103A (zh) 2019-04-26
ES2963845T3 (es) 2024-04-02
EP3485643B1 (en) 2023-09-06
US11943452B2 (en) 2024-03-26
EP3485643A1 (en) 2019-05-22
US20190166376A1 (en) 2019-05-30
WO2018011042A1 (en) 2018-01-18

Similar Documents

Publication Publication Date Title
CN109691103B (zh) 视频编码
US11245926B2 (en) Methods and apparatus for track derivation for immersive media data tracks
JP7472220B2 (ja) 方法、プログラム、及びデバイス
US11457231B2 (en) Methods and apparatus for signaling spatial relationships for point cloud multimedia data tracks
JP6556126B2 (ja) ファイルの生成方法、ファイルの生成装置、及び、プログラム。
EP3466092B1 (en) Method, device, and computer program for encapsulating and parsing timed media data
EP3092796B1 (en) Method, device, and computer program for encoding inter-layer dependencies
KR102559862B1 (ko) 미디어 콘텐츠 전송을 위한 방법, 디바이스, 및 컴퓨터 프로그램
KR102320455B1 (ko) 미디어 콘텐트를 전송하는 방법, 디바이스, 및 컴퓨터 프로그램
US11218715B2 (en) Methods and apparatus for spatial grouping and coordinate signaling for immersive media data tracks
US20210105313A1 (en) Methods and apparatus for signaling a region in spatially grouped immersive media data tracks
JP2017515336A (ja) 分割タイムドメディアデータのストリーミングを改善するための方法、デバイス、およびコンピュータプログラム
GB2509953A (en) Displaying a Region of Interest in a Video Stream by Providing Links Between Encapsulated Video Streams
US11159811B2 (en) Partitioning of coded point cloud data
CN110832873A (zh) 用于针对虚拟现实应用程序发送信号通知视图信息的系统和方法
CN115396647B (zh) 一种沉浸媒体的数据处理方法、装置、设备及存储介质
WO2021176133A1 (en) An apparatus, a method and a computer program for volumetric video
JP2020516133A (ja) 仮想現実アプリケーションに対して最も関心のある領域に関連付けられた情報をシグナリングするためのシステム及び方法
WO2023169003A1 (zh) 点云媒体的解码方法、点云媒体的编码方法及装置
WO2023169004A1 (zh) 点云媒体的数据处理方法、装置、设备及介质
KR20220160646A (ko) 미디어 파일 캡슐화 방법, 미디어 파일 캡슐화 해제 방법 및 관련 디바이스

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
GR01 Patent grant
GR01 Patent grant