CN105027567A - 用于视频编码和解码的方法和装置 - Google Patents

用于视频编码和解码的方法和装置 Download PDF

Info

Publication number
CN105027567A
CN105027567A CN201480012813.0A CN201480012813A CN105027567A CN 105027567 A CN105027567 A CN 105027567A CN 201480012813 A CN201480012813 A CN 201480012813A CN 105027567 A CN105027567 A CN 105027567A
Authority
CN
China
Prior art keywords
picture
layer
prediction
designator
inter
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
CN201480012813.0A
Other languages
English (en)
Inventor
K·宇居尔
M·安尼克塞拉
J·莱内玛
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.)
Nokia Oyj
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
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 Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN105027567A publication Critical patent/CN105027567A/zh
Pending legal-status Critical Current

Links

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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • 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/103Selection of coding mode or of prediction mode
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/187Methods 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 scalable video layer
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

用于视频编码和解码的各种方法、装置和计算机程序产品。在一些实施例中,对第一层上具有第一分辨率的第一图片编码而没有层间预测;对第二层上具有第二分辨率的第二图片编码而没有层间预测;对第二层上具有第二分辨率的第三图片编码而没有层间预测并且没有在时间上参考在第二图片之前的图片。另外,对对应的指示编码。在一些实施例中,接收一个或多个指示以确定指代使用层间预测被编码的图片的从第一层到第二层的切换点是否存在,并且如果存在,则可以对第一层中在切换点之前的图片;与切换点相关联的图片;以及第二层中在切换点之后的图片解码。

Description

用于视频编码和解码的方法和装置
技术领域
本申请总体上涉及用于视频编码和解码的装置、方法和计算机程序。
背景技术
这一部分意在提供在权利要求中记载的本发明的背景或者环境。本文中的描述可以包括可被追求的概念,但并不一定是先前已经被构思或者被追求的概念。因此,除非本文中另外指出,否则这一部分中所描述的内容不是本申请中的描述和权利要求的现有技术并且也不允许通过包括在本部分中而被承认为现有技术。
视频编码系统可以包括将输入视频转换成适合用于存储/传输的压缩表示的编码器以及能够将压缩的视频呈现解压缩回可视形式的解码器。编码器可以丢弃原始视频序列中的一些信息以便以更紧凑的形式来表示视频,例如,以使得视频信息的存储/传输能够以与不丢弃相比可能需要的比特率更低的比特率。
可缩放视频编码是指编码结构,其中一个比特流可以包含以不同比特率、分辨率、帧速率和/或其他类型的可缩放性的内容的多个表示。可缩放比特流可以包括提供可用的最低质量视频的基本层以及在连同更低层一起被接收和解码时增强视频质量的一个或多个增强层。为了改善增强层的编码效率,该层的编码表示可以依赖于更低层。每个层连同其所有依赖性层是以某个空间分辨率、时间分辨率、质量水平、和/或其他类型的可缩放性的操作点的视频信号的一个表示。
当前研究和开发各种用于提供三维(3D)视频内容的技术。强烈的研究尤其专注于各种多视图应用,其中查看者从特定视角仅能够看到一对立体视频并且从不同的视角仅能够看到另一对立体视频。用于这样的多视图应用的最可行的方法之一已经被证明如下:其中仅向解码器侧提供有限数目的输入视图(例如单声道或者立体视频加一些补充数据)并且然后通过解码器来在本地渲染所有需要的视图以在显示器上显示。
在对3D视频内容编码时,可以使用视频压缩系统,诸如高级视频编码标准H.264/AVC或者H.264/AVC的多视图视频编码MVC扩展。
发明内容
一些实施例提供一种用于对视频信息编码和解码的方法。在一些实施例中,目的是使得能够使用可缩放视频编码扩展(诸如SHVC)来实现自适应分辨率变化。这可以通过在可缩放视频编码比特流中指示增强层中的仅某些类型的图片(例如RAP图片、或者使用不同的NAL单元类型指示的不同类型的图片)使用层间预测来完成。另外,可以在比特流中指示自适应分辨率变化操作,使得除了切换图片之外序列中的每个AU包含来自单个层的单个图片(其可以是或者可以不是基本层图片);并且发生切换的接入单元包括来自两个层的图片并且可以使用层间可缩放性工具。
上述编码配置可以提供一些优点。例如,通过使用这一指示,可以在具有可缩放扩展框架的视频会议环境中使用自适应分辨率变化;并且中间框(box)可以具有更大的灵活性以修整比特流和调整具有不同能力的端点(end points)。
在详细描述中提供本发明的示例的各个方面。
根据第一方面,提供了一种方法,包括:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,其中时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码、以及在使用层间预测但是不使用时间预测的情况下对第二图片编码的指示。
根据本发明的第二方面,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,其中时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码、以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
根据本发明的第三方面,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,其中时间预测使用来自第二层的图片用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码、以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
根据本发明的第四方面,提供了一种装置,包括:
用于在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码的装置;
用于使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码的装置,其中时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
用于在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码的装置;以及
用于指示编码的装置,该指示是在不使用层间预测的情况下对第一图片和第三图片编码、以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
根据本发明的第五方面,提供了一种方法,包括:
接收一个或多个指示以确定随机接入点图片的编码中是否已经使用层间预测、以及比特流中是否存在从第一层到第二层的切换点,其中如果存在切换点并且如果切换点指代使用层间预测被编码的图片,则所述方法还包括:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
根据本发明的第六方面,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点,其中所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得装置执行至少以下操作,如果切换点存在并且切换点指代使用层间预测被编码的图片,则:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
根据本发明的第七方面,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点,其中所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得装置执行至少以下操作,如果切换点存在并且切换点指代使用层间预测被编码的图片,则:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
根据本发明的第八方面,提供了一种装置,包括:
用于接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点的装置;
用于在切换点存在并且切换点指代使用层间预测被编码的图片的情况下,对第一层中在切换点之前的一个或多个图片解码、对与切换点相关联的一个或多个图片解码、以及对第二层中在切换点之后的一个或多个图片解码的装置。
根据第九方面,提供了一种方法,包括:
将具有第一分辨率的第一图片集合编码到第一表示中;
使用来自第一图片集合的帧间预测(inter predicted)并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码、以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片编码的指示。
根据第十方面,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
将具有第一分辨率的第一图片集合编码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码、以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片编码的指示。
根据第十一方面,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
将具有第一分辨率的第一图片集合编码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码、以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片编码的指示。
根据第十二方面,提供了一种方法,包括:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码、以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中对具有第二分辨率的第三图片集合解码。
根据第十三方面,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码、以及在使用层间预测而不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中对具有第二分辨率的第三图片集合解码。
根据第十四方面,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码、以及在使用层间预测而不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中对具有第二分辨率的第三图片集合解码。
附图说明
为了更完整地理解本发明的示例实施例,现在参考结合附图给出的以下描述,在附图中:
图1示意性地示出采用本发明的一些实施例的电子设备;
图2示意性地示出适合用于采用本发明的一些实施例的用户设备;
图3另外示意性地示出使用无线和/或有线网络连接的采用本发明的实施例的电子设备;
图4a示意性地示出编码器的一种实施例;
图4b示意性地示出根据一些实施例的空间可缩放性编码装置的一种实施例;
图5a示意性地示出解码器的一种实施例;
图5b示意性地示出根据本发明的一些实施例的空间可缩放性解码装置的一种实施例;
图6描绘可用作运动预测候选的当前块和五个空间邻居的示例;以及
图7描绘具有分辨率变化的图片流的示例;
图8示出包括两个图块(tile)的图片的示例;
图9是通用多媒体通信系统的图形表示;
图10图示自适应分辨率变化概念;
图11a到图11c图示利用自适应分辨率变化概念的分辨率变化的示例;
图12a图示当自适应集合中存在多于一个分辨率时使用多个自适应分辨率变化表示;
图12b到图12d图示用于不同的切换场景的已下载分段的示例;
图13图示具有不同特性的自适应分辨率变化表示的示例;
图14描绘通过HTTP表示的一些动态自适应流送(streaming)的一些细节;以及
图15描绘用于通过HTTP流送的简化的系统。
具体实施方式
下面,将在一个视频编码布置的情境中描述本发明的若干实施例。然而,应当注意,本发明不限于这一特定布置。实际上,不同的实施例在其中需要改进参考图片处理的任何环境中广泛地具有应用。例如,本发明可以应用于视频编码系统,如流送系统、DVD播放器、数字电视接收器、个人视频记录仪、个人计算机上的系统和计算机程序、手持式计算机和通信设备、以及网络元件(诸如转码器和在其中处理视频数据的云计算布置)。
下面,使用涉及(解)编码的约定来描述若干实施例,这表示实施例可以应用于解码和/或编码。
H.264/AVC标准由国际电信联盟(ITU-T)的电信标准化部门的视频编码专家组(VCEG)的联合视频小组(JVT)以及国际标准化组织(ISO)/国际电工技术委员会(IEC)的运动图片专家组(MPEG)来开发。H.264/AVC标准由这两个父标准化组织来发布,并且其被称为ITU-T推荐H.264和ISO/IEC国际标准14496-10,也被称为MPEG-4第10部分高级视频编码(AVC)。已经存在H.264/AVC标准的多个版本,每个都向规范集成新的扩展或者特征。这些扩展包括可缩放视频编码(SVC)和多视图视频编码(MVC)。
当前正在进行的有VCEG和MPEG的联合协作组-视频编码(JCT-VC)的高效视频编码(HEVC)标准化项目。
在描述H.264/AVC和HEVC时以及在示例实施例中,可以使用例如如H.264/AVC或者草拟HEVC中规定的用于算术运算符、逻辑运算符、关系运算符、按位运算符、赋值运算符和范围注释的一般注释。另外,可以使用例如如H.264/AVC或者草拟HEVC中规定的一般数学函数,并且可以使用例如如H.264/AVC或者草拟HEVC中规定的运算符的一般优先级顺序和执行顺序(从左到右或者从右到左)。
在描述H.264/AVC和HEVC时以及在示例实施例中,可以使用下面的描述符来规定每个语法(syntax)元素的解析过程。
-b(8):具有任何图案的比特串的字节(8比特)。
-se(v):具有首先左侧比特的有符号整数Exp-Golomb-编码的语法元素。
-u(n):使用n个比特的无符号整数。其中n是语法表格中的“v”,比特的数目按照依赖于其他语法元素的值的方式来变化。由来自被解释为具有首先写入的最高有效位的无符号整数的二进制表示的比特流的n个下一比特来规定用于这一描述符的解析过程。
-ue(v):具有首先左侧比特的无符号整数Exp-Golomb-编码的语法元素。
可以使用例如下面的表格来将Exp-Golomb比特串变换成代码编号(codeNum):
比特串 codeNum
1 0
0 1 0 1
0 1 1 2
0 0 1 0 0 3
0 0 1 0 1 4
0 0 1 1 0 5
0 0 1 1 1 6
0 0 0 1 0 0 0 7
0 0 0 1 0 0 1 8
0 0 0 1 0 1 0 9
…… ……
可以使用例如下面的表格来将对应于Exp-Golomb比特串的代码编号变换成se(v):
codeNum 语法元素值
0 0
1 1
2 -1
3 2
4 -2
5 3
6 -3
…… ……
在描述H.264/AVC和HEVC时以及在示例实施例中,可以如下规定语法结构、语法元素的语义(semantics)以及解码过程。可以用黑体(bold)类型来表示比特流中的语法元素。每个语法元素使用其名称(具有下划线字符的所有小写字母)来描述,可选地用其一个或两个语法种类来描述,并且使用用于其编码表示方法的一个或两个描述符来描述。解码过程根据语法元素的值并且根据先前解码的语法元素的值来工作。当在语法表格或者文本中使用语法元素的值时,其以规则(即非黑体)类型出现。在一些情况下,语法表格可以使用根据语法元素值得到的其他变量的值。这样的变量出现在语法表格或者文本中,用小写和大写字母的混合来命名并且没有任何下划线字符。得到以大写字母开始的变量用于对当前语法结构以及所有的附属语法结构解码。可以在用于后面的语法结构的解码过程中使用以大写字母开始的变量而没有涉及变量的原始语法结构。可以仅在其中得到它们的情境中来使用以小写字母开始的变量。在一些情况下,与其数值可互换地使用用于语法元素值或者变量值的“记忆性(mnemonic)”名称。有时,使用“记忆性”名称而没有任何关联的数值。文本中规定了值与名称的关联。根据通过下划线字符分开的一个或多个字母组来构造名称。每组以大写字母开始并且可以包含更多的大写字母。
在描述H.264/AVC和HEVC时以及在示例实施例中,可以使用下面的内容来规定语法结构。波形括号中包括的语句(statements)组是复合语句并且在功能上被处理作为单个语句。“while”结构规定条件是否为真的测试,并且如果为真,则重复地规定语句(或者复合语句)的评估直到条件不再为真。“do…while”结构规定评估语句一次,之后是条件是否为真的测试,并且如果为真,则规定语句的重复评估直到条件不再为真。“if…else”结构规定条件是否为真的测试,并且如果条件为真,则规定主要语句的评估,否则规定替选语句的评估。如果不需要任何替选的语句评估,则这一结构的“else”部分和相关联的替选语句被省略。“for”结构规定初始语句的评估,之后是条件的测试,并且如果条件为真,则规定主要语句的重复评估,之后是随后的语句,直到条件不再为真。
本章节中描述一些关键的定义、比特流和编码结构、以及H.264/AVC和HEVC的概念作为视频编码器、解码器、编码方法、解码方法以及比特流结构的示例,其中可以实现实施例。其中一些关键的定义、比特流和编码结构、以及H.264/AVC的概念与草拟HEVC标准中相同——因此,下面共同对其描述。本发明的方面不限于H.264/AVC或者HEVC,而是对于在其之上能够部分或者完全实现本发明的一个可能的基础来给出描述。
与很多较早的视频编码标准相似,H.264/AVC和HEVC中规定了比特流语法和语义以及用于无差错的比特流的解码过程。没有规定编码过程,但是编码器必须生成一致的比特流。可以使用假想参考解码器(HRD)来验证比特流和解码器一致性。标准包含帮助复制传输错误和损失的编码工具,但是这些工具在编码中的使用是可选的并且没有针对错误的比特流规定解码过程。
分别用于到H.264/AVC或者HEVC编码器的输入以及到H.264/AVC或者HEVC解码器的输出的初级单元是图片。在H.264/AVC和HEVC中,图片可以是帧或者字段(field)。帧包括亮度样本以及对应的色度样本的矩阵。字段是帧的替选样本行的集合并且可以在对源信号交错(interlace)时被用作编码器输入。在与亮度图片相比较时,可以对色度图片子采样。例如,在4:2:0的采样图案中,色度图片的空间分辨率是亮度图片沿着两个坐标轴的空间分辨率的一半。
可以将分区(partitioning)定义为集合到子集中的划分,使得集合的每个元素恰好是子集之一。可以将图片分区定义为图片到更小的非交叠单元的划分。可以将块分区定义为块到更小的非交叠单元(诸如子块)的划分。在一些情况下,可以认为术语“块分区”覆盖多个级别的分区,例如图片到切片(slice)的分区以及每个切片到更小的单元(诸如H.264/AVC的宏块)的分区。应当注意,相同的单元(诸如图片)可以具有多于一个分区。例如,可以将草拟HEVC标准的编码单元分区成预测单元,并且通过另一四叉树分离地将其划分成变换单元。
在H.264/AVC中,宏块是亮度样本的16x16块以及色度样本的对应的块。例如,在4:2:0的采样图案中,宏块每个色度分量包含色度样本的一个8x8块。在H.264/AVC中,图片被分区成一个或多个切片组,并且切片组包含一个或多个切片。在H.264/AVC中,切片在特定切片组内包含在栅格(raster)扫描中连续排序的整数数目的宏块。
在HEVC标准化的过程期间,例如关于图片分区单元的术语已经演进。在接下来的段落中,提供HEVC术语的一些非限制性示例。
在HEVC标准的一个草拟版本中,将图片分成覆盖图片的区域的编码单元(CU)。CU包括定义用于CU内的样本的预测过程的一个或多个预测单元(PU)以及定义用于所述CU中的样本的预测误差编码过程的一个或多个变换单元(TU)。通常,CU包括具有从可能的CU尺寸的预定义的集合可选择的尺寸的样本的方形块。通常将具有最大允许尺寸的CU命名为LCU(最大编码单元),并且将视频图片划分成非交叠的LCU。还可以例如通过递归地分离LCU和所得到的CU来将LCU分离成更小CU的组合。每个所得到的CU可以具有至少一个PU以及与其关联的至少一个TU。还可以将每个PU和TU分成更小的PU和TU以便分别增加预测以及预测误差编码过程的粒度(granularity)。每个PU可以具有与其关联的预测信息,预测信息定义要向该PU内的像素应用何种预测(例如用于帧间预测PU的运动矢量信息以及用于帧内预测(intra predicted)PU的帧内预测方向性信息)。类似地,每个TU可以与描述所述TU内的样本的预测误差解码过程的信息(包括例如DCT系数信息)关联。可以在CU水平以信号传输(signal)是否针对每个CU应用或者不应用预测误差编码。在不存在与CU关联的预测误差残差的情况下,可以认为没有用于CU的TU。在一些实施例中,可以通过垂直地或水平地以对称或不对称的方式将CU分离成四个同等尺寸的方形PU或者将CU分离成两个矩形PU来实现PU分离。将图像划分成CU以及将CU划分成PU和TU通常在比特流中以信号传输,以允许解码器重新产生这些单元的意图的结构。
解码器通过应用类似于编码器的预测手段以形成像素块的预测表示(使用由编码器创建并且存储在压缩表示中的运动或者空间信息)以及预测误差解码(恢复空间像素域中的量化的预测误差信号的预测误差编码的逆操作)来重构输出视频。在应用预测和预测误差解码手段之后,解码器对预测和预测误差信号(像素值)求和以形成输出视频帧。解码器(和编码器)还可以在将其传递用于显示和/或将其存储作为用于视频序列中的即将到来的帧的预测参考之前应用附加滤波手段以改善视频输出的质量。
在草拟HEVC标准中,可以将图片分区成图块,图块是矩形并且包含整数数目的LCU。在草拟HEVC标准中,到图块的分区形成规则的网格,其中图块的高度和宽度最大以一个LCU彼此不同。在草拟HEVC中,将切片定义为一个独立的切片分段中所包含的整数数目的编码树单元以及在相同的接入单元内在下一独立的切片分段(如果存在)之前的所有随后的依赖性切片分段(如果存在)。在草拟HEVC标准中,将切片分段定义为在图块扫描中被连续排序并且被包含在单个NAL单元中的整数数目的编码树单元。将每个图片划分成切片分段是分区。在草拟HEVC标准中,将独立的切片分段定义为没有根据用于前一切片分段的值推断其切片分段头部的语法元素的值的切片分段,而将依赖性切片分段定义为根据按照解码顺序的用于前一独立切片分段的值推断其切片分段头部的一些语法元素的值的切片分段。在草拟HEVC标准中,将切片头部定义为作为当前切片分段或者在当前依赖性切片分段之前的独立切片分段的独立切片分段的切片分段头部,而将切片分段头部定义为包含从属于切片分段中所表示的第一或者全部编码树单元的数据元素的编码切片分段的一部分。在草拟HEVC中,如果没有使用图块,则按照图块内或者图片内的LCU的栅格扫描顺序来扫描CU。在LCU内,CU具有特定扫描顺序。
HEVC工作草案5中的基本编码单元是树块(treeblock)。树块是亮度样本的NxN块以及具有三个样本阵列的图片的色度样本的两个对应的块,或者单色图片或者使用三个单独的颜色平面被编码的图片的样本的NxN块。可以将树块分区用于不同的编码和解码过程。树块分区是亮度样本的块以及由于对具有三个样本阵列的图片的树块分区而得到的色度样本的两个对应的块,或者对单色图片或者使用三个单独的颜色平面被编码的图片的树块分区而得到的亮度样本的块。每个树块被分配分区信令(signalling)以标识用于帧内或者帧间预测以及用于变换编码的块尺寸。分区是递归四叉树分区。四叉树的根与树块相关联。四叉树被分离直到到达叶子,叶子被称为编码节点。编码节点是两个树、预测树和变换树的根节点。预测树规定预测块的位置和尺寸。预测树和相关联的预测数据被称为预测单元。变换树规定变换块的位置和尺寸。变换树和相关联的变换数据被称为变换单元。用于亮度和色度的分离信息对于预测树而言是一致的,并且对于变换树而言可以一致或者可以不一致。编码节点以及相关联的预测和变换单元一起形成编码单元。
在HEVC WD5中,将图片分为切片和图块。切片可以是树块的序列,但是(在涉及所谓的细粒度切片时)还可以在树块内在变换单元与预测单元一致的地方具有其边界。可以按照栅格扫描顺序来对切片内的树块编码和解码。对于主要的已编码图片,将每个图片分为切片是分区。
在HEVC WD5中,将图块定义为共同存在于一列或者一行内的整数数目个树块,这些树块在图块内在栅格扫描中被连续地排序。对于主要的已编码图片,将每个图片分为图块是分区。图块在图片内在栅格扫描中被连续地排序。虽然切片包含在图块内在栅格扫描中连续的树块,然而这些树块在图片内在栅格扫描中并不一定连续。切片和图块不需要包含树块的相同序列。图块可以包括多于一个切片内所包含的树块。类似地,切片可以包括若干图块内所包含的树块。
可以例如如下来定义编码单元与编码树块之间的区分。可以将切片定义为图块内或者在不使用图块的情况下的图片内按照栅格扫描顺序的一个或多个编码树单元(CTU)的序列。每个CTU可以包括一个亮度编码树块(CTB)和可能的(取决于被使用的色度格式)两个色度CTB。可以将CTU定义为亮度样本的编码树块、具有三个样本阵列的图片的色度样本的两个对应的编码树块、或者单色图片或者使用三个单独的颜色平面以及用于编码样本的语法结构被编码的图片的样本的编码树块。可以认为将切片分为编码树单元是分区。可以将CTB定义为针对某个N值的样本的NxN块。可以将以下认为是分区:将包括具有三个样本阵列的图片的阵列之一或者将包括单色格式的图片或者使用三个单独的颜色平面被编码的图片的阵列分为编码树块。可以将编码块定义为针对某个N值的样本的NxN块。可以认为将编码树块分为编码块是分区。
图8示出包括被分区成方形编码单元(实线)的两个图块的图片的示例,其中方形编码单元进一步被分区成矩形预测单元(虚线)。
在H.264/AVC和HEVC中,可以跨切片边界禁用图片内预测。因此,可以认为切片是将已编码图片分离成独立地可解码的片段(piece)的一种方式,并且因此通常认为切片是用于传输的初级单元。在很多情况下,编码器可以在比特流中指示跨切片边界关闭哪些种类的图片内预测,并且解码器操作例如在推测哪些预测源可用时将这一信息考虑在内。例如,如果相邻的宏块或者CU驻留在不同的切片内,则可以认为来自相邻的宏块或者CU的样本不可用于帧内预测。
可以将语法元素定义为用比特流表示的数据的元素。可以将语法结构定义为一起存在于比特流中按照规定的顺序的零个或多个语法元素。
用于H.264/AVC或者HEVC编码器的输出以及H.264/AVC或者HEVC解码器的输入的初级单元分别是网络抽象层(NAL)单元。对于通过分组定向的网络的传输或者到结构化文件中的存储,可以将NAL单元封装成分组或者类似的结构。H.264/AVC和HEVC中已经规定了用于不提供组帧(framing)结构的传输或者存储环境的比特流格式。比特流格式通过将开始代码附接在每个NAL单元前面来使得NAL单元彼此分离。为了避免NAL单元边界的错误检测,编码器运行字节定向的开始代码竞争防止算法,其在出现开始代码的情况下向NAL单元有效载荷添加竞争防止字节。为了例如使得能够在分组定向的系统与流定向的系统之间直接网关操作,通常可以执行开始代码竞争防止而不管是否使用字节流格式。可以将NAL单元定义为包含要跟随的数据类型的指示的语法结构以及包含根据需要使用竞争防止字节被散布的RBSP形式的数据的字节。可以将原始字节序列有效载荷(RBSP)定义为包含被封装在NAL单元中的整数数目的字节的语法结构。RBSP或者为空或者具有包含其后跟随有RBSP停止比特并且跟随有等于0的零个或者多个随后的比特的语法元素的数据比特的串的形式。
NAL单元包括头部和有效载荷。在H.264/AVC和HEVC中,NAL单元头部指示NAL单元的类型,以及NAL单元中所包含的已编码切片是否是参考图片或者非参考图片的一部分。
H.264/AVC NAL单元头部包括2比特的nal_ref_idc语法元素,其在等于0时表示NAL单元中所包含的已编码切片是非参考图片的一部分,其在大于0时表示NAL单元中所包含的已编码切片是参考图片的一部分。用于SVC和MVC NAL单元的头部可以另外包含与可缩放性和多视图层级相关的各种表示。
在草拟HEVC标准中,2字节的NAL单元头部用于所有规定的NAL单元类型。NAL单元头部的第一字节包含1个保留位、主要指示这一接入单元中所携带的图片是参考图片还是非参考图片的1比特的指示nal_ref_flag、以及6比特的NAL单元类型指示。在草拟HEVC标准中,NAL单元头部的第二字节包括用于时间水平的3比特的temporal_id指示以及使得值等于1所需要的5比特的保留字段(被称为reserved_one_5bits)。可以认为temporal_id语法元素是用于NAL单元的时间标识符,并且可以将TemporalId变量定义为等于temporal_id的值。期望5比特的保留字段通过扩展来使用,诸如未来的可缩放的和3D视频扩展。期望这5个比特可以携带关于可缩放性层级的信息,诸如quality_id等、dependency_id等、任何其他类型的层标识符、视图顺序索引等、视图标识符、类似于在所有大于特定的标识符值的NAL单元从比特流中被去除的情况下指示有效的子比特流提取的SVC的priority_id的标识符。在不失一般性的情况下,在一些示例实施例中,例如如下来根据reserved_one_5bits的值来得到变量LayerId:LayerId=reserved_one_5bits–1。
在稍后的草拟HEVC标准中,使用2字节的NAL单元头部用于所有规定的NAL单元类型。NAL单元头部包含1个保留位、6比特的NAL单元类型指示、6比特的保留字段(被称为reserved_zero_6bits)以及用于时间水平的3比特的temporal_id_plus1指示。可以将temporal_id_plus1语法元素认为是用于NAL单元的时间标识符,可以如下得到基于零的TemporalId变量:TemporalId=temporal_id_plus 1–1。等于0的TemporalId对应于最低时间水平。要求temporal_id_plus1的值为非零以便避免开始代码竞争涉及两个NAL单元头部字节。在不失一般性的情况下,在一些示例实施例中,例如如下来根据reserved_zero_6bits的值来得到变量LayerId:LayerId=reserved_zero_6bits。在用于HEVC的可缩放扩展的一些设计中,诸如在文档JCTVC-K1007中,使用例如被称为nuh_layer_id的层标识符字段来代替reserved_zero_6bits。下面,除非另外指出,否则LayerId、nuh_layer_id和layer_id可互换地使用。
期望reserved_one_5bits、reserved_zero_6bits、和/或NAL单元头部中的类似的语法元素能够携带关于可缩放性层级的信息。例如,可以将根据reserved_one_5bits、reserved_zero_6bits、和/或类似的语法元素得到的LayerId值映射成描述不同的可缩放性尺度的变量或者语法元素的值,诸如quality_id等、dependency_id等、任何其他类型的层标识符、视图顺序索引等、视图标识符、NAL单元涉及深度还是纹理的指示(即depth_flag等)、或者类似于在大于特定的标识符值的所有NAL单元从比特流中被去除的情况下指示有效的子比特流提取的SVC的priority_id的标识符。可以将reserved_one_5bits、reserved_zero_6bits、和/或类似的语法元素划分成指示可缩放性属性的一个或多个语法元素。例如,可以使用reserved_one_5bits、reserved_zero_6bits、和/或类似的语法元素中的某个数目的比特用于dependency_id等,而可以使用reserved_one_5bits、reserved_zero_6bits、和/或类似的语法元素中的另一某个数目的比特用于quality_id等。替选地,可以例如在视频参数集合(VideoParameter Set)、序列参数集合(Sequence Parameter Set)或者另一语法结构中提供LayerId值等到描述不同的可缩放性尺度的变量或者语法元素的值的映射。
可以将NAL单元分类成视频编码层(VCL)NAL单元和非VCLNAL单元。VCL NAL单元通常是已编码切片NAL单元。在H.264/AVC中,已编码切片NAL单元包含表示一个或多个已编码宏块的语法元素,每个已编码宏块对应于未压缩图片中的样本的块。在草拟HEVC标准中,已编码切片NAL单元包含表示一个或多个CU的语法元素。
在H.264/AVC中,可以将已编码切片NAL单元表示为即时解码刷新(IDR)图片中的已编码切片或者非IDR图片中的已编码切片。
在草拟HEVC标准中,可以将已编码切片NAL单元表示为以下类型之一:
在草拟HEVC标准中,可以将用于图片类型的缩写定义如下:拖尾(TRAIL)图片、时间子层接入(TSA)、逐步时间子层接入(STSA)、随机接入可解码前导(RADL)图片、随机接入跳跃式前导(RASL)图片、中断链接接入(BLA)图片、即时解码刷新(IDR)图片、清洁随机接入(CRA)图片。
随机接入点(RAP)图片是其中每个切片或者切片分段具有在16到23的范围内(包括端点)的nal_unit_type的图片。RAP图片仅包含帧内编码切片,并且可以是BLA图片、CRA图片或者IDR图片。比特流中的第一图片是RAP图片。假定必须的参数集合在需要它们被激活时可用,则能够对RAP图片以及按照解码顺序的所有随后的非RASL图片正确地解码而没有执行对按照解码顺序在RAP图片之前的任何图片的解码过程。比特流中可以存在仅包含不是RAP图片的帧内编码切片的图片。
在HEVC中,CRA图片可以是按照解码顺序在比特流中的第一图片,或者可以后来出现在比特流中。HEVC中的CRA图片实现了按照解码顺序跟随CRA图片但是按照输出顺序在其之前的所谓的前导图片。其中一些前导图片(所谓的RASL图片)可以使用在CRA图片之前解码的图片作为参考。如果在CRA图片处执行随机接入,则按照解码顺序和输出顺序在CRA图片之后的图片不可解码,因此类似于IDR图片的清洁随机接入功能来实现清洁随机接入。
CRA图片可以具有关联的RADL或者RASL图片。当CRA图片是按照解码顺序在比特流中的第一图片时,CRA图片是已解码视频序列中按照解码顺序的第一图片,并且任何关联的RASL图片没有被解码器输出并且不可以是可解码的,因为它们可以包含对比特流中不存在的图片的参考。
前导图片是按照输出顺序在关联的RAP图片之前的图片。关联的RAP图片是按照解码顺序在前面的RAP图片(如果存在)。前导图片是RADL图片或者RASL图片。
所有的RASL图片是关联的BLA或者CRA图片的前导图片。当关联的RAP图片是BLA图片或者是比特流中的第一已编码图片时,RASL图片不被输出并且可以不是正确地可解码的,因为RASL图片可以包含对比特流中不存在的图片的参考。然而,如果解码从在RASL图片的关联的RAP图片前面的RAP图片开始,则RASL图片可以被正确地解码。RASL图片未用作用于非RASL图片的解码过程的参考图片。当存在时,按照解码顺序,所有RASL图片在同样的关联的RAP图片的所有拖尾图片的前面。在HEVC标准的一些较早草拟中,RASL图片被称为标记以抛弃(TFD)图片。
所有的RADL图片是前导图片。RADL图片未用作用于相同的关联的RAP图片的拖尾图片的解码过程的参考图片。当存在时,按照解码顺序,所有的RADL图片在相同的关联的RAP图片的所有拖尾图片的前面。RADL图片不涉及按照解码顺序在关联的RAP图片前面的任何图片,并且因此可以在解码从关联的RAP图片开始时被正确地解码。在HEVC标准的一些较早草拟中,RADL图片被称为可解码前导图片(DLP)。
当从CRA图片开始的比特流的一部分被包括在另一比特流中时,与CRA图片关联的RASL图片可能不是正确地可解码的,因为它们的参考图片中的一些可能没有存在于组合的比特流中。为了使得这样的切片操作直接,可以改变CRA图片的NAL单元类型以指示其是BLA图片。与BLA图片关联的RASL图片可能不是正确地可解码的,因此不被输出/显示。另外,可以从解码中省略与BLA图片关联的RASL图片。
BLA图片可以是比特流中按照解码顺序的第一图片,或者可以后来出现在比特流中。每个BLA图片开始新的已编码视频序列,并且对解码过程具有与IDR图片类似的影响。然而,BLA图片包含规定非空参考图片集合的语法元素。当BLA图片具有等于BLA_W_LP的nal_unit_type时,其可以具有关联的RASL图片,这些图片没有由解码器输出并且可以不是可解码的,因为它们可以包含对比特流中不存在的图片的参考。当BLA图片具有等于BLA_W_LP的nal_unit_type时,其还可以具有关联的RADL图片,这些图片被规定为要被解码。当BLA图片具有等于BLA_W_DLP的nal_unit_type时,其没有关联的RASL图片但是可以具有关联的RADL图片,这些图片被规定为要被解码。当BLA图片具有等于BLA_N_LP的nal_unit_type时,其不具有任何关联的前导图片。
具有等于IDR_N_LP的nal_unit_type的IDR图片不具有存在于比特流中的关联的前导图片。具有等于IDR_W_LP的nal_unit_type的IDR图片不具有存在于比特流中的关联的RASL图片,但是可以具有比特流中的关联的RADL图片。
当nal_unit_type的值等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12或者RSV_VCL_N14时,已解码图片未用作用于相同的时间子层的任何其他图片的参考。也就是,在草拟HEVC标准中,当nal_unit_type的值等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12或者RSV_VCL_N14时,已解码图片未被包括在具有相同的TemporalId值的任何图片的RefPicSetStCurrBefore、RefPicSetStCurrAfter和RefPicSetLtCurr中的任何一个中。可以丢弃具有等于TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12或者RSV_VCL_N14的nal_unit_type的已编码图片而没有影响具有相同的TemporalId值的其他图片的可解码性。
可以将拖尾图片定义为按照输出顺序在关联的RAP图片之后的图片。作为拖尾图片的任何图片不具有等于RADL_N、RADL_R、RASL_N或者RASL_R的nal_unit_type。可以将作为前导图片的任何图片约束为按照解码顺序在与相同的RAP图片关联的所有拖尾图片的前面。比特流中不存在任何与具有等于BLA_W_DLP或者BLA_N_LP的nal_unit_type的BLA图片关联的RASL图片。比特流中不存在任何与具有等于BLA_N_LP的nal_unit_type的BLA图片关联或者与具有等于IDR_N_LP的nal_unit_type的IDR图片关联的RADL图片。可以将与CRA或者BLA图片关联的任何RASL图片约束为按照输出顺序在与CRA或者BLA图片关联的任何RADL图片前面。可以将与CRA图片关联的任何RASL图片约束为按照输出顺序在按照解码顺序位于CRA图片前面的任何其他RAP图片的后面。
在HEVC中,存在可以用于指示时间子层切换点的2个图片类型,TSA和STSA图片类型。如果具有达到N的TemporalId的时间子层已经被解码直到TSA或者STSA图片(排他性的)以及TSA或者STSA图片具有等于N+1的TemporalId,则TSA或者STSA图片实现对具有等于N+1的TemporalId的所有随后图片(按照解码顺序)的解码。TSA图片类型可以对TSA图片本身以及相同的子层中按照解码顺序在TSA图片之后的所有图片强加约束。不允许这些图片中的任何一个使用来自在相同的子层中按照解码顺序在TSA图片前面的任何图片的帧间预测。TSA定义还可以对更高的子层中按照解码顺序在TSA图片之后的图片强加约束。如果该图片属于与TSA图片相同的或者更高的子层,则不允许这些图片中的任何图片引用按照解码顺序在TSA图片前面的图片。TSA图片具有大于0的TemporalId。STSA类似于TSA图片但是没有对更高子层中按照解码顺序在STSA图片后面的图片强加约束,并且因此仅实现到STSA图片驻留在该处的子层上的向上切换。
在可缩放和/或多视图编码中,至少可以支持用于对具有随机接入属性的图片和/或接入单元编码的以下原理。
-没有层间/视图间预测的帧内编码图片。这样的图片实现到其所驻留的层/视图的随机接入能力。
-没有帧间预测(即时间预测)但是允许层间/视图间预测的图片。假定所有参考层/视图可用,则这样的图片使得能够开始对图片所驻留的层/视图的解码。在单循环解码中,如果已编码参考层/视图可用(其可以是例如用于SVC中具有大于0的dependency_id的IDR图片的情况),则可以是足够的。在多循环解码中,可能需要对参考层/视图解码。可以将这样的图片例如称为步进式层接入(STLA)图片或者增强层RAP图片。
-可以将锚点接入单元或者完整的RAP接入单元定义为仅包括所有层中的帧内编码图片和STLA图片。在多循环解码中,这样的接入单元实现对所有层/视图的随机接入。这样的接入单元的一个示例是MVC锚点接入单元(在这些类型中,IDR接入单元是特殊的情况)。
-可以将步进式RAP接入单元定义为在基本层中包括RAP图片但是在所有增强层中都不包含RAP图片。步进式RAP接入单元使得能够开始基本层解码,而增强层解码可以在增强层包含RAP图片时开始,并且(在多循环解码的情况下)其所有参考层/视图在该点处解码。
非VCL NAL单元例如可以是以下类型之一:序列参数集合、图片参数集合、补充增强信息(SEI)NAL单元、接入单元定界符、序列NAL单元的末尾、流NAL单元的末尾、或者填充数据NAL单元。可能需要参数集合用于已解码图片的重构,而其他非VCL NAL单元中的很多不必用于已解码样本值的重构。
贯穿已编码视频序列保持未改变的参数可以被包括在序列参数集合中。除了解码过程可能需要的参数,序列参数集合可以可选地包含视频可用性信息(VUI),其包括可能对于缓冲、图片输出定时、渲染和资源预留而言很重要的参数。H.264/AVC中规定有3个用以携带序列参数集合的NAL单元:包含序列中用于H.264/AVC VCLNAL单元的所有数据的序列参数集合NAL单元(具有等于7的NAL单元类型)、包含用于辅助解码图片的数据的序列参数集合扩展NAL单元、以及用于MVC和SVC VCL NAL单元的子集序列参数集合。可以将H.264/AVC的序列参数集合NAL单元(具有等于7的NAL单元类型)中所包括的语法结构称为序列参数集合数据seq_parameter_set_data或者基本SPS数据。例如,可以在基本SPS数据中包括简档、水平、图片尺寸和色度采样格式。图片参数集合包含很可能在若干已编码图片中保持不变的这样的参数。
在草拟HEVC中,还存在另一类型的参数集合,其在此被称为自适应参数集合(APS),其包括在若干编码切片中很可能不变但是可以对于例如每个图片或者每几个图片变化的参数。在草拟HEVC中,APS语法结构包括与量化矩阵(QM)、自适应样本偏移(SAO)、自适应环路滤波(ALF)、和去块滤波相关的参数或者语法元素。在草拟HEVC中,APS是NAL单元并且被编码而没有来自任何其他NAL单元的参考或者预测。被称为asp_id语法元素的标识符被包括在APS NAL单元中,并且在切片头部中被包括和使用以指代特定APS。
草拟HEVC标准还包括另一类型的参数集合,其被称为视频参数集合(VPS),其在例如文档JCTVC-H0388(http://phenix.int-evry.fr/jct/doc_end_user/documents/8-San%20Jose/wg11/JCTVC-H0388-v4.zip)中被提出。视频参数集合RBSP可以包括可以被一个或多个序列参数集合RBSP参考的参数。
VPS、SPS和PPS之间的关系和层级可以描述如下。VPS在参数集合层级中并且在可缩放性和/或3DV的情境中以一个水平驻留在SPS之上。VPS可以包括对于跨整个编码视频序列中的所有(可缩放性或者视图)层中的所有切片公用的参数。SPS包括对于在整个编码视频序列中在特定的(可缩放性或者视图)层中的所有切片公用并且可以被多个(可缩放性或者视图)层共享的参数。PPS包括对于在特定层表示(一个接入单元中的一个可缩放性或视图层的表示)中的所有切片公用并且很可能被多个层表示中的所有切片共享的参数。
VPS可以提供与比特流中的层的依赖性关系有关的信息以及可应用于跨整个编码视频序列中的所有(可缩放性或者视图)层的所有切片的很多其他信息。在HEVC的可缩放扩展中,VPS例如可以包括从NAL单元头部得到的LayerId值到例如与用于类似于SVC和MVC被定义的层的dependency_id、quality_id、view_id和depth_flag对应的一个或多个可缩放性尺度值的映射。VPS可以包括用于一个或多个层的简档和水平信息以及用于层表示的一个或多个时间子层(包括在某些TemporalId值处以及在其之下的VCL NAL单元)的简档和/或水平。
下面提供意图成为VPS的一部分的VPS扩展的示例语法。所呈现的VPS扩展特别提供依赖性关系。
可以如在下面的段落中所描述地来规定所呈现的VPS扩展的语义。
vps_extension_byte_alignment_reserved_one_bit等于1,并且用于实现字节对准。等于1的scalability_mask[i]表示存在对应于下面的表格中的第i可缩放性尺度的dimension_id语法元素。等于0的scalability_mask[i]表示不存在对应于第i可缩放性尺度的dimension_id语法元素。
scalability_mask索引 可缩放性尺度 ScalabilityId映射
0 基于参考索引的空间或者质量可缩放性 DependencyId
1 深度 DepthFlag
2 多视图 ViewId
3-15 保留
dimension_id_len_minus1[j]加1规定语法元素dimension_id[i][j]的以比特为单位的长度。vps_nuh_layer_id_present_flag规定是否存在语法layer_id_in_nuh[i]。layer_id_in_nuh[i]规定第i层的VCL NAL单元中的语法元素nuh_layer_id的值。当不存在时,推断layer_id_in_nuh[i]的值等于i。变量LayerIdInVps[layer_id_in_nuh[i]]被设置为等于i。dimension_id[i][j]规定第i层的第j可缩放性尺度类型的标识符。当不存在时,则推断dimension_id[i][j]的值等于0。用于表示dimension_id[i][j]的比特的数目是dimension_id_len_minus1[j]+1比特。如下得到变量ScalabilityId[layerIdInVps][scalabilityMaskIndex]、DependencyId[layerIdInNuh]、DepthFlag[layerIdInNuh]以及ViewOrderIdx[layerIdInNuh]:
num_direct_ref_layers[i]规定第i层直接参考的层的数目。
H.264/AVC和HEVC语法实现很多参数集合的实例,并且每个实例使用唯一的标识符来标识。为了限制用于参数集合所需要的存储器使用,已经限制用于参数集合标识符的值范围。在H.264/AVC和草拟HEVC标准中,每个切片头部包括对于包含切片的图片的解码而言活跃的图片参数集合的标识符,并且每个图片参数集合包含活跃序列参数集合的标识符。在HEVC标准中,切片头部附加地包含APS标识符。因此,图片和序列参数集合的传输不需要与切片的传输精确地同步。相反,活跃序列和图片参数集合在它们被参考之前在任何时刻被接收就足够了,这使得能够使用与用于切片数据的协议相比更可靠的传输机制来传输带外(out-of-band)参数集合。例如,参数集合可以被包括作为用于实时传输协议(RTP)会话的会话描述中的参数。如果参数集合在带内被传输,则可以重复它们以改善错误鲁棒性。
可以通过参考从切片或者从另一活跃参数集合或者在一些情况下从另一语法结构(诸如缓冲周期SEI消息)来激活参数集合。下面,给出草拟HEVC标准中的参数集合的激活的非限制性示例。
每个自适应参数集合RBSP初始在解码过程的操作的开始时被认为是不活跃的。最多一个自适应参数集合RBSP在解码过程的操作期间在任何给定的时刻被认为是活跃的,并且任何特定的自适应参数集合RBSP的激活产生先前活跃的自适应参数集合RBSP(如果存在)的去激活。
当自适应参数集合RBSP(具有特定的aps_id值)不活跃并且其被已编码切片NAL单元引用(使用aps_id的值)时,其被激活。这一自适应参数集合RBSP被称为活跃的自适应参数集合RBSP直到其通过另一自适应参数集合RBSP的激活而被去激活。具有等于或者小于自适应参数集合NAL单元的temporal_id的temporal_id的至少一个接入单元中所包括的具有该特定aps_id值的自适应参数集合RBSP先于其激活可用于解码过程,除非通过外部手段来提供自适应参数集合。
每个图片参数集合RBSP初始在解码过程的操作的开始时被认为不活跃。至多一个图片参数集合RBSP在解码过程的操作期间在任何给定时刻被认为是活跃的,并且任何特定的图片参数集合RBSP的激活产生先前活跃的图片参数集合RBSP(如果存在)的去激活。
当图片参数集合RBSP(具有特定的pic_parameter_set_id值)不活跃并且其被已编码切片NAL单元或者已编码切片数据分区ANAL单元引用(使用pic_parameter_set_id的值)时,其被激活。这一图片参数集合RBSP被称为活跃的图片参数集合RBSP直到其通过另一图片参数集合RBSP的激活而被去激活。具有等于或者小于图片参数集合NAL单元的temporal_id的temporal_id的至少一个接入单元中所包括的具有该特定pic_parameter_set_id值的图片参数集合RBSP先于其激活可用于解码过程,除非通过外部手段来提供图片参数集合。
每个序列参数集合RBSP初始在解码过程的操作的开始时被认为不活跃。至多一个序列参数集合RBSP在解码过程的操作期间在任何给定时刻被认为是活跃的,并且任何特定的序列参数集合RBSP的激活产生先前活跃的序列参数集合RBSP(如果存在)的去激活。
当序列参数集合RBSP(具有特定的seq_parameter_set_id值)已经不活跃时,并且在其通过图片参数集合RBSP的激活而被引用(使用seq_parameter_set_id的值)或者其被包含缓冲周期SEI消息的SEINAL单元引用(使用seq_parameter_set_id的值)时,其被激活。这一序列参数集合RBSP被称为活跃的序列参数集合RBSP直到其通过另一序列参数集合RBSP的激活而被去激活。具有等于0的temporal_id的至少一个接入单元中所包括的具有该特定seq_parameter_set_id值的序列参数集合RBSP先于其激活可用于解码过程,除非通过外部手段来提供序列参数集合。激活的序列参数集合RBSP对于整个已编码视频序列保持活跃。
每个视频参数集合RBSP初始在解码过程的操作的开始时被认为不活跃。至多一个视频参数集合RBSP在解码过程的操作期间在任何给定时刻被认为是活跃的,并且任何特定的视频参数集合RBSP的激活产生先前活跃的视频参数集合RBSP(如果存在)的去激活。
当视频参数集合RBSP(具有特定的video_parameter_set_id值)已经不活跃时,并且在其通过序列参数集合RBSP的激活而被引用(使用video_parameter_set_id的值)时,其被激活。这一视频参数集合RBSP被称为活跃的视频参数集合RBSP直到其通过另一视频参数集合RBSP的激活而被去激活。具有等于0的temporal_id的至少一个接入单元中所包括的具有该特定video_parameter_set_id值的视频参数集合RBSP先于其激活可用于解码过程,除非通过外部手段来提供视频参数集合。激活的视频参考图片集合RBSP对于整个已编码视频序列保持活跃。
在草拟HEVC标准中在解码过程操作期间,认为活跃的视频参数集合中的参数值、活跃的序列参数集合中的参数值、活跃的图片参数集合RBSP中的参数值以及活跃的自适应参数集合RBSP中的参数值是有效的。为了解释SEI消息,认为用于相同的接入单元中的已编码图片的VCL NAL单元的解码过程的操作的活跃的视频参数集合中的值、活跃的序列参数集合中的值、活跃的图片参数集合RBSP中的值以及活跃的自适应参数集合RBSP中的值是有效的,除非在SEI消息语义中另外规定。
SEI NAL单元可以包含一个或多个SEI消息,其不需要用于对输出图片解码但是可以帮助相关的过程,诸如图片输出定时、渲染、错误检测、错误隐藏以及资源预留。H.264/AVC和HEVC中规定了若干SEI消息,并且用户数据SEI消息实现用以规定用于其自己使用的SEI消息的组织和公司。H.264/AVC和HEVC包含用于规定的SEI消息的语法和语义,但是没有定义用于处理接受者中的消息的过程。因此,需要编码器在创建SEI消息时遵循H.264/AVC标准或者HEVC标准,并且符合H.264/AVC标准或者HEVC标准的解码器分别不需要处理SEI消息用于输出顺序一致性。原因之一是在H.264/AVC和HEVC中包括SEI消息的语法和语义以使得不同的系统规范能够一致地解释补充信息并且因此交互操作。其旨在,系统规范可以要求在编码端和解码端二者中使用特定SEI消息,并且另外,可以规定用于处理接受者中的特定SEI消息的过程。
编码图片是图片的编码表示。H.264/AVC中的编码图片包括需要用于对图片解码的VCL NAL单元。在H.264/AVC中,编码图片可以是主要编码图片或者冗余编码图片。主要编码图片用在有效比特流的解码过程中,而冗余编码图片是仅应当在主要编码图片不能被充分解码时被解码的冗余表示。在草拟HEVC中,没有规定任何冗余编码图片。
在H.264/AVC和HEVC中,接入单元包括主要编码图片和与其关联的那些NAL单元。在H.264/AVC中,NAL单元在接入单元内的出现顺序如下被约束。可选接入单元定界符NAL单元可以表示接入单元的开始。其后是零个或多个SEI NAL单元。接着出现主要编码图片的编码切片。在H.264/AVC中,主要编码图片的编码切片之后可以是用于零个或者多个冗余编码图片的编码切片。冗余编码图片是图片的编码表示或者图片的一部分。如果主要编码图片例如由于传输损失或者物理存储媒体的占用而没有被解码器接收到,则可以对冗余编码图片解码。
在H.264/AVC中,接入单元还可以包括辅助编码图片,其是补充主要编码图片并且可以用在例如显示过程中的图片。辅助编码图片例如可以用作规定解码图片中的样本的透明度水平的阿尔法通道或者阿尔法平面。阿尔法通道或者平面可以用在分层合成或者渲染系统中,其中输出图片由至少部分在彼此之上透明的交叠的图片形成。辅助编码图片与单色冗余编码图片具有相同的语法和语义限制。在H.264/AVC中,辅助编码图片包含与主要编码图片相同数目的宏块。
在H.264/AVC中,编码视频序列被定义为从IDR接入单元(包括性地)到下一IDR接入单元(排他性地)或者到比特流的末尾(以先出现者为准)的按照解码顺序的连续的接入单元的序列。在草拟HEVC标准中,编码视频序列被定义为按照解码顺序包括作为比特流中的第一接入单元的CRA接入单元、IDR接入单元或者BLA接入单元的接入单元的序列,其后是零个或者多个非IDR和非BLA接入单元,包括所有随后的接入单元直到但是不包括任何随后的IDR或者BLA接入单元。
图片的组(GOP)及其特性可以如下定义。可以对GOP解码而不管是否任何先前的图片被解码。开放式GOP是如下的图片的组:其中按照输出顺序在帧内图片前面的图片在解码从开放式GOP的初始帧内图片开始的情况下可以不是正确地可解码的。换言之,开放式GOP的图片可以指代(在帧间预测中)属于先前的GOP的图片。H.264/AVC解码器可以根据H.264/AVC比特流中的恢复点SEI消息来识别开始开放式GOP的帧内图片。HEVC解码器可以识别开始开放式GOP的帧内图片,因为特定的NAL单元类型、CRA NAL单元类型可以用于其编码切片。封闭式GOP是如下的图片的组:其中所有图片在解码从封闭式GOP的初始帧内图片开始的情况下可以被正确地解码。换言之,封闭式GOP中没有图片指代先前GOP中的任何图片。在H.264/AVC和HEVC中,封闭式GOP从IDR接入单元开始。在HEVC中,封闭式GOP还可以从BLA_W_DLP或者BLA_N_LP图片开始。因此,封闭式GOP结构具有与开放式GOP结构相比更强的错误恢复潜力,但是以压缩效率的可能的减小为成本。由于参考图片的选择方面的更大的灵活性,开放式GOP编码结构在压缩中潜在地更高效。
可以将图片的结构(SOP)定义为按照解码顺序连续的一个或多个解码图片,其中按照解码顺序的第一解码图片是在最低时间子层的参考图片,并且除了可能的按照解码顺序的第一解码图片之外没有解码图片是RAP图片。图片的相对解码顺序用图片内的数字图示。前一SOP中的任何图片具有比当前SOP中的任何图片更小的解码顺序,并且下一SOP中的任何图片具有比当前SOP中的任何图片更大的解码顺序。术语“图片的组”(GOP)有时可以与术语SOP可互换地使用并且与SOP的语义而非与如以上描述的封闭式或者开放式GOP的语义具有相同的语义。
H.264/AVC和HEVC的比特流语法指示特定图片是否为用于任何其他图片的帧间预测的参考图片。任何编码类型(I、P、B)的图片可以是H.264/AVC和HEVC中的参考图片或者非参考图片。在H.264/AVC中,NAL单元头部指示NAL单元的类型以及NAL单元内所包含的已编码切片是参考图片还是非参考图片的一部分。
很多混合视频编解码器(包括H.264/AVC和HEVC)分两个阶段来对视频信息编码。在第一阶段,预测某个图片区域或者“块”中的像素或者样本值。可以例如通过运动补偿机制来预测这些像素或者样本值,运动补偿机制涉及寻找和指示先前编码的视频帧中紧密对应于被编码的块的一个视频帧中的区域。另外,可以通过空间机制来预测像素或者样本值,空间机制涉及寻找和指示空间区域关系。
还可以将使用来自先前编码图像的图像信息的预测方法称为帧间预测方法,其还可以被称为时间预测或者运动补偿。还可以将使用相同图像内的图像信息的预测方法称为帧内预测方法。
第二阶段是对预测的像素或样本块与原始像素或样本块之间的误差编码之一。这可以通过使用规定的变换来对像素或样本值的差异进行变换来完成。这一变换可以是离散余弦变换(DCT)或者其变型。在对差异变换之后,可以对已变换差异进行量化和熵编码。
通过改变量化过程的保真度,编码器可以控制像素或样本表示的精度(即图片的视觉质量)与所得到的已编码视频呈现的尺寸(即文件尺寸或者传输比特率)之间的平衡。
解码器通过应用与编码器所使用的相似的预测机制来重构输出视频以便形成像素或者样本块的预测表示(使用由编码器创建的以及图像的压缩表示中所存储的运动或空间信息)和预测误差解码(预测误差编码的逆操作以恢复空间域中的已量化预测误差信号)。
在应用像素或者样本预测和误差解码过程之后,解码器组合预测和预测误差信号(像素或者样本值)以形成输出视频帧。
解码器(和编码器)还可以在传递其用于显示和/或存储作为用于视频序列中的即将到来的图片的预测参考之前应用附加滤波过程以便改善输出视频的质量。
可以使用滤波来减少来自参考图像的各种伪影(artifact),诸如块化(blocking)伪影、环化(ringing)伪影等。在其后为添加逆变换残差(residual)的运动补偿之后,获得已重构图片。该图片可以具有各种伪影,诸如块化伪影、环化伪影等。为了消除伪影,可以应用各种后处理操作。如果使用后处理后的图片作为运动补偿环路中的参考,则通常可以将后处理操作/滤波器称为环路滤波器。通过采用环路滤波器,增加了参考图片的质量。因此,可以实现更好的编码效率。
滤波可以包括例如去块滤波器、样本自适应偏移(SAO)滤波器和/或自适应环路滤波器(LAF)。
可以使用去块滤波器作为环路滤波器之一。去块滤波器在H.264/AVC和HEVC标准二者中可获得。去块滤波器的目的是去除块的边界中出现的块化伪影。这可以通过沿着块边界滤波来实现。
在SAO中,将图片划分成区域,其中针对每个区域做出单独的SAO判决。将区域中的SAO信息封装在SAO参数自适应单元(SAO单元)中以及在HEVC中,用于自适应SAO参数的基本单元是CTU(因此SAO区域是被对应的CTU覆盖的块)。
在SAO算法中,根据规则的集合对CTU中的样本分类,并且通过增加偏移值来增强样本的每个被分类的集合。在比特流中以信号传输偏移值。存在两种类型的偏移:1)带偏移2)边缘偏移。对于CTU,没有采用SAO或者带偏移或者边缘偏移。可以由编码器通过例如速率失真优化(RDO)来判定是否不使用任何SAO或者带或者边缘偏移的选择并且以信号传输到解码器。
在带偏移中,整个样本值的范围在一些实施例中被分成32个等宽的带。例如,对于8比特样本,带的宽度为8(=256/32)。在32个带中,其中的4个被选择,并且针对所选择的带中的每个带,不同的偏移被以信号传输。选择判决由编码器做出并且可以如下以信号传输:第一带的索引被以信号传输并且然后推断随后的四个带是所选择的带。带偏移在校正平滑区域的误差时可以很有用。
在边缘偏移类型中,边缘偏移(EO)类型可以从四个可能的类型(或者边缘分类)中来选择,其中每个类型与方向关联:1)竖直,2)水平,3)135度对角,以及4)45度对角。方向的选择由编码器给出并且以信号传输到解码器。每个类型基于角度定义用于给定样本的两个相邻的样本的位置。然后,基于将样本值与两个相邻的样本的值的比较来将CTU中的每个样本分类成5个种类之一。5个种类描述如下:
1.当前样本值小于两个相邻的样本
2.当前样本值小于相邻之一并且等于另一相邻
3.当前样本值大于相邻之一并且等于另一相邻
4.当前样本值大于两个相邻的样本
5.非以上任何一种情况
不需要向解码器信号传输这5个种类,因为分类仅基于重构样本,其在编码器和解码器二者中可以变化和相同。在将边缘偏移类型CTU中的每个样本分类为5个种类之一之后,确定用于第一4个种类中的每个的偏移值并且向解码器信号传输该偏移值。向与对应的种类关联的样本值添加用于每个种类的偏移。边缘偏移在校正环形伪影时可以很有效。
SAO参数可以以信号传输为在CTU数据中交错(interleaved),在CTU上,切片头部包含规定是否在切片中使用SAO的语法元素。如果使用SAO,则两个附加语法元素规定是否向Cb和Cr部件应用SAO。对于每个CTU,存在三个选项:1)从左侧CTU复制SAO参数,2)从以上CTU复制SAO参数,或者3)以信号传输新的SAO参数。
虽然以上描述特定的SAO实现,然而应当理解,类似于以上描述的实现的其他SAO实现也可以是可能的。例如,除了以信号传输SAO参数为在CTU数据中被交错,可以使用使用四叉树分割的基于图片的信令。可以由编码器例如通过速率失真优化过程来确定SAO参数合并(即使用与在CTU中在左侧或者上方的相同的参数)或者四叉树结构。
自适应环路滤波器(ALF)是增强重构样本的质量的另一方法。这可以通过对环路中的样本值滤波来实现。ALF是其滤波器系数由编码器来确定并且被编码到比特流中的有限脉冲响应(FIR)滤波器。编码器可以例如使用最小方差方法或者Wiener滤波器优化来选择试图最小化相对于原始未压缩图片的失真的滤波器系数。滤波器系数例如可以驻留在自适应参数集合或者切片头部中,或者它们可以以与其他CU特定的数据交错的方式出现在用于CU的切片数据中。
在很多视频编解码器(包括H.264/AVC和HEVC)中,通过与每个运动补偿图像块关联的运动矢量来指示运动信息。这些运动矢量中的每个表示要编码(在编码器中)或者要解码(在解码器处)的图片中的图像块以及先前编码或解码的图像(或者图片)之一中的预测源块的位移。H.264/AVC和HEVC以及很多其他视频压缩标准将图片分为矩形网格,对于每个矩形网格,参考图片之一中的类似的块被指示用于帧间预测。预测块的位置被编码为指示预测块相对于被编码的块的位置的运动矢量。
可以使用例如以下因子中的一个或多个来对帧间预测过程特征化。
运动矢量表示的精度。
例如,运动矢量可以是四分之一像素精度、二分之一像素精度或者全像素精度,并且可以使用有限脉冲响应(FIR)滤波器来获得分数像素位置中的样本值。
用于帧间预测的块分区。
很多编码标准(包括H.264/AVC和HEVC)使得能够在编码器中选择其运动矢量应用于运动补偿预测的块的尺寸和形状,并且在比特流中指示所选择的尺寸和形状使得解码器能够重新产生在编码器中做出的运动补偿预测。
用于帧间预测的参考图片的数目。
帧间预测的源是先前解码的图片。很多编码标准(包括H.264/AVC和HEVC)使得能够存储多个参考图片用于帧间预测并且使得能够基于块来选择所使用的参考图片。例如,在H.264/AVC中,可以基于宏块或者宏块分区来选择参考图片,在HEVC中,可以基于PU或者CU来选择参考图片。很多编码标准(诸如H.264/AVC和HEVC)在比特流中包括使得编码器能够创建一个或多个参考图片列表的语法结构。可以使用到参考图片列表的参考图片索引来指示多个参考图片中的哪个用于特定块的帧间预测。可以通过编码器在一些帧间编码模式下将参考图片索引编码到比特流中,或者可以例如通过在一些其他帧间编码模式中使用相邻的块来(通过编码器和解码器)得到参考图片索引。
运动矢量预测。
为了在比特流中高效地表示运动矢量,可以关于块特定的预测运动矢量对运动矢量差异地编码。在很多视频编解码器中,以预定义的方式(例如通过计算相邻块的已编码或已解码运动矢量的中值)来创建预测运动矢量。创建运动矢量预测的另一方式(有时被称为高级运动矢量预测(AMVP))是根据时间参考图片中的相邻的块和/或共同定位的块来生成候选预测的列表并且以信号传输所选择的候选作为运动矢量预测。除了预测运动矢量值,还可以预测先前已编码/已解码图片的参考索引。通常根据时间参考图片中的相邻的块和/或共同定位的块来预测参考索引。通常跨切片边界禁用对运动矢量的差异编码。
多假设运动补偿预测。
H.264/AVC和HEVC使得能够使用P切片(本文中被称为单预测切片)中的单个预测块或者用于双预测切片的两个运动补偿预测块的线性组合,其也被称为B切片。可以对B切片中的各个块进行双预测、单预测或者帧内预测,并且可以对P切片中的各个块进行单预测或者帧内预测。用于双预测图片的参考图片可以不限于按照输出顺序在后的图片或者在前的图片,而是可以使用任何参考图片。在很多编码标准(诸如H.264/AVC和HEVC)中,针对P切片构造被称为参考图片列表0的一个参考图片列表,并且针对B切片构造两个参考图片列表——列表0和列表1。对于B切片,当前向方向中的预测可以指代来自参考图片列表0中的参考图片的预测,并且后向方向上的预测可以指代来自参考图片列表1中的参考图片的预测时,甚至用于预测的参考图片可以相对于彼此或者相对于当前图片具有任何解码或者输出顺序。
加权预测。
很多编码标准使用预测权重1用于帧间(P)图片的预测块并且使用预测权重0.5用于B图片的每个预测块(以产生平均)。H.264/AVC实现用于P和B切片二者的加权预测。在隐含加权预测中,权重与图片顺序计数成比例,而在显式加权预测中,明确地指示预测权重。可以例如按照下面的语法结构中的一个或多个来指示用于显式加权预测的权重:切片头部、图片头部、图片参数集合、自适应参数集合或者任何类似的语法结构。
在很多视频编解码器中,运动补偿之后的预测残差首先使用变换核(如DCT)被变换并且然后被编码。这样做的原因在于,残差之间通常存在某种关联并且变换在很多情况下能够帮助减少这一关联并且提供更高效的编码。
在草拟HEVC中,每个PU具有与其关联的预测信息,预测信息定义哪个种类的预测要被应用于该PU内的像素(例如用于帧间预测PU的运动矢量信息以及用于帧内预测PU的帧内预测方向性信息)。类似地,每个TU与描述用于TU内的样本的预测误差解码过程的信息(包括例如DCT系数信息)关联。可以在CU水平以信号传输是否针对每个CU应用预测误差编码。在不存在与CU关联的预测误差残差的情况下,可以认为没有用于CU的TU。
在一些编码格式和编解码器中,在所谓的短期和长期参考图片之间做出区分。这一区分可以影响一些解码过程,诸如时间直接模式或者隐含加权预测中的运动矢量缩放。如果用于时间直接模式的参考图片两者都是短期参考图片,则可以根据当前图片与每个参考图片之间的图片顺序计数(POC)差异来对预测中所使用的运动矢量进行缩放。然而,如果至少一个用于时间直接模式的参考图片是长期参考图片,则可以使用运动矢量的默认缩放,例如可以使用到二分之一的对运动的缩放。类似地,如果使用短期参考图片用于隐含加权预测,则可以根据当前图片的POC与参考图片的POC之间的POC差异来对预测权重缩放。然而,如果使用长期参考图片用于隐含加权预测,则可以使用默认预测权重,诸如在用于双预测块的隐含加权预测中的0.5。
一些视频编码格式(诸如H.264/AVC)包括语法元素frame_num,其用于与多个参考图片相关的各种解码过程。在H.264/AVC中,用于IDR图片的frame_num的值为0。用于非IDR图片的frame_num的值等于按照解码顺序以1渐增的在前的参考图片的frame_num(在模运算中,即frame_num的值在frame_num的最大值之后包绕到0)
H.264/AVC和HEVC包括图片顺序计数(POC)的概念。POC的值针对每个图片被取得并且按照输出顺序随着图片位置的增加而不减小。POC因此指示图片的输出顺序。POC可以用在例如用于双预测切片的时间直接模式的运动矢量的隐含缩放的解码过程中,用于隐含地得到的加权预测的权重的解码过程中,以及用于参考图片列表初始化的解码过程中。另外,POC可以用于验证输出顺序一致性。在H.264/AVC中,相对于在前的IDR图片或者包含将所有的图片标记为“未用于参考”的存储器管理控制操作的图片来规定POC。
H.264/AVC规定用于解码参考图片标记的过程以便控制解码器中的存储器消耗。用于帧间预测的参考图片的最大数目(被称为M)在序列参数集合中确定。当参考图片被解码时,其被标记为“用于参考”。如果参考图片的解码使得多于M个图片被标记为“用于参考”,则至少一个图片被标记为“未用于参考”。存在两种类型的用于解码参考图片标记的操作:自适应存储器控制和滑动窗口。基于图片来选择用于解码参考图片标记的操作模式。自适应存储器控制使得能够显式以信号传输哪个图片被标记为“未用于参考”并且还可以向短期参考图片分配长期索引。自适应存储器控制可以要求比特流中存在存储器管理控制操作(MMCO)参数。MMCO参考可以被包括在解码参考图片标记语法结构中。如果滑动窗口操作模式被使用并且有M个图片被标记为“用于参考”,则作为被标记为“用于参考”的这些短期参考图片中的第一解码图片的短期参考图片被标记为“未用于参考”。换言之,滑动窗口操作模式在短期参考图片之间产生先入先出缓冲操作。
H.264/AVC中的存储器管理控制操作之一使得除了当前图片的所有参考图片被标记为“未用于参考”。即时解码刷新(IDR)图标仅包含帧内编码切片并且引起参考图片的类似的“重置”。
在草拟HEVC标准中,没有使用参考图片标记语法结构和相关的解码过程,而是出于类似的目的而使用参考图片集合(RPS)语法结构和解码过程。对于图片有效或者活跃的参考图片集合包括被用作用于图片的参考的所有参考图片以及保持被标记为按照解码顺序的任何随后的图片的“用于参考”的所有参考图片。存在参考图片集合的6个子集,其也就是被称为RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll。6个子集的注释如下。“Curr”是指被包括在当前图片的参考图片列表中并且因此可以用作用于当前图片的帧间预测参考的参考图片。“Foll”是指没有被包括在当前图片的参考图片列表中但是可以在按照解码顺序的随后的图片中用作参考图片的参考图片。“Sf”是指短期参考图片,其通常可以通过其POC值的最低有效位的某个数目来标识。“Lt”是指长期参考图片,其明确地被标识并且通常具有比可以由最低有效位的所提及的某个数目表示的相对于当前图片的POC值的更大的差值。“0”是指比当前图片具有更小POC值的那些参考图片。“1”是指比当前图片具有更大的POC值的那些参考图片。RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0和RefPicSetStFoll1统称为参考图片集合的短期子集。RefPicSetLtCurr和RefPicSetLtFoll统称为参考图片集合的长期子集。
在草拟HEVC标准中,参考图片集合可以在序列参数集合中规定并且可以在切片头部中通过到参考图片集合的索引来使用。还可以在切片头部中规定参考图片集合。通常仅在切片头部中规定参考图片集合的长期子集,而可以在图片参数集合或者切片头部中规定相同的参考图片集合的短期子集。参考图片集合可以独立地编码或者可以根据另一参考图片集合来预测(被称为RPS间预测)。当参考图片集合被独立地编码时,语法结构包括在不同类型的参考图片上迭代的最高3个循环;具有小于当前图片的POC值的短期参考图片,具有大于当前图片的POC值的短期参考图片,以及长期参考图片。每个循环输入规定要被标记为“用于参考”的图片。通常,使用差异POC值来规定图片。RPS间预测开发如下事实:可以根据先前解码图片的参考图片集合来预测当前图片的参考图片集合。这是因为,当前图片的所有参考图片或者是先前图片的参考图片或者是先前解码图片本身。仅需要指出这些图片中的哪些图片应当是参考图片并且用于当前图片的预测。在两种类型的参考图片集合编码中,另外针对每个参考图片发送指示参考图片是(被包括在*Curr列表中)否(被包括在*Foll列表中)用于由当前图片参考的标记(used_by_curr_pic_X_flag)。由当前切片使用的参考图片集合中所包括的图片被标记为“用于参考”,而由当前切片使用的参考图片集合中未包括的图片被标记为“未用于参考”。如果当前图片是IDR图片,则RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll全部被设置为空。
解码图片缓冲器(DPB)可以用在编码器中和/或在解码器中。缓冲解码图片的原因有两个:用于帧间预测中的参考以及用于将解码图片重新排序成输出顺序。由于H.264/AVC和HEVC提供用于参考图片标记和输出重新排序二者的很大的灵活性,用于参考图片缓冲和输出图片缓冲的单独的缓冲器可能浪费存储器资源。因此,DPB可以包括用于参考图片和输出重新排序的统一的解码图片缓冲过程。可以在解码图片不再用作参考并且不需要用于输出时将其从DPB去除。
在H.264/AVC和HEVC的很多编码模式中,使用到参考图片列表的索引来指示用于帧间预测的参考图片。可以使用变量长度编码来对索引编码,这通常使得更小的索引具有用于对应的语法元素的更短的值。在H.264/AVC和HEVC中,针对每个双预测性(B)切片生成两个参考图片列表(参考图片列表0和参考图片列表1),并且针对每个编码间(P)切片形成一个参考图片列表(参考图片列表0)。另外,对于草拟HEVC标准中的B切片,在构造最终的参考图片列表(列表0和列表1)之后构造组合列表(列表C)。组合列表可以用于B切片内的单预测(也被称为单向预测)。
参考图片列表(诸如参考图片列表0和参考图片列表1)通常使用两个步骤来构造:首先,生成初始参考图片列表。例如可以基于frame_num、POC、temporal_id、或者关于预测层级的信息(诸如GOP结构)、或者其任意组合来生成初始参考图片列表。其次,可以通过参考图片列表重新排序(RPLR)命令(也被称为参考图片列表修改语法结构,其可以被包含在切片头部中)来对初始参考图片列表重新排序。RPLR命令指示被排序到相应的参考图片列表的开始的图片。这一第二步骤还可以被称为参考图片列表修改过程,并且RPLR命令可以被包括在参考图片列表修改语法结构中。如果使用参考图片集合,则可以将参考图片列表0初始化成首先包含RefPicSetStCurr0,之后是RefPicSetStCurr1、之后是RefPicSetLtCurr。可以将参考图片列表1初始化成首先包含RefPicSetStCurr1,之后是RefPicSetStCurr0。可以通过参考图片列表修改语法结构来修改初始参考图片列表,其中可以通过到列表的条目索引来标识初始参考图片列表中的图片。
可以如下来构造草拟HEVC标准中的组合列表。如果用于组合列表的修改标记为0,则由隐含机制来构造组合列表;否则由比特流中所包括的参考图片组合命令来构造组合列表。在隐含机制中,从列表0的第一条目开始,之后是列表1的第一条目等,以交错的方式将列表C中的参考图片映射到来自列表0和列表1的参考图片。没有再次映射列表C中已经映射的任何参考图片。在显式机制中,对列表C中的条目的数目进行信号传输,之后是从列表0或列表1中的条目到列表C的每个条目的映射。另外,当列表0和列表1相同时,编码器具有以下选项:将ref_pic_list_combination_flag设置为0以指示没有映射任何来自列表1的参考图片并且列表C等同于列表0。
高级运动矢量预测(AMVP)例如可以如下来操作,而高级运动矢量预测的其他类似的实现例如在不同的候选位置集合和具有候选位置集合的候选位置的情况下也是可能的。可以得到两个空间运动矢量预测符(MVP),并且可以得到时间运动矢量预测符(TMVP)。它们可以在图6所示的位置中选择:位于当前预测块600(B0、B1、B2)和左侧(A0、A1)上的两个601、602上面的三个空间运动矢量预测符候选位置603、604、605。可以选择按照每个候选位置集合的预定义的顺序可用的(例如驻留在相同的切片中,被帧间编码等的)第一运动矢量预测符以表示运动矢量竞争中的预测方向(向上或者向左)。可以由编码器在切片头部中来指示用于时间运动矢量预测符的参考索引(例如作为语法元素collocated_ref_idx)。可以根据时间运动矢量预测符的参考图片、共同定位的图片和当前图片的图片顺序计数差异的属性来对根据共同定位的图片获得的运动矢量进行缩放。另外,可以在候选之间执行冗余校验以去除相同的候选,这可能导致在候选列表中包括零运动矢量。可以例如通过指示空间运动矢量预测符的方向(向上或者向左)或者选择时间运动矢量预测符候选来在比特流中指示运动矢量预测符。
除了预测运动矢量值,还可以预测先前编码/解码图片的参考索引。可以根据时间参考图片中的相邻块和/或共同定位的块来预测参考索引。
很多高效率的视频编解码器(诸如草拟HEVC编解码器)采用附加运动信息编码/解码机制,其通常被称为合并/合并模式/处理/机制,其中块/PU的所有运动信息被预测和使用而没有任何修改/校正。用于PU的上述运动信息可以包括1)关于仅使用参考图片列表0’来单预测PU还是仅使用参考图片列表1’来单预测PU还是使用参考图片列表0和列表1’二者来双预测PU的信息;2)对应于参考图片列表0的运动矢量值;3)参考图片列表0中的参考图片索引;4)对应于参考图片列表1的运动矢量值;以及5)参考图片列表1中的参考图片索引。类似地,使用时间参考图片中的相邻块和/或共同定位的块的运动信息来执行预测运动信息。可以通过包括与可用的相邻/共同定位的块关联的运动预测候选来构造通常被称为合并列表的列表,并且对列表中的所选择的运动预测候选的索引进行信号传输并且向当前PU的运动信息复制所选候选的运动信息。当采用合并机制用于整个CU并且使用用于CU的预测信号用作重构信号时,即不处理预测残差时,通常将这一类型的对CU的编码/解码称为跳跃模式或者基于合并的跳跃模式。除了跳跃模式,还可以采用合并机制用于各个PU(并不一定如在跳跃模式中的整个CU),并且在这种情况下,可以利用预测残差来改善预测质量。这种类型的预测模式通常被称为合并间预测。
可以存在参考图片列表合并语法结构,其由编码器被创建到比特流中并且由解码器根据比特流来解码,其指示组合参考图片列表的内容。语法结构可以指示参考图片列表0和参考图片列表1被组合成用于正在被单向预测的预测单元的附加参考图片列表组合(例如合并列表)。语法结构可以包括在等于某个值时指示参考图片列表0和参考图片列表1相同(因此参考图片列表0被用作参考图片列表组合)的标记。语法结构可以包括条目的列表,每个条目规定参考图片列表(列表0或列表1)以及到所规定的列表的参考索引,其中条目规定要被包括在组合参考图片列表中的参考图片。
视频编码系统中可以存在用于已解码参考图片标记的语法结构。例如,当已经完成对图片的解码时,可以使用已解码参考图片标记语法结构(如果存在)以适应性地将图片标记为“未用于参考”或者“用于长期参考”。如果不存在已解码参考图片标记语法结构并且被标记为“用于参考”的图片的数目可能不再增加,则可以使用滑动窗口参考图片标记,其基本上将最早的(按照解码顺序)已解码参考图片标记为未用于参考。
被称为隔离区域的编码技术基于对图片内预测和帧间预测的联合约束。图片中的隔离区域可以包含任何宏块(等)位置,并且图片可以包含不交叠的零个或多个隔离区域。残留(leftover)区域(如果存在)是没有被图片的任何隔离区域覆盖的图片的区域。当对隔离区域编码时,跨其边界禁用至少一些类型的图片间预测。可以根据相同图片的隔离区域来预测残留区域。
可以在不存在相同编码图片的任何其他隔离或残留区域的情况下来对已编码隔离区域解码。可能必需对残留区域前面的图片的所有隔离区域解码。在一些实现中,隔离区域或者残留区域包含至少一个切片。
可以将其隔离区域根据彼此来预测的图片分组成隔离区域图片组。可以根据相同的隔离区域图片组内的其他图片中的对应的隔离区域来对隔离区域进行帧间预测,而可以不实现根据其他隔离区域或者在隔离区域图片组外部的帧间预测。可以根据任何隔离区域来对残留区域进行帧间预测。耦合的隔离区域的形状、位置和尺寸可以从隔离区域图片组中的一个图片到另一个图片演进。
可以基于切片组来对H.264/AVC编解码器中的隔离区域编码。可以在图片参数集合中规定宏块位置到切片组的映射。H.264/AVC语法包括用以对某些切片组图案编码的语法,这些切片组图案可以分类成两个类型,静态类型和演进类型。静态切片组保持不变,只要图片参数集合有效;而演进切片组可以根据图片参数集合中的对应参数以及切片头部中的切片组变化周期参数来逐图片变化。静态切片组图案包括交错、棋盘格、矩形定向和自由形式。演进的切片组图案包括水平擦除、竖直擦除、盒内和盒外。矩形定向的图案和演进的图案尤其适合用于对隔离区域编码并且在下面更仔细地描述。
对于矩形定向的切片组图案,在图片区域内规定期望数目的矩形。前景切片组包括在对应的矩形内的宏块位置但是不包括已经通过更早规定的切片组分配的宏块位置。残留切片组包含未被前景切片组覆盖的宏块。
通过每个图片指示宏块位置的扫描顺序以及大量宏块中的切片组的尺寸的变化率来规定演进的切片组。每个编码图片与切片组变化周期参数(在切片头部中来传达)关联。变化周期乘以变化率表示第一切片组中的宏块的数目。第二切片组包含其余的宏块位置。
在H.264/AVC中,跨切片组边界禁用图片内预测,因为切片组边界位于切片边界中。因此,每个切片组是隔离区域或者残留区域。
每个切片组具有在图片内的标识编号。编码器可以以如下方式来限制运动矢量:该方式使得它们仅指代属于与要编码的切片组具有相同的标识编号的切片组的已解码宏块。编码器应当考虑以下事实:在部分像素插值中需要大量源样本并且所有的源样本应当在特定的切片组内。
H.264/AVC编解码器包括去块环路滤波器。环路滤波器应用于每个4x4块边界,但是可以由编码器在切片边界处关闭环路滤波。如果在切片边界处关闭环路滤波,则可以在执行逐步随机接入时实现在解码器处的完美的已重构图片。否则,甚至在恢复点之后已重构图片的内容仍然可能不完美。
可以使用H.264/AVC标准的恢复点SEI消息和运动约束切片组集合SEI消息来指示一些切片组被编码为具有受限运动矢量的隔离区域。解码器可以利用这一信息例如实现更快的随机接入或者通过忽略残留区域来在处理时间保存。
例如已经在文档JCTVC-I0356<http:phenix.int-every.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0356-v1.zip>中提出了子图片概念,其类似于H.264/AVC的矩形隔离区域或者矩形运动约束切片组集合。下面描述JCTVC-I0356中提出的子图片概念,然而应当理解,可以将子图片定义为类似而非与以下描述的一致。在子图片概念中,将图片分区成预定义的矩形区域。可以将每个子图片处理为独立图片,除非构成图片的所有子图片共享相同的全局信息,诸如SPS、PPS和参考图片集合。子图片在几何学上类似于图块。它们的属性如下:它们是在序列水平规定的LCU对准的矩形区域。可以在图片的子图片栅格扫描中扫描图片中的子图片。每个子图片开始新的切片。如果图片中存在多个图块,则可以使子图片边界和图块边界对准。跨子图片可以不存在任何环路滤波。子图片外部可以不存在任何样本值和运动信息的预测,并且可以不使用部分样本位置处的样本值来对子图片内的任何样本进行帧间预测,部分样本位置处的样本值使用子图片外部的一个或多个样本值而得到。如果运动矢量指向子图片外部的区域,则可以应用被定义用于图片边界的填充(padding)过程。可以按照子图片内的栅格顺序来扫描LCU,除非子图片包含多于一个图块。在子图片的图块栅格扫描中扫描子图片内的图块。图块不能跨子图片边界,除非每图片默认一个图块的情况。在子图片水平支持在图片水平可用的所有编码机制。
可缩放视频编码是指其中一个比特流能够包含内容的不同比特率、分辨率和/或帧速率的多个表示的编码结构。在这些情况下,接收器可以取决于其特性(例如最佳匹配设备显示的分辨率)来提取期望的表示。替选地,服务器或者网络元件可以取决于例如网络特性或者接收器的处理能力来提取要向接收器传输的部分比特流。
可缩放比特流可以包括提供可用的最低质量视频的“基本层”以及在连同低层一起被接收和解码时增强视频质量的一个或多个增强层。增强层可以增强时间分辨率(即帧速率)、空间分辨率,或者简单地增强由另一层或者其一部分表示的视频内容的质量。为了改善增强层的编码效率,该层的编码表示可以取决于较低层。例如,可以根据较低层来预测增强层的运动和模式信息。类似地,可以使用较低层的像素数据来创建用于增强层的预测。
每个可缩放层连同其所有依赖层是视频信号在某个空间分辨率、时间分辨率和质量水平的一个表示。在本文档中,将可缩放层连同其所有依赖层称为“可缩放层表示”。可以提取并且解码对应于可缩放层表示的可缩放比特流的部分以产生原始信号在某个保真度的表示。
在一些情况下,可以在某个位置之后,或者甚至在任意位置对增强层中的数据截位,其中每个截位位置可以包括表示渐增地增强的视觉质量的附加数据。这样的可缩放性被称为细粒度(粒度)可缩放性(FGS)。FGS被包括在SVC标准的一些草拟版本中,但是其实际上被排除在最终的SVC标准之外。FGS随后在SVC标准的一些草拟版本的情境中讨论。不能被截位的这些增强层提供的可缩放性被称为粗粒度(粒度)可缩放性(CGS)。其共同包括传统的质量(SNR)可缩放性和空间可缩放性。SVC标准支持所谓的中间粒度可缩放性(MGS),其中质量增强图片与SNR可缩放层图片类似地被编码但是通过类似于FGS层图片的高级语法元素、通过具有大于0的quality_id语法元素来指示。
SVC使用层间预测机制,其中可以根据除了当前重构层或者下一低层之外的层来预测某些信息。可以在层间预测的信息包括帧内纹理、运动和残差数据。层间运动预测包括块编码模式、头部信息等的预测,其中来自低层的运动可以用于高层的预测。在帧内编码的情况下,来自周围宏块或者来自低层的共同定位的宏块的预测是可能的。这些预测技术没有采用来自较早编码的接入单元的信息并且因此被称为帧内预测技术。另外,还可以将来自低层的残差数据用于当前层的预测。
SVC规定被称为单循环解码的概念。其通过使用受约束的帧内纹理预测模式来启用,从而可以将层间帧内纹理预测应用于其基本层的对应的块被定位在帧内MB内部的宏块(MB)。同时,基本层中的这些帧内MB使用受约束的帧内预测(例如具有等于1的语法元素“constrained_intra_pred_flag”)。在单循环解码中,解码器仅对于期望用于回放的可缩放层(被称为“期望层”或者“目标层”)执行运动补偿和全图片重构,从而极大地降低解码复杂度。除了期望层之外的所有层都不需要被完全解码,因为未用于层间预测(不管其是层间帧内纹理预测、层间运动预测还是层间残差预测)的MB的数据的全部或者部分不需要用于期望层的重构。单个解码循环需要用于多数图片的解码,而第二解码循环选择性地应用于重构基本表示,其被需要作为预测参考但是没有用于输出或者显示,并且仅针对所谓的关键图片(其“store_ref_base_pic_flag”等于1)被重构。
SVC草拟中的可缩放性结构可以用3个语法元素来表征:“temporal_id”、“dependency_id”和“quality_id”。语法元素“temporal_id”用于指示时间可缩放性层级或者间接地指示帧速率。包括较小的最大“temporal_id”值的图片的可缩放层表示具有比包括较大的最大“temporal_id”的图片的可缩放层表示小的帧速率。给定时间层通常取决于下部时间层(即具有较小的“temporal_id”值的时间层)但是不取决于任何较高的时间层。语法元素“dependency_id”用于指示CGS层间编码依赖性层级(其如早先所提及地包括SNR和空间可缩放性二者)。在任何时间水平位置处,较小的“dependency_id”值的图片可以用于具有较大的“dependency_id”值的图片的编码的层间预测。语法元素“quality_id”用于指示FGS或者MGS层的质量水平层级。在任何时间位置处,并且使用相同的“dependency_id”值,具有等于QL的“quality_id”的图片使用具有等于用于层间预测的QL-1的“quality_id”的图片。可以将具有大于0的“quality_id”的编码切片编码为可截位FGS切片或者非可截位MGS切片。
简言之,一个接入单元中具有相同的“dependency_id”值的所有数据单元(例如SVC情境中的网络抽象层单元或者NAL单元)被称为依赖性单元或者依赖性表示。在一个依赖性单元内,具有相同的“quality_id”值的所有数据单元被称为质量单元或者层表示。
基本表示(也被称为已解码基本图片)是通过对具有等于0的“quality_id”并且其“store_ref_base_pic_flag”被设置为等于1的依赖性单元的视频编码层(VCL)NAL单元解码而得到的已解码图片。增强表示(也被称为已解码图片)是根据规则的解码过程得到的,其中被呈现用于最高依赖性表示的所有层表示都被解码。
如早先所提及的,CGS包括空间可缩放性和SNR可缩放性二者。空间可缩放性初始被设计成支持具有不同的分辨率的视频的表示。对于每个时间实例,VCL NAL单元在相同的接入单元中被编码并且这些VCL NAL单元可以对应于不同的分辨率。在解码期间,低分辨率的VCL NAL单元提供可以可选地通过高分辨率图片的最终解码和重构来继承的运动字段和残差。当与旧的视频压缩标准相比较时,可以将SVC的空间可缩放性概括为使得基本层能够成为增强层的剪裁的且缩放的版本。
类似于FGS质量层,MGS质量层用“quality_id”来表示。对于每个依赖性单元(具有相同的“denpendency_id”),存在具有等于0的“quality_id”的层并且可以存在具有大于0的“quality_id”的其他层。具有大于0的“quality_id”的这些层是MGS层或者FGS层,这取决于切片是否被编码为可截位切片。
在基本形式的FGS增强层中,仅使用层间预测。因此,FGS增强层可以被自由地截位而没有使得已解码序列中的任何错误的传播。然而,基本形式的FGS遭受低的压缩效率。这一问题仅由于低质量的图片用于帧间预测参考而出现。因此提出,将FGS增强的图片用作帧间预测参考。然而,这可能在一些FGS数据被丢弃时引起编码解码失配(也被称为漂移)。
草拟SVC标准的一个特征在于,FGS NAL单元可以被自由地抛弃或者截位,并且SVCV标准的特征在于,MGS NAL单元可以被自由地抛弃(但是不能被截位)而不影响比特流的一致性。如以上所讨论的,当那些FGS或者MGS数据已经在编码期间用于帧间预测参考时,数据的抛弃或者截位会产生解码器侧或者编码器侧的已解码图片之间的失配。这一失配也被称为漂移。
为了控制由于FGS或者MGS数据的抛弃或者截位而产生的漂移,SVC应用以下解决方案:在某个依赖性单元中,基本表示(通过仅解码具有等于0的“quality_id”的CGS图片以及所有的依赖低层数据)被存储在已解码图片缓冲器中。当编码具有相同的“dependency_id”值的随后的依赖性单元时,所有的NAL单元(包括FGS或者MGS NAL单元)使用基本表示用于帧间预测参考。因此,由于较早的接入单元中的FGS或者MGS NAL单元的抛弃或者截位而产生的所有漂移在这一接入单元处被停止。对于具有相同的“dependency_id”值的其他依赖性单元,所有的NAL单元使用已解码图片用于帧间预测参考,以得到高的编码效率。
每个NAL单元在NAL单元头部中包括语法元素“use_ref_base_pic_flag”。当这一元素的值等于1时,NAL单元的解码在帧间预测过程期间使用参考图片的基本表示。语法元素“store_ref_base_pic_flag”规定是(在等于1时)否(在等于0时)存储当前图片的基本表示用于将未来的图片用于帧间预测。
具有大于0的“quality_id”的NAL单元不包含与参考图片列表构造和加权预测相关的语法元素,即语法元素“num_ref_active_1x_minus1”(x=0或者1),参考图片列表对语法表格重新排序,并且不存在加权的预测语法表格。因此,MGS或者FGS层必须根据需要从相同的依赖性单元的具有等于0的“quality_id”的NAL单元继承这些语法元素。
在SVC中,参考图片列表包括仅基本表示(当“user_ref_base_pic_flag”等于1时)或者未被标记为“基本表示”的仅已解码图片(当“user_ref_base_pic_flag”等于0时),但是从不同时包括这二者。
在H.264/AVC比特流中,一个已编码视频序列中的已编码图片使用相同的序列参数集合,并且在解码过程中的任何时刻,仅一个序列参数集合是活跃的。在SVC中,来自不同的可缩放层的已编码图片可以使用不同的序列参数集合。如果使用不同的序列参数集合,则在解码过程中的任何时刻,可以存在多于一个活跃的序列图片参数集合。在SVC规范中,将用于顶层的一个表示为活跃的序列图片参数集合,而将其余的表示为层活跃序列图片参数集合。任何给定的活跃的序列参数集合贯穿其中涉及活跃的序列参数集合的层中的已编码视频序列保持不变。
已经在SVC中规定了可缩放嵌套(nesting)SEI消息。可缩放嵌套SEI消息提供用于使SEI消息与比特流的子集(诸如所指示的依赖性表示或者其他可缩放层)关联的机制。可缩放嵌套SEI消息包含本身不是可缩放嵌套SEI消息的一个或多个SEI消息。可缩放嵌套SEI消息中所包含的SEI消息被称为嵌套SEI消息。没有被包含在可缩放嵌套SEI消息中的SEI消息被称为非嵌套SEI消息。
可以如下来实现用于质量可缩放性(被称为信噪比或者SNR)和/或空间可缩放性的可缩放视频编码器。对于基本层,可以使用传统的非可缩放视频编码器和解码器。基本层的已重构/已解码的图片可以被包括在用于增强层的参考图片缓冲器和/或参考图片列表中。在空间可缩放性的情况下,可以先于将已重构/已解码的基本层图片插入到用于增强层图片的参考图片列表中来对其进行上采样。可以将基本层解码图片插入到参考图片列表中以类似地将增强层图片编码/解码成增强层的解码参考图片。因此,编码器可以选择基本层参考图片作为帧间预测参考并且使用编码比特流中的参考图片索引来指示其使用。解码器根据比特流(例如根据参考图片索引)解码出基本层图片被用作用于增强层的帧间预测参考。当已解码基本层图片被用作用于增强层的预测参考时,其被称为层间参考图片。
自适应分辨率变化是指例如在视频会议使用情况下动态地改变视频序列内的分辨率。自适应分辨率变化可以用于例如更好的网络自适应和容错。为了更好地适应对不同内容的网络需求的改变,可以期望能够在改变质量的同时改变时间/空间分辨率二者。自适应分辨率变化还可以实现很快的开始,其中可以能够通过首先发送低分辨率帧并且然后增加分辨率来增加会话的启动时间。自适应分辨率变化还可以用在组织会议中。例如,当一个人开始讲话时,可以增加他的/她的对应的分辨率。以IDR帧来进行这一操作可以引起质量的“尖峰”,因为IDR帧需要以相对低的质量来编码使得没有显著地增加延迟。
虽然以上段落描述了具有两个可缩放性层——增强层和基本层——的可缩放视频编解码器,然而需要理解,可以将描述概括为具有多于两个层的可缩放层级中的任何两个层。在这种情况下,第二增强层在编码和/或解码过程中可以取决于第一增强层,并且因此可以将第一增强层认为是用于对第二增强层编码和/或解码的基本层。另外,需要理解,增强层的参考图片缓冲器或者参考图片列表中可以存在来自多于一个层的层间参考图片,并且可以将这些层间参考图片中的每个认为是驻留在用于被编码和/或解码的增强层的基本层或者参考层中。
如早先所指出的,MVC是H.264/AVC的扩展。H.264/AVC的其中很多定义、概念、语法结构、语义和解码过程还可以同样应用于MVC或者与某些概括或约束一起使用。下面描述MVC的一些定义、概念、语法结构、语义和解码过程。
MVC中的接入单元定义为按照解码顺序呈连续并且仅包含包括一个或多个视图分量的一个主要编码图片的NAL单元的集合。除了主要编码图片,接入单元还可以包含一个或多个冗余编码图片、一个辅助编码图片、或者不包含编码图片的切片或切片数据分区的其他NAL单元。对接入单元的解码产生包括一个或多个已解码视图分量的一个解码图片,在解码误差时,比特流误差或者可以影响解码的其他误差没有出现。换言之,MVC中的接入单元包含用于一个输出时间实例的视图的视图分量。
MVC中的视图分量被称为单个接入单元中的视图的已编码表示。
视图间预测可以用在MVC中并且指代根据相同接入单元的不同视图分量的已解码样本来预测视图分量。在MVC中,可以类似于帧间预测来实现视图间预测。例如,将视图间参考图片放置在相同的参考图片列表中作为用于帧间预测的参考图片,并且类似地对参考索引以及运动矢量编码或者推断用于视图间和帧间参考图片。
锚点图片是其中所有切片可以仅参考相同的接入单元内的切片的编码图片,即可以使用视图间预测,但是不使用帧间预测,并且按照输出顺序的所有随后的编码图片不使用来自按照解码顺序先于编码图片的任何图片的帧间预测。可以使用视图间预测用于作为非基本视图的一部分的IDR视图分量。MVC中的基本视图是已编码视频序列中具有最小视频顺序索引值的视图。可以独立于其他视图来对基本视图解码,并且基本视图不使用视图间预测。可以通过仅支持单视图简档的H.264/AVC解码器(诸如H.264/AVC的基线简档或者高层简档)来对基本视图解码。
在MVC标准中,MVC解码过程的很多子过程通过分别用“视图分量”、“帧视图分量”和“字段视图分量”代替术语“图片”、“帧”和“字段”来使用H.264/AVC标准的相应的子过程。同样,下面通常使用术语“图片”、“帧”和“字段”来分别表示“视图分量”、“帧视图分量”和“字段视图分量”。
如早先所提及的,MVC比特流的非基本视图可以指代子集序列参数集合NAL单元。用于MVC的子集序列参数集合包括基本SPS数据结构和序列参数集合MVC扩展数据结构。在MVC中,来自不同视图的编码图片可以使用不同的序列参数集合。MVC中的SPS(特别地MVC中的SPS的序列参数集合MVC扩展部分)可以包含用于视图间预测的视图依赖性信息。这可以例如由信号传输可知的媒体网关来使用以构造视图依赖关系树。
在SVC和MVC中,可以将前缀NAL单元定义为按照解码顺序紧跟在用于基本层/视图编码切片的VCL NAL单元前面的NAL单元。可以将按照解码顺序紧跟在前缀NAL单元之后的NAL单元称为关联NAL单元。前缀NAL单元包含与关联NAL单元相关联的数据,其可以被认为是关联NAL单元的一部分。在使用SVC或者MVC解码过程时,可以使用前缀NAL单元以包括影响对基本层/视图编码切片的解码的语法元素。H.264/AVC基本层/视图解码器可以在其解码过程中省略前缀NAL单元。
在可缩放多视图编码中,相同的比特流可以包含多个视图的已编码视图分量,并且可以使用质量和/或空间可缩放性来对至少一些已编码视图分量进行解码。
纹理视图是指表示普通的视频内容的视图,例如已经使用普通的相机来捕获,并且通常适合用于在显示器上渲染。纹理视图通常包括具有三个分量(一个亮度分量和两个色度分量)的图片。下面,纹理图片通常包括所有其组成图片或者颜色分量,除非例如使用术语“亮度纹理图片”和“色度纹理图片”指出。
深度视图是指表示来自相机传感器的纹理样本的距离信息、纹理样本与另一视图中的相应的纹理样本之间的不一致或视差信息、或者类似的信息的视图。类似于纹理视图的亮度分量,深度视图可以包括具有一个分量的深度图片(a.k.a深度映射图)。深度映射图是具有每像素深度信息等的图像。例如,深度映射图中的每个样本表示一个或多个相应的纹理样本距离相机位于其上的平面的距离。换言之,如果z轴沿着相机的拍摄轴(并且因此正交于相机位于其上的平面),则深度映射图中的样本表示z轴上的值。深度映射图的值的语义可以包括例如以下内容:
1.已编码深度视图分量中的每个亮度样本值表示在用于8比特亮度表示的亮度样本的动态范围(诸如0到255的范围,包括性的)内归一化的真实世界距离(Z)值的逆,即1/Z。可以按照其中量化1/Z在视差方面唯一的形式来进行归一化。
2.已编码深度视图分量中的每个亮度样本值表示使用映射函数f(1/Z)或者表格(诸如逐片段线性映射)映射到用于8比特亮度表示的亮度样本的动态范围(诸如0到255的范围,包括性的)的真实世界距离(Z)值的逆,即1/Z。换言之,深度映射图的值产生对函数f(1/Z)的应用。
3.已编码深度视图分量中的每个亮度样本值表示在用于8比特亮度表示的亮度样本的动态范围(诸如0到255的范围,包括性的)内归一化的真实世界距离(Z)值。
4.已编码深度视图分量中的每个亮度样本值表示从当前深度视图到另一所指示或者所得到的深度视图或者视图位置的视差(disparity)或者视差(parallax)值。
虽然使用诸如深度视图、深度视图分量、深度图片和深度映射图等短语来描述各个实施例,然而应当理解,可以在各种实施例(包括但不限于以上描述的实施例)中使用深度映射图的值的任何语义。例如,可以将本发明的实施例应用于其中样本值表示视差值的深度图片。
编码系统或者创建或修改包括已编码深度映射图的比特流的任何其他实体可以向比特流中创建和包括关于深度样本的语法的信息以及关于深度样本的量化方案。可以将这样的关于深度样本的语义的信息以及关于深度样本的量化方案的信息包括在例如视频参数集合结构中,在序列参数集合结构中,或者在SEI消息中。
深度增强视频是指具有与具有一个或多个深度视图的深度视频关联的一个或多个视图的纹理视频。可以使用大量方法用于表示深度增强视频,包括使用视频加深度(V+D)、多视图视频加深度(MVD)和分层深度视频(LDV)的使用。在视频加深度(V+D)表示中,单个纹理视图以及相应的深度视图分别被表示为纹理图片和深度图片的序列。MVD表示包含大量纹理视图和相应的深度视图。在LDV表示中,中央视图的纹理和深度以传统方式来表示,而其他视图的纹理和深度被部分表示并且仅覆盖需要用于中间视图的正确的视图合成的打开的区域。
可以将纹理视图分量定义为单个接入单元中的视图的纹理的编码表示。可以按照与单视图纹理比特流或者多视图纹理比特流兼容的方式来对深度增强视频比特流中的纹理视图分量编码,使得单视图或者多视图解码器即使在其不具有解码深度视图的能力的情况下仍然能够对纹理视图解码。例如,H.264/AVC解码器可以对来自深度增强的H.264/AVC比特流的单个纹理视图解码。替选地,可以按照如下方式来对纹理视图分量编码:其中能够单视图或者多视图纹理解码的解码器(诸如H.264/AVC或者MVC解码器)由于使用基于深度的编码工具而不能够解码例如纹理视图分量。可以将深度视图分量定义为单个接入单元中的视图的深度的编码表示。可以将视图分量对定义为相同的接入单元内的相同的视图的纹理视图分量和深度视图分量。
可以按照如下方式来对深度增强视频编码:其中彼此独立地对纹理和深度编码。例如,可以将纹理视图编码为一个MVC比特流,而可以将深度视图编码为另一MVC比特流。还可以按照如下方式来对深度增强视频编码:其中对纹理和深度联合编码。在对纹理和深度视图的一种形式的联合编码中,根据深度图片的一些解码样本或者在深度图片的解码过程中获得的数据元素来预测或者取得纹理图片的一些解码样本或者用于解码纹理图片的数据元素。替选地或者另外地,根据纹理图片的一些解码样本或者在纹理图片的解码过程中获得的数据元素来预测或者取得深度图片的一些解码样本或者用于解码深度图片的数据元素。在另一选项中,没有根据彼此来预测纹理的已编码视频数据和深度的已编码视频数据,或者没有基于其中一个来对另一个编码/解码,但是可以将已编码的纹理和深度视图复用成编码中的相同的比特流并且根据解码中的比特流来对其解复用。在另一选项中,虽然没有根据例如下面的切片层中的深度的已编码视频数据来预测纹理的已编码视频数据,然而可以彼此共享或者预测纹理视图和深度视图的高水平编码结构中的一些结构。例如,可以根据已编码纹理切片的切片头部来预测已编码深度切片的切片头部。另外,可以由已编码纹理视图和已编码深度视图二者来使用其中一些参数集合。
深度增强视频格式使得能够在相机位置处生成没有用任何编码视图表示的虚拟视图或者图片。通常,基于深度-图像的渲染(DIBR)算法可以用于合成视图。
还可以将视图合成图片称为合成参考分量,其可以被定义为包含可以用于视图合成预测的样本。可以使用合成参考分量作为用于视图合成预测的参考图片,但是其通常不被输出或者显示。假定与用于被编码或者解码的图片相同的相机参数,可以针对相同的相机位置生成视图合成图片。
可以按照与处理视图间参考图片类似的方式来在参考图片列表中引入视图合成图片。在视图合成预测的情况下使用参考图片列表的信令和操作可以保持与在H.264/AVC或者HEVC中规定的那些相同或者相似。
可以在初始参考图片列表List0和List1中例如在时间和视图间参考帧之后包括源自VSP的已合成图片。然而,可以扩展参考图片列表修改语法(即RPLR命令)以支持VSP参考图片,因此编码器可以按照任何顺序来对参考图片列表排序,使用比特流中的RPLR命令来指示最终顺序,以使得解码器重构具有相同的最终顺序的参考图片列表。
用于根据视图合成参考图片来预测的过程(诸如运动信息取得)可以保持与规定用于H.264/AVC或者HEVC的帧间、层间和视图间预测的过程相同或者相似。替选地或者另外地,可以由编码器在比特流中来规定和以信号传输用于视图合成预测的特定编码模式。换言之,VSP可以替选地或者另外地在一些编码和解码布置中用作与帧内、帧间、视图间和其他编码模式独立的模式。例如,在VSP跳跃/直接模式中,还可以省略运动矢量差异(解)编码以及例如使用基于变换的编码的残差预测误差的(解)编码。例如,如果可以在比特流内将宏块指示为要使用跳跃/直接模式来编码,则还可以在比特流内指示VSP帧是否被用作参考。替选地或者另外地,视图合成参考块(而非或者除了完整视图合成参考图片)可以由编码器和/或解码器来生成,并且被用作用于各种预测过程的预测参考。
很多视频编解码器使用拉格朗日成本函数以求得速率失真最优编码模式,例如期望的宏块模式和关联的运动矢量。这一类型的成本函数使用加权因子或λ以将由于有损耗的编码方法所产生的准确的或者估计的图像失真以及表示图像区域中的像素/样本值所需要的准确的或者估计的信息的量绑在一起。拉格朗日成本函数可以用等式表示:
C=D+λR,
其中C是要最小化的拉格朗日算子,D是在当前考虑到模式和运动矢量的情况下的图像失真(例如原始图像块和已编码图像块中的像素/样本值之间的均方误差),λ是拉格朗日系数,R是表示在解码器中重构图像块所需要的数据所需要的比特数目(包括用以表示候选运动矢量的数据量)。
编码标准可以包括子比特流提取过程,并且这样例如在SVC、MVC和HEVC中规定。子比特流提取过程涉及通过向子比特流去除NAL单元来变换比特流。子比特流仍然保持符合标准。例如,在草拟HEVC标准中,通过排除所有具有大于所选择的值的temporal_id的VCL NAL单元并且包括所有其他VCL NAL单元来创建的比特流保持一致。在草拟HEVC标准的另一版本中,子比特流提取过程采用TemporalId和/或LayerId值的列表作为输入并且通过从比特流中去除所有具有大于输入TemporalId值的TemporalId或不在LayerId值的输入列表中的值中的layer_id值的NAL单元来得到子比特流(也被称为比特流子集)。
在草拟HEVC标准中,可以通过如下变量TargetDecLayerIdSet和HighestTid来设置解码器所使用的操作点。可以通过外部手段(诸如解码器控制逻辑)来规定列表TargetDecLayerIdSet(其规定要解码的VCL NAL单元的layer_id的值的集合)。如果没有通过外部手段规定,则列表TargetDecLayerIdSet包含一个用于layer_id的值,其表示基本层(即在草拟HEVC标准中等于0)。可以通过外部手段来规定变量HighestTid(其标识最高时间子层)。如果没有通过外部手段规定,则将HighestTid设置为已编码视频序列或者比特流中可能存在的最高TemporalId值,诸如草拟HEVC标准中的sps_max_sub_layer_minus1的值。可以与TargetDecLayerIdSet和HighestTid一起来应用子比特流提取过程作为输入,并且向比特流分配的输出被称为BitstreamToDecode。可以针对BitstreamToDecode中的每个编码图片操作解码过程。
图9是可以在其中实现各种实施例的通用多媒体通信系统的图形表示。如图9所示,数据源900提供模拟、未压缩数字或者压缩数字格式的源信号,或者这些形式的任意组合的源信号。编码器910将源信号编码成已编码媒体比特流。应当注意,可以从虚拟地位于任何类型的网络内的远程设备来直接或者间接接收待解码比特流。另外,可以从本地硬件或者软件来接收比特流。编码器910可以能够编码多于一个媒体类型,诸如音频和视频,或者可以需要多于一个编码器910来对不同媒体类型的源信号编码。编码器910还可以以合成的方式来得到所产生的输入,诸如图形和文本,或者其可以能够产生合成媒体的已编码比特流。下面,仅考虑一个媒体类型的一个已编码媒体比特流的过程以简化描述。然而,应当注意,多媒体服务通常包括若干流(通常至少一个音频和视频流)。还应当注意,系统可以包括很多编码器,但是在图9中,仅表示一个编码器910以简化描述而不失一般性。还应当理解,虽然本文中所包含的文本和示例可以特别地描述编码过程,但是本领域技术人员应当理解,相同的概念和原理还应用于对应的解码过程,反之亦然。
已编码媒体比特流向存储装置920传输。存储装置920可以包括用以存储已编码媒体比特流的任何类型的大容量存储器。存储装置920中的已编码媒体比特流的格式可以是初级的自包含比特流格式,或者可以将一个或多个已编码媒体比特流封装到容器文件中。如果将一个或多个媒体比特流封装在容器文件中,则可以使用文件生成器(附图中未示出)来在文件中存储一个或多个媒体比特流并且创建文件格式元数据,其也存储在文件中。编码器910或者存储装置920可以包括文件生成器,或者文件生成器在操作上附接到编码器910或者存储装置920之一。一些系统“实时地”操作,即省略存储装置并且从编码器910直接到发送器930传送已编码媒体比特流。然后根据需要向发送器930传送已编码媒体比特流,发送器930还被称为服务器。传输中所使用的格式可以是初级的自包含比特流格式、分组流格式,或者可以将一个或多个已编码媒体比特流封装到容器文件中。编码器910、存储装置920和服务器930可以驻留在相同的物理设备中,或者其可以被包括在单独的设备中。编码器910和服务器930可以实时地处理实时内容,在这种情况下,通常不永久地存储已编码媒体比特流,而是在短的时间段内在内容编码器910和/或服务器930中缓冲其以使得处理延迟、传输延迟和已编码媒体比特率的变化平滑。
服务器930使用通信协议栈来发送已编码媒体比特流。栈可以包括但不限于实时传输协议(RTP)、用户数据报协议(UDP)和因特网协议(IP)。当通信协议栈是分组定向时,服务器930将已编码媒体比特流封装成分组。例如,当使用RTP时,服务器930根据RTP有效载荷格式来将已编码媒体比特流封装成RPT分组。通常,每个媒体类型具有专用RTP有效载荷格式。应当再次注意,系统可以包含多于一个服务器930,但是为了简洁,下面的描述仅考虑一个服务器930。
如果媒体内容被封装在容器文件中用于存储装置920或者用于向发送器930输入数据,则发送器930可以包括或者在操作上附接至“发送文件解析器”(附图中未示出)。特别地,如果没有像这样传输容器文件而是封装至少一个所包含的已编码媒体比特流用于通过通信协议上传输,则发送文件解析器定位已编码媒体比特流的适当的部分以通过通信协议来传达。发送文件解析器还可以帮助创建用于通信协议的正确的格式,诸如分组头部和有效载荷。多媒体容器文件可以包含封装指令,诸如ISO基本媒体文件格式的提示轨道(hint track),用于在通信协议上封装至少一个所包含的媒体比特流。
服务器930可以或者可以不通过通信网络连接到网关940。网关940(其还可以或者替选地被称为中间框或者媒体知道的网络元件(MANE))可以执行不同类型的功能,诸如根据一个通信协议栈到另一通信协议栈来传递分组流,合并和分叉(forking)数据流,以及根据下行链路和/或接收器能力来操作数据流,诸如根据主导下行链路网络情况来控制所转发的流的比特率。网关940的示例包括多点会议控制单元(MCU)、电路交换与分组交换视频电话之间的网关、通过蜂窝的按键通话(POC)服务器、数字视频广播手持式(DVB-H)系统中的IP封装器、或者向家用无线网络本地转发广播传输的机顶盒。在使用RTP时,网关940可以被称为RTP混频器或者RPT转译器,并且可以用作RTP连接的端点。在发送器930与接收器950之间的连接中可以存在零个或者任何数目的网关。
系统包括通常能够接收、解调和/或解封装传输信号成为已编码媒体比特流的一个或多个接收器950。向记录存储装置955传输已编码媒体比特流。记录存储装置955可以包括用以存储已编码媒体比特流的任何类型的大容量存储器。记录存储装置955可以替选地或者另外地包括计算存储器,诸如随机存取存储器。记录存储装置955中的已编码媒体比特流的格式可以是初级的自包含比特流格式,或者可以将一个或多个已编码媒体比特流封装到容器文件中。如果存在彼此关联的多个已编码媒体比特流,诸如音频流和视频流,则通常使用容器文件并且接收器950包括或者附接至根据输入流产生容器文件的容器文件生成器。一些系统“实时地”操作,即省略记录存储装置955并且从接收器950直接到解码器960传送已编码媒体比特流。在一些系统中,仅在记录存储装置955中维持记录流的最近的部分,例如记录流的最近10分钟选录,而从记录存储装置955中丢弃任何更早的记录数据。
从记录存储装置955向解码器960传输已编码媒体比特流。如果存在彼此关联的很多已编码媒体比特流(诸如音频流和视频流)并且这些已编码媒体比特流被封装在容器文件中或者单个媒体比特流被封装在容器文件中例如用于较早的接入,则使用文件解析器(附图中未示出)来解封装来自容器文件的每个已编码媒体比特流。记录存储装置955或者解码器960可以包括文件解析器,或者文件解析器可以附接至记录存储装置955或者解码器960之一。
还可以通过解码器960来处理已编码媒体比特流,解码器960的输出是一个或多个未压缩媒体流。最终,渲染器970可以使用例如扬声器或者显示器来重新产生未压缩媒体流。接收器950、记录存储装置955、解码器960和渲染器970可以驻留在相同的物理设备中或者它们可以被包括在单独的设备中。
在HEVC的可缩放扩展或者用于类似于HEVC的单层编码方案的任何可缩放扩展中,可以将RAP图片规定为具有以下属性中的一个或多个属性。
-可以使用具有大于0的nuh_layer_id的RAP图片的NAL单元类型值来表示增强层随机接入点。
-可以将增强层RAP图片定义为使得能够在先于EL RAP图片的其所有参考层被解码时开始增强层的解码的图片。
-可以针对具有大于0的nuh_layer_id的CRA NAL单元允许层间预测,而不允许帧间预测。
-不需要跨层将CRA NAL单元对准。换言之,可以使用CRA NAL单元类型用于具有特定nuh_layer_id值的所有VCL NAL单元,而可以使用另一NAL单元类型用于相同接入单元中具有另一特定nuh_layer_id值的所有VCL NAL单元。
-BLA图片具有等于0的nuh_layer_id。
-IDR图片可以具有大于0的nuh_layer_id,并且可以对其进行层间预测,而不允许帧间预测。
-不在任何层中或者在所有层中在接入单元中存在IDR图片,即,IDR nuh_unit_type表示其中可能开始所有层的解码的完整的IDR接入单元。
-可以分别用具有大于0的nuh_layer_id的NAL单元类型BLA_W_DLP和BLA_N_LP来表示STLA图片(STLA_W_DLP和STLA_N_LP)。否则,STLA图片可以与具有大于0的nuh_layer_id的IDR图片相同,但是不需要跨层对准。
-在基本层的BLA图片之后,当增强层包含RAP图片并且已经开始其所有参考层的解码时开始对增强层的解码。
-当增强层的解码从CRA图片开始时,类似于BLA图片的RASL图片来处理其RASL图片。
-根据丢失的参考图片来标识参考图片的层向下切换或者非故意丢失,在这种情况下,仅从该增强层上的下一RAP图片来继续相关增强层的解码。
下面,使用可缩放视频编码框架更详细地描述自适应分辨率变化(ARC)使用案例的一些细节。可缩放视频编码本质上包括用于分辨率变化的机制,自适应分辨率变化可以高效地如图7中所指示地被支持。
在图7的示例中,切换在图片3处发生,并且解码器接收具有以下图片的比特流:BL0-BL1-BL2-BL3-EL3-EL4-EL6-EL6…。图片BL0-BL3是基本层的图片,图片EL3-EL6…是增强层的图片。在本示例中,图片BL0-BL3以及EL3-EL6仅使用层内预测,但是图片EL3还可以使用层间预测。
在一些示例实现中,如果比特流中存在分辨率变化,则可以使用序列水平信令来表示解码器。可以例如通过使用系列水平的两个标记或者其他指示符来执行这一操作。可以将这些标记称为inter_layer_pred_for_el_rap_only_flag和single_layer_for_non_rap_flag。可以将inter_layer_pred_for_el_rap_only_flag放置在视频参数集合VPS中,这表示仅增强层中的随机接入图片(RAP)可以使用层间预测而增强层中的非RAP图片不使用层间预测。可以使用single_layer_for_non_rap_flag对以下事实进行信号传输:已编码视频序列被约束为执行自适应分辨率变化操作。single_layer_for_non_rap_flag特别指出除了切片图片以外,序列中的每个AU还包含来自单个层的单个图片(其可以是或者可以不是BL图片);并且其中发生切换的接入单元包括来自两个层的图片并且可以使用层间可缩放性工具。
指出VPS中的这些限制使得解码器能够知道除了实现分辨率变化之外不使用可缩放性,使得可以在会话开始时相应地分配解码器资源。另外,可以需要SHVC解码器知道一些接入单元不需要包含BL图片。这对于下面的情况可能很有用。假定SHVC解码器具有解码低分辨率(例如720p)比特流的能力。如果使用自适应分辨率变化并且切换从720p到1080p发生,则应当存在用以指示不能够解码和显示所接收的比特流中的所有图片的解码器的机制。
在两个标记中分离功能的一个原因在于,编码器可能原始针对所有接入单元发送两个层,但是中间框可以针对多个接收者不同地修剪比特流。例如,中间框(middle-box)可以发送仅针对一些接收者的基本层、针对一些接收者的自适应分辨率变化能够比特流以及针对一些接收者的这两个层。在这种情况下,编码器可以将inter_layer_pred_for_el_rap_only_flag设置为1并且将single_layer_for_non_rap_flag设置为0。如果中间框将这一可缩放比特流修剪为自适应分辨率变化能够比特流,则中间框可以将single_layer_for_non_rap_flag设置为1用于对应的比特流。在一些实施例中,中间框获得接收器的能力和/或引用和/或模式选择(例如编码简档和水平的选择)并且相应地跳过(trip)所转发的流。可以通过例如SDP提供/回答机制来获得能力和/或引用和/或模式选择,或者可以从具有关于特定接收器和/或用于在接收器中的特定设备的能力和/或引用和/或模式选择的信息的服务器来接收能力和/或引用和/或模式选择。
类似于以上针对中间框的示例,播放器或者解码器还可以接受用于所有接入单元的两个或更多层,但是可以判定基于例如可用的计算资源和/或可变存储器和/或显示窗口尺寸来解码哪个空间分辨率。先于解码过程或者作为解码过程的一部分,播放器和/或解码器可以从比特流中去除不必要的已解码图片,这些图片不需要用于解码。例如,如果期望用于增强层的分辨率作为解码器的输出并且inter_layer_pred_for_el_rap_only_flag等于1,则可以去除按照解码顺序作为下一个的EL RAP图片之后的基本层的图片。
当single_layer_for_non_rap_flag等于1时,已经创建比特流的实体(诸如编码器、中间框或者播放器)可以例如通过分配具有等于0的output_flag或者类似的指示的这样的基本层图片来配置还包含非待输出的EL RAP图片的接入单元中的基本层图片。
在一些实施例中,中间框可以是从编码器接收已编码比特流并且向一个或多个接收者发送比特流和/或比特流的已修改版本的网络元件。
下面描述vps_extension语法的示例:
等于1的inter_layer_pred_for_el_rap_only_flag表示具有大于0的layer_id的任何非RAP图片不使用层间预测。等于0的inter_layer_pred_for_el_rap_only_flag表示具有大于0的layer_id的任何非RAP图片可以使用或者可以不使用层间预测。
当inter_layer_pred_for_el_rap_only_flag等于1时,num_direct_ref_layers[layerId]和ref_layer_id[layerId][j]应用于具有等于layerId的layer_id的RAP图片,而具有等于layerId的layer_id的非RAP图片没有精确地使用由ref_layer_id[layerId][j]指示的层用于层间预测。
等于1的single_layer_for_non_rap_flag表示接入单元中的所有VCL NAL单元具有相同的layer_id值或者两个layer_id值被接入单元中的VCL NAL单元使用并且具有较大layer_id值的图片是RAP图片。等于0的single_layer_for_non_rap_flag表示layer_id值可以在或者可以不在可能在其他部分中规定的约束上被约束。
可以替选地通过引入用于增强层的新的NAL单元类型(其可以被称为速率质量层接入(RQLA))来实现以上功能。被指示为可应用于自适应分辨率变化的EL图片可以简写为RQLA。RQLA图片可以仅使用图片内预测和层间预测而不使用帧间预测(即时间预测)。代替或者除了可能的序列水平的信令,约束相同的增强层中的RQLA图片之后的图片可以如下被约束:按照显示顺序在RQLA图片之后的任何图片可以具有这两个约束:i)不存在对按照显示顺序在RQLA图片前面的在相同层中的任何其他图片的依赖性;以及ii)不存在对于非RAP图片的层间预测。替选地或者另外地,约束可以相对于解码顺序:按照解码顺序在RQLA图片之后的任何图片可以具有这两个约束:i)不存在对于按照解码顺序在RQLA图片前面的在相同层中的任何其他图片的依赖性;以及ii)不存在对于非RAP图片的层间预测。
这可以例如如下来指示。在当前图片是RQLA图片时,仅使用层间预测并且不使用时间预测。在当前图片是按照显示顺序在具有等于当前图片的LayerId的RQLA图片之后的图片时,RefPicSetStCurrBefore、RefPicSetStCurrAfter或者RefPicSetLtCurr中不应当包括按照显示顺序在RQLA图片之前的图片。在当前图片是按照显示顺序在具有等于当前图片的LayerId的RQLA图片之后的图片时,不使用层间预测。
可以认为RQLA图片是RAP图片(在增强层中)。
可以如下来规定包括用于RQLA图片的解码的解码操作。
在当前图片具有等于0的nuh_layer_id时,适用以下:
-在当前图片是作为比特流中的第一图片的CRA图片或者IDR图片或者BLA图片时,对于从1到63的所有i值(包括性的),将变量LayerInitialisedFlag[0]设置为等于1并且将变量LayerInitialisedFlag[i]设置为等于0。
-例如根据HEVC规范来应用用于基本层图片的解码过程。
在当前图片具有大于0的nuh_layer_id时,以下适用于当前图片CurrPic的解码。以下有序步骤(其整体或者其子集)使用切片分段层和以上中的语法元素来规定解码过程:
-将与图片顺序计数相关的变量设置为等于与用于相同的接入单元中具有等于0的nuh_layer_id的图片的相同的值。
-解码过程用于参考图片集合(例如如早先所描述的),其中可以将参考图片标记为“未用于参考”或者“用于长期参考”(其仅需要针对图片的第一切片分段被调用)。
-当CurrPic是IDR图片时,将LayerInitialisedFlag[nuh_layer_id]设置为等于1。
-当CurrPic是CRA图片、STLA图片或者RQLA图片之一并且对于等于ref_layer_id[nuh_layer_id][j]的所有的refLayerId值而言LayerInitialised[nuh_layer_id]等于0并且LayerInitialisedFlag[refLayerId]等于1(其中j在0到num_direct_ref_layers[nuh_layer_id]-1的范围内(包括性的))时,则以下适用:
-将LayerInitialisedFlag[nuh_layer_id]设置为等于1。
-当CurrPic是CRA图片时,可以调用用于生成不可用参考图片的解码过程。
-当以下所有为真时,将LayerInitialisedFlag[nuh_layer_id]设置为等于0:
-CurrPic是非RAP图片。
-LayerInitialisedFlag[nuh_layer_id]等于1。
-以下中的一个或多个为真:
-RefPicSetStCurrBefore[i]的任何值等于“非参考图片”,其中i在0到NumPocStCurrBefore-1的范围内(包括性的)。
-RefPicSetStCurrAfter[i]的任何值等于“非参考图片”,其中i在0到NumPocStCurrAfter-1的范围内(包括性的)。
-RefPicSetStCurr[i]的任何值等于“非参考图片”,其中i在0到NumPocStCurr-1的范围内(包括性的)。
-当LayerInitialisedFlag[nuh_layer_id]等于1时,对图片的切片解码。当LayerInitialisedFlag[nuh_layer_id]等于0时,不对图片的切片解码。
-如下来设置PicOutputFlag(控制图片输出;当为0时表示解码器不输出图片,当为1时表示解码器输出图片,除非随后例如通过具有等于1的no_output_of_prior_pics_flag或者类似命令的IDR图片被取消):
-如果LayerInitialisedFlag[nuh_layer_id]等于0,则将PicOutputFlag设置为等于0。
-否则,如果当前图片是RASL图片并且按照解码顺序具有相同的nuh_layer_id的先前RAP图片是CRA图片并且在CRA图片的解码过程的开始LayerInitialisedFlag[nuh_layer_id]的值等于0,则将PicOutputFlag设置为等于0。
-否则,将PicOutputFlag设置为等于pic_output_flag。
-在用于每个P或者B切片的解码过程的开始,调用用于参考图片列表构建的解码过程用于得到参考图片列表0(RefPicList0),并且当解码B切片时,得到参考图片列表1(RefPicList1)。
-在已经解码当前图片的所有切片之后,适用以下:
-将已解码图片标记为“用于短期参考”。
-如果TemporalId等于HighestTid,则调用需要用于层间预测的非参考图片的标记过程,其中latestDecLayerId等于nuh_layer_id作为输入。
可以如下替选地或者另外地实现指示。提供以上呈现的两个标记作为示例实施例,而需要理解,用于编码器指示以及用于解码器推断本发明的各种实施例的使用的其他实施例也是可能的。例如,代替或者除了inter_layer_pred_for_el_rap_only_flag,包含一个或多个指示的视频参数集合和/或任何其他语法结构可以包括用于指示参考层的两个循环,其中一个用于具有等于i的layer_id的非RAP图片,另一个用于具有等于i的layer_id的RAP图片。在另一示例中,代替或者除了single_layer_for_non_rap_flag,可以指示接入单元中存在的layer_id值。
可以例如将一个或多个指示放置在SEI消息或者序列参数集合或者任何其他语法结构中。
指示可以是指其中仅使用来自基本层的帧内图片样本的编码方法(基本层的已解码语法元素值未用于层间预测)。这对于其中基本层语法可能对于增强层解码器而言不可访问的标准可缩放场景而言尤其有用。
自适应分辨率变化概念例如对于质量可缩放性、比特深度可缩放性、空间可缩放性和色度格式可缩放性使用案例可以非常有用。
在到编码器的输入视频以及随后的解码器的输出被帧分组,例如包含立体视频呈现时,也可以应用自适应分辨率变化概念。
自适应分辨率变化概念还可以应用于多视图视频编码,其中可以将视图认为是本发明的描述中的层。因此等于1的inter_layer_pred_for_el_rap_only_flag表示在非基本视图中,仅RAP图片可以使用视图间预测,而非基本视图中的非RAP图片不发生跨视图预测。等于1的single_layer_for_non_rap_flag表示已编码视频序列包含单个视图,除非视图点被切换。发生视图点切换的接入单元包含两个视图,切换目的(switch-to)视图包含可以根据切换源(switch-from)视图中的图片来视图间预测的RAP图片。
可以指示一个或多个指示特定用于一个或多个目标层(使用层间预测)以及一个或多个参考层的某个组合或者某些组合。
例如可以用以下方式中的一个或多个方式来实现到更低分辨率的切换。可以将低分辨率层中的图片编码为RAP图片而没有层间预测。在其中启用或者执行自适应分辨率上切换(upswitching)的接入单元中,可以存储低分辨率图片作为长期参考图片。可以通过使用长期图片作为低分辨率视图中的帧间预测参考来在稍后的接入单元中启用分辨率下切换(down-switching)。编码器可以例如基于编码树块来在以上模式之间自适应地选择,并且在比特流中指示所选择的模式。解码器可以根据比特流来解码模式并且因此复制由编码器确定的自适应选择。可以对更高分辨率层中的图片下采样(down-sampled)并且使用其用于在下层上重构RAP图片时的层间预测。
所谓的超文本传输协议(HTTP)已经广泛地用于通过因特网来递送实时多媒体内容,诸如在视频流送应用中。不同于使用通过用户数据报协议(UDP)的实时传输协议(RTP),HTTP可以更容易配置并且可以被授权防火墙和网络地址转换器(NAT)的遍历。因此,HTTP也可以可应用于多媒体流送应用。
还可以使用通过HTTP的流送用于通过HTTP来发送来自原始web服务器的音频和视频用于在客户端设备上回放。可以使用通过HTTP的流送用于实时广播和预先记录的内容(所需要的视频)二者。可以使用不同比特率的多个替选流,并且客户端软件可以例如在网络带宽变化的情况下在不同的流之间切换。通过HTTP的流送还可以提供通过HTTP的媒体加密和用户认证,以使得内容提供者能够保护他们的工作例如免受对内容的非授权使用。
图15描绘用于通过HTTP的流送的简化的系统。媒体152(例如音频、视频、文本)通过媒体编码器154被编码以产生传送流156。可以通过流分段器158将传送流156分段成分段。可以将分段存储为单独的文件162,或者可以根据需要例如通过在web浏览器160中执行脚本来根据传送流156生成分段。可以在响应于客户端166的HTTP GET请求的HTTP(响应)消息内从web服务器160来分配分段。接收客户端166然后可以存储所接收的分段并且根据分段来解码媒体内容。
在一些实施例中,可以将包含分段的文件称为媒体分段文件。它们可以包含某个时间段的音频和/或视频和/或文本。例如,周期可以是大约10秒、15秒或者某个其他长度。每个分段不需要具有相同的持续时间但是其可以在不同的分段和/或在不同的实施例中变化。
还可以提供索引文件或播放列表,其可以向客户端给出媒体分段文件的位置(例如URL)。可以周期性地刷新播放列表以适应实时的广播,其中可以恒定地产生媒体分段文件。
在通过HTTP的动态自适应流送(DASH)中,可以捕获多媒体内容并且将其存储在HTTP服务器上,并且可以使用HTTP来递送。内容可以分两部分存储在服务器上:描述可用内容、其各种替选、其URL地址以及其他特性的清单(manifest)的媒体呈现描述(MPD);以及在单个或者多个文件中包含大块形式的实际多媒体比特流的分段。为了播放内容,DASH客户端可以例如通过使用HTTP、电子邮件、拇指驱动器、广播或者其他传输方法来包含MPD。通过解析MPD,DASH客户端可以变得知道程序定时、媒体内容可用性、媒体类型、分辨率、最小和最大带宽以及多媒体分量、可访问特征和所需要的数字权限管理(DRM)、网络上的媒体分量位置、以及其他内容特性的各种已编码替选的存在。通过使用这一信息,DASH客户端可以选择适当的编码替选并且通过使用例如HTTP GET请求取回分段来开始流送内容。在适当的缓冲以允许网络吞吐量变化之后,客户端可以继续取回随后的分段并且还监测网络带宽波动。客户端可以判定如何通过取回不同替选(具有更低或更高的比特率)的分段以维持足够的缓冲来适应可用带宽。
媒体呈现描述(MPD)可以提供用于客户端通过HTTP来建立动态自适应流送的信息。MPD可以包含描述媒体呈现的信息,诸如用以做出GET分段请求的每个分段的HTTP-统一资源定位符(URL)。在DASH中,可以使用层级数据模型来构造如图14所示的媒体呈现。媒体呈现可以包括一个或多个周期的序列,每个周期可以包含一个或多个组,每个组可以包含一个或多个自适应集合,每个自适应集合可以包含一个或多个表示,并且每个表示可以包含一个或多个分段。表示是可以通过编码选择(例如通过比特率、分辨率、语言、编解码器等)来变化的媒体内容或者其子集的替选选择之一。分段可以包含媒体数据的某个持续时间以及要解码和呈现所包括的媒体内容的元数据。可以通过统一资源指示符(URI)来识别分段,并且可以通过HTTP GET请求来请求分段。
可以提供DASH服务作为点播服务或者实时服务。在前者中,MPD是静态的并且媒体表示的所有分段在内容提供者发布MPD时已经可用。然而,在后者中,MPD可以是静态的或者动态的,这取决于MPD所采用的分段URL构造方法,并且可以在由内容提供者产生内容并且向DASH客户端发布内容时连续地创建分段。分段URL构造方法可以是基于模板的分段URL构造方法或者分段列表生成方法。在前者中,DASH客户端可以能够构造分段URL而不在请求分段之前更新MPD。在后者中,DASH客户端可能需要周期性地下载已更新MPD以得到分段URL。因此,对于实时服务,基于模板的分段URL构造方法可以优于分段列表生成方法。
媒体分段可以包含用于以正常速度回放的媒体数据的某个持续时间,可以将这样的持续时间称为媒体分段持续时间或者分段持续时间。内容产生者或者服务提供者可以根据服务的期望特性来选择分段持续时间。例如,可以在实时服务中使用相对短的分段持续时间以实现短的端到端延迟。原因在于,分段持续时间可以是由DASH客户端感知的端到端延迟的下边界,因为分段是生成用于DASH的媒体数据的离散的单元。可以按照如下方式来进行内容生成:该方式能够使得媒体数据的整个分段可用于服务器。另外,很多客户端实现可以使用分段作为用于GET请求的单元。因此,在用于实时服务的一些布置中,可以由DASH客户端在媒体分段的整个持续时间可用以及被编码和封装成分段时请求分段。对于点播服务,可以使用选择分段持续时间的不同策略。
还可以将分段分区成子分段,每个子分段可以包含完整的接入单元。可以用分段索引来索引子分段,分段索引可以包含用以映射用于每个分段的呈现时间范围和字节范围的信息,并且可以用于使用字节范围HTTP请求来做出对于特定子分段的HTTP GET请求。如果使用相对长的分段持续时间,则可以使用子分段来保持对于比特率自适应而言合理并且灵活的HTTP响应的尺寸。
可以向每个媒体分段分配唯一的URL(可能具有字节范围)、索引、以及明确的或者隐含的开始时间和持续时间。每个媒体分段可以包含至少一个流接入点,其是其中仅使用来自该点向前的数据来开始解码的媒体流中的随机接入或者切换目的点。
为了使得能够在多个部分中下载分段,可以利用使用分段索引框的对子分段信号传输的方法。这一框通过对其持续时间和字节偏移进行信号传输来描述分段中的子分段和流接入点。通过使用部分HTTP GET请求,DASH客户端可以使用索引信息来请求子分段。可以将分段的索引信息放置在单个框中在该分段的开始处,或者分布在分段中的很多索引框之间。不同的分布方法是可能的,诸如层级、菊花链和混合。这一技术可以避免在分段的开始处添加大的框,并且因此可以防止可能的初始下载延迟。MPEG-DASH定义用于ISO基本媒体文件格式和MPEG-2传输流二者的分段-容器格式。
DASH规定包括媒体呈现时间线和分段可用性时间的不同的时间线。前者表示具有向全局公用呈现时间线映射的媒体内容的接入单元的呈现时间。媒体呈现时间线可以使得DASH能够无缝地同步使用不同的编码技术被编码并且共享公共时间线的不同的媒体分量。后者指示挂钟时间并且用于向客户端信号传输可以用HTTP URL来识别的分段的可用性时间。DASH客户端可以能够通过比较挂钟时间与向该分段分配的分段可用性时间来标识某个分段的可用性时间。可以在媒体分段的实时递送(其被称为实时服务)中使用分段可用性时间。对于实时服务,分段可用性时间可以从一个分段到另一分段而不同,并且某个分段的可用性时间可以取决于分段在媒体呈现时间线中的位置。对于点播服务,分段可用性时间对于所有分段而言可以相同。
DASH通过从自适应集合中的不同的表示动态地请求媒体分段和/或子分段来支持速率自适应以匹配不同的网络带宽。当DASH客户端向上/向下切换表示时,可以需要考虑表示内的编码依赖性。在媒体解码时,表示切换可以仅在随机接入点(RAP)处发生,其可以用在视频编码技术(诸如H.264/AVC)中。为了避免请求和传输将不解码的媒体数据,可以在媒体分段和/或子分段的开始处使得RAP对准,并且可以使用MPD和/或分段索引框来指示在媒体分段和/或子分段的开始处的RAP对准。随后,DASH客户端可以能够推断要请求哪些分段和/或子分段使得在执行表示切换时,目的地表示的第一分段和/或子分段以RAP开始,并且源和目的地表示的分段和/或子分段被对准(从时间上来看)。在DASH中,引入被称为流接入点(SAP)的更一般的概念以提供用于接入表示以及表示之间的切换的独立于编解码器的方案。在DASH中,仅使用从该位置开始向上的表示数据中所包含的信息(之前是对初始化分段中的数据初始化,如果存在)来将SAP规定为表示中使得能够回放要开始的媒体流的位置。因此,可以在SAP中执行表示切换。
内容提供者可以按照能够更简单地做出切换的方式来创建多个表示的分段和子分段。在简单的情况下,每个分段和子分段可以以SAP开始,并且跨自适应集合的表示使得分段和子分段的边界对准。在这样的情况下,通过从原始表示到新的表示请求分段或者子分段,DASH客户端可以能够切换表示而没有误差漂移。在DASH中,在MPD和分段索引中规定了对构造分段和子分段的限制以便促进DASH客户端切换表示而没有引入误差漂移。在DASH中规定的简档的一个使用是提供不同水平的限制以构造分段和子分段等。
DASH标准包括使得能够很快地开启媒体会话的机制。这可以例如如下来进行。将视频分为表示,并且每个表示可以具有不同的质量和分辨率。每个表示可以包括可以持续例如60秒的分段。图14描绘一些DASH表示的一些更多细节。每个分段可以以流接入点来开始,其中可以对分段内的图片编码而没有参考来自不同分段的任何其他图片。这一方式,DASH客户端可以以比其平均带宽更低的比特率表示来开始并且快速地填充其缓冲器,然后其可以切换到更高分辨率的分段并且继续回放。
可以在分段内具有更高的空间分辨率的第一图片与更低空间分辨率图片之间使用层间预测。例如,可以使用具有较低空间分辨率的最后图片中的一个或多个来对具有更高空间分辨率的第一图片进行层间预测。这可以使得能够节省比特率,与其中对具有更高分辨率的第一图片进行帧内预测的情况或者其中其是独立可解码图片的情况相比较。
一些实施例可以实现用于DASH的更高的编码效率和更短的启动时间。还可以能够包括更小频率的IRAP图片(并且因此更长的分段或者子分段),因此仅需要选择IRAP图片的频率为足够用于随机接入和比特率缩放,同时构建缓冲器占用水平可以通过使用ARC分段来处理。
可以通过使用可缩放HEVC概念——更具体地是SHVC内的自适应分辨率变化(ARC)概念——来实现用于DASH会话的启动时间的改善。SHVC使得传输除了其中出现分辨率切换的接入单元的单个层比特流。图7图示SHVC的ARC概念。在一些实施例中,可以使用具有以下特征的DASH内的表示(被称为ARC表示)。图10中描述这一操作的示例。表示100可以包含分段102、104、106,分段102、104、106以更小的分辨率(图10中的分段102)开始,在分段的持续时间内切换到更高的分辨率(图10中的分段104和106),并且分段以更高的分辨率结束;可以使用SHVC来对ARC表示内的分段编码,其中single_layer_for_non_irap_flag(其在本说明书中还被称为single_layer_for_non_rap_flag)为真。这可以表示,更高分辨率切换图片使用未采样的低分辨率图片作为用于对改善的编码效率的预测的参考。
可以将single_layer_for_non_irap_flag的值设置为例如1以表示single_layer_for_non_irap_flag为真。
在执行分辨率切换时,DASH客户端可能仅取回ARC表示的一个分段并且随后取回更高分辨率分段。
在一些实施例中,可以根据较低分辨率表示中的先前分段的图片来预测ARC表示的分段。例如,参考图10,可以根据表示1(具有分辨率720p)的先前分段的图片来预测ARC表示的分段中的一些720p分辨率的图片。在一些实施例中,可以以SAP来开始ARC表示的分段,并且因此可以独立于任何表示中的更早的分段来对其编码和/或解码。
在一些实施例中,可以在DASH客户端中根据ARC表示的先前分段的图片来预测目的地(更高分辨率)表示的分段中的图片。例如,参考图10,可以在DASH客户端中根据ARC表示中的先前分段的图片来预测表示2的分段中的一些1080p分辨率的图片。由于在没有使用ARC表示的图片作为参考的情况下已经对更高分辨率的表示编码,所以在编码器和以在本段落中所描述的方式操作的DASH客户端之间的已解码样本值中存在漂移。这一漂移可以在对更高分辨率的表示的下一SAP解码时停止存在。在一些实施例中,更高分辨率的表示的分段可以以SAP开始并且可以不根据更早的分段来预测。
DASH客户端可以执行下面的操作用于使用ARC表示来实现分辨率切换(参考图11a到11c用于说明)。在发起会话之后,DASH客户端可以建立可用带宽,分析MPD并且确定适当的分辨率以开始会话用于快速启动和最佳分辨率以在客户端的缓冲器相对较满时继续。基于这些参数,客户端可以请求适当的表示内的适当的分段。在向更高分辨率的切换的期望时间,客户端可以从ARC表示110来请求适当的分段112、114、116。在图11a的示例中,使用图10的分段114作为切换分段,在图11b的示例中,使用分段112作为切换分段,在图11a的示例中,使用分段116作为切换分段。在ARC分段110被请求并且发生到更高的分辨率的切换之后,客户端可以继续下载更高分辨率的分段。这些分段在图11a到11c中用附图标记108图示。如果客户端的带宽变化(例如增加),则可以执行类似的操作。DASH客户端可以例如基于尚未解码和/或播出的所接收的和所缓冲的媒体数据的占用或者持续时间来确定分辨率切换。
如果自适应集合中存在多于两个分辨率,则可以使用单独的ARC表示来在每个表示之间切换。图12a描绘这样的自适应集合的示例。图12b图示使用图12a的自适应集合的表示1和2从较低分辨率(在本示例中为720p)到较高分辨率(在本示例中为1080p)的切换以及使用表示3进一步到更高分辨率(在本示例中为4K x 2K)的切换。相应地,图12c图示使用图12a的自适应集合的表示1、2和3从较低分辨率(在本示例中为720p)到较高分辨率(在本示例中为1080p)的切换。另外,可以在自适应集合中使用具有不同特性(诸如在不同点处出现的切换点)的不同的ARC表示。图13中描绘这一操作的一些示例。
下面描述一些实现和各种替选。可以将用于切换的分段采集并且包括在单独的表示中。可以使用以下属性用于这一表示:startWidth属性可以规定视频分段的开始图片的水平视觉呈现尺寸;startHeight属性可以规定视频分段的开始图片的竖直视觉呈现尺寸;switchPoint属性可以规定分辨率在此处从(startWidth,startHeight)到(width,height)所规定的分辨率变化的切换点。
应当注意,以上描述假定属性width的语义,修改height以使其对应于用于这一表示的分段的末尾处的图片尺寸。然而,这是较小的实现细节,并且也可以使用其他替选。
可以在例如如下的示例MPD中来实现以上内容。在本示例中,表示id=3是保持ARC分段的所提出的表示。在本示例中,存在一些附加属性,并且带宽参数的值小于表示2,因为表示3的分段以更低的分辨率开始。
MPD或者任何清单可以包括关于用于表示的初始缓冲要求的信息。例如,在MPD属性中,minBufferTime和bandwidth对初始缓冲要求进行特征化。可以将它们的语义定义如下:考虑到以每秒比特(bps)为单位的具有bandwidth属性的值的带宽的假设恒定的比特率。因此,如果连续地以这一比特率递送表示,在用startWithSAP或者用任何分段索引框指示的任何SAP处的开始,可以确保客户端具有用于提供在minBufferTime*bandwidth比特已经被接收到之后(即在第一比特被接收到之后的时间minBufferTime处)播出开始的连续播出的足够的数据。
对于ARC表示,可以将关于初始缓冲要求的信息定义为涉及其中第一分段是ARC分段的分段序列(例如从720p到1080p分辨率)并且下面的分段具有更高分辨率(例如1080p)。例如,可以如下规定minBufferTime和bandwidth用于ARC表示:考虑到具有以每秒比特(bps)为单位的bandwidth属性的值的带宽的假设恒定的比特率信道。因此,如果这一(ARC)表示的第一分段之后是目的地表示的分段序列并且所有这些分段以这一比特率连续被递送,则在由startWithSAP指示的任何SAP处开始,可以确保客户端具有用于提供在minBufferTime*bandwidth比特已经被接收到之后(即在第一比特被接收到之后的时间minBufferTime处)播出开始的连续播出的足够的数据。
DASH客户端可以接收和解释关于与ARC表示相关的初始缓冲要求的信息。客户端可以估计可用比特率和/或具有其他用以确定预期可用比特率的手段。客户端可以确定预期可用比特率适合更高分辨率(例如1080p)但是1080p的表示可能需要长的初始缓冲时间。客户端因此可以要求之后是更高分辨率的分段的ARC表示的分段。
在一些实施例中,可以能够使用仅包括用于从一个分辨率到另一分辨率的切换的分段的不同的表示。另外,还可以例如如下以替选方式来实现类似的操作。到不同分辨率的切换还可以在分段之间发生,但是没有在分段内发生。例如,ARC表示内的第一分段可以具有HD分辨率并且ARC表示的第二分段可以具有UHD分辨率。在这一情况下,第二分段的第一图片可以取决于第一分段的最后图片。这可以例如通过允许分段之间的交叠来布置(即较低分辨率分段可以比共同定时的较高分辨率分段持续长一个图片的时间)。
需要理解,虽然参考分段来描述实施例,然而替代地或者另外地,可以类似地参考子分段来实现实施例。
需要理解,虽然参考DASH和/或MPD来描述实施例,然而可以参考通过HTTP或者类似的协议和/或任何清单格式的任何流送来实现实施例。
图4a示出根据一种示例实施例的用于视频编码和解码的框图。在本实施例中,编码器包括像素预测器302、预测误差编码器303和预测误差解码器304。图4a还将像素预测器302的一种实施例示出为包括帧间预测器306、帧内预测器308、模式选择器310、滤波器316和参考帧存储器318。在本实施例中,模式选择器310包括块处理器381和成本评估器382。编码器还可以包括用于对比特流进行熵编码的熵编码器330。
图4b描绘包括基本层编码元件410和增强层编码元件420的空间可缩放性编码装置400的一种实施例。基本层编码元件410将输入视频信号402编码到基本层比特流418,并且相应地,增强层编码元件420将输入视频信号402编码到增强层比特流428。空间可缩放性编码装置400还可以包括下采样器404,下采样器404用于在基本层表示和增强层表示的分辨率彼此不同的情况下对输入视频信号进行下采样。例如,基本层和增强层之间的缩放因子可以是1:2,其中增强层的分辨率是基本层的分辨率的两倍(在水平和竖直方向二者上)。
基本层编码元件410和增强层编码元件420可以包括与图4a中所描绘的编码器类似的元件,或者它们可以彼此不同。
基本层编码元件410参考图4a的编码器例如如下来对输入视频信号的帧编码。像素预测器302接收要在帧间预测器306(其确定图像和运动补偿参考帧318之间的差异)和帧内预测器308(其仅基于当前帧或者当前图片的已处理部分来确定用于图像块的预测)处编码的图像300。向模式选择器310传递帧间预测器和帧内预测器二者的输出。帧间预测器306和帧内预测器308二者可以具有多于一个帧间预测模式。因此,可以针对每个模式执行帧间预测和帧内预测,并且可以向模式选择器310提供预测信号。模式选择器310还接收图像300的副本。
模式选择器310确定要使用哪个编码模式来对当前块编码。如果模式选择器310判定使用帧间预测模式,则其向模式选择器310的输出传递帧间预测器306的输出。如果模式选择器310判定使用帧内预测模式,则其向模式选择器310的输出传递帧内预测模式之一的输出。
模式选择器310可以在成本评估器块382中使用例如拉格朗日成本函数来通常基于块来在编码模式及其参数值(诸如运动矢量、参考索引和帧内预测方向)之间进行选择。这种成本函数可以使用加权因子lambda以将由于有损耗的编码方法所产生的(准确的或者估计的)图像失真以及表示图像区域中的像素值所需要的(准确的或者估计的)信息量绑在一起:C=D+lambda x R,其中C是要最小化的拉格朗日算子,D是在考虑到模式和它们的参数的情况下的图像失真(例如均方误差),R是表示在解码器中重构图像块所需要的数据所需要的比特数目(例如包括用以表示候选运动矢量的数据量)。
向第一求和设备321传递模式选择器的输出。第一求和设备可以减去从图像300中减去像素预测器302的输出以产生向预测误差编码器303输入的第一预测误差信号320。
像素预测器302还从初步重构器339接收图像块312的预测表示和预测误差解码器304的输出338的组合。可以向帧内预测器308和滤波器316传递初步重构图像314。接收初步表示的滤波器316可以对初步表示滤波并且输出可以被保存在参考帧存储器318中的最终重构图像340。参考帧存储器318可以连接到帧间预测器306以用作在帧间预测操作中将未来的图像300与其相比较的参考图像。在很多实施例中,参考帧存储器318可以能够存储多于一个已解码图片,并且其中的一个或多个可以由帧间预测器306用作在帧间预测操作中将未来的图像300与其相比较的参考图片。参考帧存储器318在很多情况下还可以被称为已解码图片缓冲器。
在很多实施例中,参考帧存储器318可以能够存储不同层的已解码图片,或者可以存在用于存储不同层的已解码图片的不同的参考帧存储器。
像素预测器302的操作可以被配置成执行任何像素预测算法。
像素预测器302还可以包括在从像素预测器302输出预测值之前对预测值滤波的滤波器385。
滤波器316可以用于降低来自参考图像的各种伪影,诸如块化伪影、环形伪影等。
滤波器316可以包括例如去块滤波器、样本自适应偏移(SAO)滤波器和/或自适应环路滤波器(ALF)。在一些实施例中,编码器基于例如RDO来确定要滤波图片的哪个区域以及滤波器系数并且向解码器对这一信息进行信号传输。
在执行自适应分辨率变化时,基本层编码元件410可以向增强层编码元件420提供关于基本层编码数据(或者一些增强层数据)的信息,诸如运动信息和关于块分区的信息。增强层编码元件420可以使用这一数据确定在构造基本层数据中使用了哪些参考帧,其中可以在对增强层执行当前块的运动预测时使用相同的参考帧。这一操作例如可以在对图7的图EL3编码时执行。
当增强层编码元件420对增强层的图像的区域(例如CTU)编码时,其确定基本层中的哪个区域对应于要在增强层中编码的区域。例如,可以通过对具有在基本层与增强层之间的空间分辨率缩放因子的CTU的坐标进行缩放来计算对应区域的位置。增强层编码元件420还可以检查是否应当在增强层的当前CTU的编码中使用样本自适应偏移滤波器和/或自适应环路滤波器。如果增强层编码元件420判定使用样本自适应滤波器和/或自适应环路滤波器用于这一区域,则增强层编码元件420还可以在构造用于当前增强层块的参考块时使用样本自适应滤波器和/或自适应环路滤波器来对基本层的样本值滤波。当确定基本层的对应块和滤波模式时,基本层的已重构样本然后例如从参考帧存储器318得到并且向滤波器440提供用于滤波。然而如果增强层编码元件420判定未使用样本自适应滤波器和自适应环路滤波器用于这一区域,则增强层编码元件420还可以不使用样本自适应滤波器和自适应环路滤波器来对基本层的样本值滤波。
如果增强层编码元件420已经选择SAO滤波器,则其可以利用以上呈现的SAO算法。
预测误差编码器303、403包括变换单元342、442和量化器344、444。变换单元342、442将第一预测误差信号320、420变换到变换域。变换是例如DCT变换。量化器344、444对变换域信号(例如DCT系数)进行量化以形成已量化系数。
预测误差解码器304、404从预测误差编码器303、403接收输出并且执行预测误差编码器303、403的相反过程以产生已解码预测误差信号338、438,已解码预测误差信号338、438当在第二求和设备339、439处与图像块312、412的预测表示组合时产生初步重构图像314、414。可以认为预测误差解码器包括去量化器361、461和逆变换单元363、463,去量化器361、461对已量化系数值(例如DCT系数)去量化以重构变换信号,逆变换单元363、463执行到已重构变换信号的逆变换,其中逆变换单元363、463的输出包含已重构块。预测误差解码器还可以包括可以根据另外的解码信息和滤波器参数来对已重构宏块滤波的宏块滤波器。
熵编码器330、430接收预测误差编码器303、403的输出并且可以对信号执行合适的熵编码/可变长度编码以提供误差检测和校正能力。可以例如通过多路复用器508来将熵编码器330、430的输出插入到比特流中。
在一些实施例中,滤波器440包括相同的自适应滤波器,在一些其他实施例中,滤波器440包括自适应环路滤波器,在又一些其他实施例中,滤波器440包括样本自适应滤波器和自适应环路滤波器二者。
如果基本层和增强层的分辨率彼此不同,则可能需要通过上采样器450来对已滤波基本层样本值进行上采样。然后向增强层编码元件420提供上采样器450的输出(即上采样后的已滤波基本层样本值)作为用于增强层上的当前块的像素值的预测的参考。
为了完整性,下文中描述合适的解码器。然而,一些解码器可能不能够处理增强层数据,其中它们可能不能够解码所有的接收图像。解码器可以检查所接收的比特流以确定两个标记(诸如inter_layer_pred_for_el_rap_only_flag和single_layer_for_non_rap_flag)的值。如果第一标记的值表明仅增强层中的随机接入图片可以利用层间预测并且增强层中的非RAP图片从不利用层间预测,则解码器可以推断仅与RAP图片一起使用层间预测。
在解码器侧,执行类似的操作以重构图像块。图5a示出适合用于采用本发明的实施例的视频解码器的框图。图5b示出包括基本层解码元件810和增强层解码元件820的空间可缩放性解码装置800的框图。基本层解码元件810将已编码基本层比特流802解码成基本层已解码视频信号818,并且相应地,增强层解码元件820将已编码增强层比特流804解码成增强层已解码视频信号828。空间可缩放性解码装置800还可以包括用于对已重构基本层像素值滤波的滤波器840和用于对已滤波已重构基本层像素值上采样的上采样器850。
基本层解码元件810和增强层解码元件820可以包括与图4a中所描绘的编码器类似的元件,或者它们可以彼此不同。换言之,基本层解码元件810和增强层解码元件820二者可以包括图5a所示的解码器的元件中的全部或者部分元件。在一些实施例中,可以使用相同的解码器电路用于实现基本层解码元件810和增强层解码元件820的操作,其中解码器知道当前解码的层。
解码器示出对所接收的信号执行熵解码的熵解码器700。熵解码器因此执行以上描述的编码器的熵编码器330的逆操作。熵解码器700向预测误差解码器702和像素预测器704输出熵解码的结果。
像素预测器704接收熵解码器700的输出。熵解码器700的输出可以包括在对当前块编码时使用的预测模式的指示。像素预测器704内的预测符选择器714可以确定要解码的当前块是增强层块。因此,预测符选择器714可以选择使用来自另一层(诸如基本层)上的对应块的信息来对基本层预测块滤波同时对当前增强层块解码。解码器已经接收到当在增强层预测中使用之前对基本层预测块滤波的这一指示,其中重构处理器791可以使用这一指示向滤波器840提供已重构基本层块值并且确定使用哪种滤波器(例如SAO滤波器和/或自适应环路滤波器)或者可以存在其他方式以确定是否应当使用已修改解码模式。
预测符选择器可以向第一组合器713输出图像块716的预测表示。图像块716的预测表示与已重构预测误差信号712结合使用以生成初步已重构图像718。初步已重构图像718可以在预测器714中使用或者可以向滤波器720传递。滤波器720应用输出最终已重构信号722的滤波。可以将最终已重构信号722存储在参考帧存储器724中,参考帧存储器724还连接到预测器714用于预测操作。
预测误差解码器702接收熵解码器700的输出。预测误差解码器702的去量化器792可以对熵解码器700的输出去量化,并且逆变换块793可以执行由去量化器792输出的已去量化信号的逆变换操作。熵解码器700的输出还可以表示不应用预测误差信号并且在这种情况下预测误差解码器产生全零输出信号。
假定解码器已经对对应的基本层块解码,从对应的基本层块中对于修改的信息可以被解码器使用。可以由解码器来搜索与增强层块对应的基本层中的当前像素块,或者解码器可以接收和解码来自指示基本块和/或基本块在修改过程中使用哪些信息的比特流的信息。
在一些实施例中,可以使用除了H.264/AVC或者HEVC之外的另一标准来对基本层编码。
还可以可能的是,使用被用作用于基本层数据的预处理器的任何增强层后处理模块,包括HEVC SAO和HEVC ALF后滤波器。可以在操作基本层数据时修改增强层后处理模块。例如,可以禁用某些模式或者可以添加某些新的模式。
图1示出根据一种示例实施例的视频编码系统的框图,作为示例性装置或者电子设备50的示意性框图,其可以包括根据本发明的一种实施例的编解码器。图2示出根据一种示例实施例的装置的布局。下面解释图1和2的元件。
电子设备50例如可以是无线通信系统的移动终端或者用户设备。然而,应当理解,可以在可能需要对视频图像编码和解码或者编码或解码的任何电子设备或装置内实现本发明的实施例。
装置50可以包括用于包括和保护设备的外壳30。装置50还可以包括液晶显示器形式的显示器32。在本发明的其他实施例中,显示器可以是适合显示图像或者视频的任意合适的显示技术。装置50还可以包括小键盘34。在本发明的其他实施例中,可以采用任意合适的数据或者用户接口机制。例如,可以将用户接口实现为虚拟键盘或者数据输入系统作为触敏显示器的一部分。装置可以包括麦克风36或者可以作为数字或模拟信号输入的任意合适的音频输入。装置50还可以包括在本发明的实施例中可以是以下任何之一的音频输出设备:耳机38、扬声器、或者模拟音频或数字音频输出连接。装置50还可以包括电池40(或者在本发明的其他实施例中,设备可以由任意合适的移动能量设备(诸如太阳能电池、燃料电池或者发条发电机)来供电)。装置还可以包括能够记录或者捕获图像和/或视频的相机42。在一些实施例中,装置50还可以包括用于与其他设备的短距离视线通信的红外线端口。在其他实施例中,装置50还可以包括任意合适的短距离通信解决方案,诸如例如蓝牙无线连接或者USB/火线有线连接。
装置50可以包括用于控制装置50的控制器56或者处理器。控制器56可以连接到存储器58,存储器58在本发明的实施例中可以存储图像和音频数据两种形式的数据,和/或还可以存储用于在控制器56上实现的指令。控制器56还可以连接到编解码器电路54,编解码器电路54适合用于执行对音频和/或视频数据的编码和解码或者帮助由控制器56来执行的编码和解码。
装置50还可以包括读卡器48和智能卡46,例如用于提供用户信息并且适合用于提供用于用户在网络处的认证和授权的认证信息的UICC和UICC阅读器。
装置50可以包括无线电接口电路52,无线电接口电路52连接到控制器并且适合用于生成例如用于与蜂窝通信网络、无线通信系统或者无线局域网的通信的无线通信信号。装置50还可以包括天线44,天线44连接到无线电接口电路52用于向其他装置传输在无线电接口电路52处生成的射频信号并且从其他装置接收射频信号。
在本发明的一些实施例中,装置50包括能够记录或者检测各个帧的相机,各个帧然后向编解码器54或者控制器传递用于处理。在本发明的一些实施例中,装置可以先于传输和/或存储从另一设备接收视频图像数据用于处理。在本发明的一些实施例中,装置50可以无线地或者通过有线连接接收图像用于编码/解码。
图3示出根据一种示例实施例的包括多个装置、网络和网络元件的用于视频编码的布置。关于图3,示出了可以在其中利用本发明的实施例的系统的示例。系统10包括可以通过一个或多个网络来通信的多个通信设备。系统10可以包括有线或者无线网络的任意组合,包括但不限于无线蜂窝电话网络(诸如GSM、UMTS、CDMA网络等)、诸如由IEEE 802.x标准中的任何一个定义的无线局域网(WLAN)、蓝牙个人区域网、以太网局域网、令牌环局域网、广域网和因特网。
系统10可以包括适合用于实现本发明的实施例的有线和无线通信设备或装置50两者。例如,图3所示的系统示出了移动电话网络11和因特网28的表示。到因特网28的连接可以包括但不限于远距离无线连接、近距离无线连接和各种有线连接(包括但不限于电话线、线缆线、电力线和类似的通信路径)。
系统10中所示的示例通信设备可以包括但不限于电子设备或装置50、个人数字助理(PDA)和移动电话14的组合、PDA 16、集成消息设备(IMD)18、台式计算机20、笔记本计算机22。装置50在由运动的个人携带时可以是静止的或者移动的。装置50还可以以传送模式被定位,包括但不限于汽车、卡车、出租车、公共汽车、火车、轮船、飞机、自行车、摩托车或者任何类似的合适的传送模式。
一些或者另外的装置可以发送和接收呼叫和消息并且通过到基站24的无线连接25来与服务提供商通信。基站24可以连接到允许移动电话网络11与因特网28之间的通信的网络服务器26。系统可以包括附加通信设备和各种类型的通信设备。
通信设备可以使用各种传输技术来通信,包括但不限于码分多址(CDMA)、全球移动通信系统(GSM)、通用移动通信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议网际协议(TCP-IP)、短消息服务(SMS)、多媒体消息服务(MMS)、电子邮件、即时消息服务(IMS)、蓝牙、IEEE 802.11以及任何类似的无线通信技术。实现本发明的各种实施例时所涉及的通信设备可以使用各种媒体来通信,包括但不限于无线电、红外线、激光、线缆连接以及任意合适的连接。
如以上所描述的,接入单元可以包含不同视图以及不同可缩放层的不同分量类型的切片(例如主要纹理分量、冗余纹理分量、辅助分量、深度/视差分量)。可以将分量图片定义为用于依赖性表示、层表示、纹理视图分量、深度视图分量、深度映射图等的统称术语。可以使用分量图片定界符NAL单元来将已编码分量图片彼此分离,分量图片定界符NAL单元还可以携带要用于对分量图片的已编码切片解码的公用语法元素值。接入单元可以包括相对大数目的分量图片,诸如已编码纹理和深度视图分量以及依赖性和层表示。一些分量图片的已编码尺寸例如可以相对小,因为可以认为它们表示相对于基本视图或者基本层的增量(delta)并且因为深度分量图片可以相对较容易压缩。当比特流中存在分量图片定界符NAL单元时,可以将分量图片定义为分量图片定界符NAL单元和随后的已编码切片NAL单元,直到接入单元的结尾或者直到下一分量图片定界符NAL单元,排他性地,按照解码顺序以较早者为准。
以上,已经关于特定类型的参数集合描述了一些实施例。然而,需要理解,可以使用比特流中的任何类型的参数集合或者其他语法结构来实现实施例。
以上,已经关于向比特流中或者向已编码视频序列中对指示、语法元素和/或语法结构编码和/或从比特流或者从已编码视频序列中对指示、语法元素和/或语法结构解码描述了一些实施例。然而,需要理解,可以如下实现实施例:当将指示、语法元素和/或语法结构编码到语法结构或者数据单元(其在比特流或者已编码视频序列外部,包括视频编码层数据(诸如已编码切片))中时,和/或当从语法结构或者数据单元(其在比特流或者已编码视频序列外部,包括视频编码层数据(诸如已编码切片))对指示、语法元素和/或语法结构解码时。例如,在一些实施例中,可以将根据任何以上实施例的指示编码到视频参数集合或者序列参数集合中,视频参数集合或者序列参数集合例如使用控制协议(诸如SDP)从已编码视频序列外部来传达。继续相同的示例,接收者可以例如使用控制协议来获得视频参数集合或者序列参数集合,并且提供视频参数集合或者序列参数集合用于解码。
以上,已经关于编码/解码方法或者具有分量间依赖性的工具描述了一些实施例。需要理解,实施例可以不特定于所描述的编码/解码方法而是可以使用任何类型的编码/解码方法或者工具来实现。
以上,已经在比特流的语法的帮助下描述了示例实施例。然而,需要理解,对应的结构和/或计算机程序可以驻留在编码器处以生成比特流和/或驻留在解码器处以解码比特流。同样,虽然关于编码器来描述示例实施例,然而需要理解,所得到的比特流和解码器在其中具有对应的元素。同样,虽然关于解码器来描述示例实施例,然而需要理解,编码器具有用于生成要由解码器来解码的比特流的结构和/或计算机程序。
以上,已经关于增强层和基本层描述了一些实施例。需要理解,基本层也可以是任何其他层,只要其是用于增强层的参考层即可。还需要理解,编码器可以向比特流中生成多于两个层,并且解码器可以从比特流中解码多于两个层。可以使用增强层及其参考层的任意对来实现实施例。同样,可以在考虑多于两个层的情况下来实现很多实施例。
虽然以上示例描述在电子设备内的编解码器内操作的本发明的实施例,然而应当理解,可以将如下面描述的本发明实现为任何视频编解码器的一部分。因此,例如,可以在可以通过固定或者有线通信路径来实现视频编码的视频编解码器中来实现本发明的实施例。
因此,用户设备可以包括诸如以上在本发明的实施例中所描述的那些编解码器等视频编解码器。应当理解,术语“用户设备”意在覆盖任意合适类型的无线用户设备,诸如移动电话、便携式数据处理设备或者便携式web浏览器。
公用陆地移动网(PLMN)的另外的元件还可以包括如以上描述的视频编解码器。
通常,本发明的各种实施例可以在硬件或专用电路、软件、逻辑或者其任意组合中实现。例如,一些方面可以在硬件中实现,而其他方面可以实现在可以由控制器、微处理器或者其他计算设备来执行的固件或者软件中,尽管本发明不限于此。虽然可以将本发明的各个方面图示和描述为框图、流程图,或者使用一些其他图示表示来图示和描述,然而应当理解,本文中所描述的这些块、装置、系统、技术或者方法(作为非限制性示例)可以实施在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或者其他计算设备、或者他们的某个组合中。
还可以用由移动设备的数据处理器可执行的计算机软件来实现本发明的实施例,诸如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。另外,在这点上,应当注意,附图中的逻辑流程的任何块可以表示程序步骤、或者互连的逻辑电路、块和功能、或者程序步骤和逻辑电路、块和功能的组合。软件可以存储在这样的物理介质上(如存储器芯片)、在处理器内实现的存储器块、诸如硬盘或软盘等磁性介质、以及诸如例如DVD及其数据变型、CD等光学介质上。
可以在驻留在存储器中并且使得相关装置执行本发明的计算机程序代码的帮助下来实现本发明的各种实施例。例如,终端设备可以包括用于处置、接收和传输数据的电路和电子装置、存储器中的计算机程序代码以及在运行计算机程序代码时使得终端设备执行实施例的特征的处理器。另外,网络设备可以包括用于处置、接收和传输数据的电路和电子装置、存储器中的计算机程序代码以及在运行计算机程序代码时使得网络设备执行实施例的特征的处理器。
存储器可以是适合本地技术环境的任何类型并且可以使用任意合适的数据存储技术(诸如基于半导体的存储器设备、磁性存储器设备和系统、光学存储器设备和系统、固定存储器和可移除存储器)来实现。数据处理器可以是适合本地技术环境的任何类型,并且可以包括通用计算机、专用计算机、微处理器、数字信号处理器(DSP)和基于多核处理器架构的处理器中的一个或多个(作为非限制性示例)。
本发明的实施例可以用各种部件(诸如集成电路模块)来实践。集成电路的设计大体上是高度自动化的过程。复杂且强大的软件工具可用于将逻辑水平的设计转换成准备好在半导体基底上蚀刻和形成的半导体电路设计。
诸如由Synopsys,Inc.of Mountain View,California和CadenceDesign,of San Jose,California提供的程序等程序自动地使用很好地建立的设计规则以及预先存储的设计模块的库来在半导体芯片上布线半导体和定位部件。一旦完成用于半导体电路的设计,则可以将标准化电子格式(例如Opus、GDSII等)的所得到的设计传输到半导体制造设施或者“fab”用于制造。
以上描述已经通过示例性非限制性示例提供了对本发明的示例性实施例的完整且信息量大的描述。然而,相关领域的技术人员在结合附图和所附权利要求阅读时鉴于以上描述会很清楚各种修改和变型。然而,本发明的教导的所有这样的和相似的修改仍然落入本发明的范围内。
下面,提供一些示例。
根据第一示例,提供了一种方法,包括:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
在使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,该时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
在一些实施例中,该方法包括以下中的一项或多项:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象层单元中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在一些实施例中,该方法包括:
提供该指示作为第一指示符和第二指示符。
在一些实施例中,该方法包括:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在一些实施例中,该方法包括使用该第二图片用于以下至少之一:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
在一些实施例中,该方法包括:
通过网络元件接收用于视频呈现的至少一个接入单元的该第一层和该第二层的已编码图片;以及
确定要向接收者发送该视频呈现的格式;
其中基于该确定,该方法还包括:
向该接收者仅发送该视频呈现的一个层;或者
向该接收者发送该第一层和该第二层两者。
根据第二示例,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,该至少一个存储器和该计算机程序代码被配置成通过该至少一个处理器使得该装置:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
在使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,该时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
在该装置的一些实施例中,该至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象单元层中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
提供该指示作为第一指示符和第二指示符。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置使用该第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
通过网络元件接收用于视频呈现的至少一个接入单元的该第一层和该第二层的已编码图片;以及
确定要向接收者发送该视频呈现的格式;
其中基于该确定,该方法还包括:
向该接收者仅发送该视频呈现的一个层;或者
向该接收者发送该第一层和该第二层两者。
根据第三示例,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码;
在使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码,该时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码;以及
对指示编码,该指示是在不使用层间预测的情况下对第一图片和第三图片编码以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
在一些实施例中,该计算机程序产品包括计算机程序代码,该计算机程序代码被配置成在由该至少一个处理器执行时使得该装置或者该系统至少进行以下操作:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象单元层中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
提供该指示作为第一指示符和第二指示符。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统使用该第二图片用于以下至少之一的计算机程序代码:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
通过网络元件接收用于视频呈现的至少一个接入单元的该第一层和该第二层的已编码图片;以及
确定要向接收者发送该视频呈现的格式;
其中基于该确定,该方法还包括:
向该接收者仅发送该视频呈现的一个层;或者
向该接收者发送该第一层和该第二层两者。
根据第四示例,提供了一种装置,包括:
用于在不使用层间预测的情况下对第一层上具有第一分辨率的第一图片编码的装置;
用于在使用第一层与第二层之间的层间预测并且在不使用时间预测的情况下对第二层上具有第二分辨率的第二图片编码的装置,该时间预测使用来自第二层的图片用于提供从第一层到第二层的切换点;
用于在不使用层间预测并且不在时间上参考第二层上在第二图片之前的图片的情况下对第二层上具有第二分辨率的第三图片编码的装置;以及
用于对指示编码的装置,该指示是在不使用层间预测的情况下对第一图片和第三图片编码以及在使用层间预测但不使用时间预测的情况下对第二图片编码的指示。
根据第五示例,提供了一种方法,包括:
接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点,其中如果存在切换点并且如果切换点指代使用层间预测被编码的图片,则该方法还包括:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
在一些实施例中,该方法包括以下中的一项或多项:
在序列水平接收该一个或多个指示;
接收该一个或多个指示作为网络抽象层处的一种类型的单元;
在补充增强信息网络抽象层单元中接收该一个或多个指示;
在序列参数集合中接收该一个或多个指示。
在一些实施例中,该方法包括:
接收该指示作为第一指示符和第二指示符。
在一些实施例中,该方法包括:
使用该第一指示符确定已编码视频序列是否被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换图片之外每个接入单元是否包含来自单个层的单个图片;以及发生切换的接入单元是否包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在一些实施例中,该方法包括使用该第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
根据第六示例,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点,其中所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行以下操作,如果切换点存在并且切换点指代使用层间预测被编码的图片,则:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
在该装置的一些实施例中,该至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
在序列水平接收该一个或多个指示;
通过网络抽象层处的一种类型的单元来接收该指示;
在补充增强信息网络抽象单元层中接收该指示;
在序列参数集合中接收该一个或多个指示。
在该装置的一些实施例中,该至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
接收该指示作为第一指示符和第二指示符。
在该装置的一些实施例中,该至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
使用该第一指示符确定已编码视频序列是否被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换图片之外每个接入单元是否包含来自单个层的单个图片;以及确定发生切换的接入单元是否包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在该装置的一些实施例中,该至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置使用该第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
根据第七示例,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点,其中所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得装置至少执行以下操作,如果切换点存在并且切换点指代使用层间预测被编码的图片,则:
对第一层中在切换点之前的一个或多个图片解码;
对与切换点相关联的一个或多个图片解码;以及
对第二层中在切换点之后的一个或多个图片解码。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
在序列水平接收该一个或多个指示;
通过网络抽象层处的一种类型的单元来接收该一个或多个指示;
在补充增强信息网络抽象单元层中接收该一个或多个指示;
在序列参数集合中接收该一个或多个指示。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
接收该指示作为第一指示符和第二指示符。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
使用该第一指示符确定已编码视频序列是否被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换图片之外每个接入单元是否包含来自单个层的单个图片;以及确定发生切换的接入单元是否包括来自两个层的图片并且能够使用层间可缩放性工具。
在一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该网络抽象层单元类型用于指示该切换点并且用以指示用该网络抽象层单元类型指示的图片之后的任何图片未使用层间预测并且不参考使用该网络抽象层单元类型指示的图片之前的图片。
在一些实施例中,该第一层是可缩放视频编码的基本层;该第二层是该可缩放视频编码的增强层。
在一些实施例中,该第一层是可缩放视频编码的第一增强层;该第二层是该可缩放视频编码的另一增强层。
在一些实施例中,该第一层是多视图视频编码的第一视图;该第二层是该多视图视频编码的第二视图。
在一些实施例中,该第二图片是以下图片类型之一:
帧内已编码图片;
没有时间预测的图片;
锚点接入单元;
随机接入单元;或者
逐步随机接入图片。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统使用该第二图片用于以下至少之一的计算机程序代码:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
根据第八示例,提供了一种装置,包括:
用于接收一个或多个指示以确定比特流中是否存在从第一层到第二层的切换点的装置;
用于对第一层中在切换点之前的一个或多个图片解码的装置,用于对与切换点相关联的一个或多个图片解码的装置,以及用于在切换点存在并且切换点指代使用层间预测被编码的图片的情况下对第二层中在切换点之后的一个或多个图片解码的装置。
根据第九示例,提供了一种方法,包括:
将具有第一分辨率的第一图片集合编码到第一表示中;
在使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码以及在使用层间预测而不使用时间预测的情况下对第二图片集合中的至少一个图片编码的指示。
在一些实施例中,该方法包括:
将该第一表示、该第二表示和该第三表示编码到自适应集合中。
在一些实施例中,该方法包括:
将该自适应集合存储到文件中;以及
提供该文件的内容的媒体呈现描述。
在一些实施例中,该方法包括以下中的一项或多项:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象单元层中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在一些实施例中,该方法包括:
提供该指示作为第一指示符和第二指示符。
在一些实施例中,该方法包括:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该方法的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_irap_flag。
在一些实施例中,该方法包括:
接收发送该第二表示的请求。
在一些实施例中,该方法包括:
接收发送包括图片的集合的呈现的媒体呈现描述的请求。
在一些实施例中,该方法包括:使用以下中的一项或多项来传输该分段:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。
根据第十示例,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
将具有第一分辨率的第一图片集合编码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片编码。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
将该第一表示、该第二表示和该第三表示编码到自适应集合中。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
将该自适应集合存储到文件中;以及
提供该文件的内容的媒体呈现描述。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象单元层中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
提供该指示作为第一指示符和第二指示符。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该装置的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_irap_flag。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
接收发送该第二表示的请求。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下各项:
接收发送包括图片的集合的呈现的媒体呈现描述的请求。
在该装置的一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置使用以下中的一项或多项来传输该分段:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。
根据第十一示例,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
将具有第一分辨率的第一图片集合编码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下将第二图片集合编码到第二表示中,该时间预测用于提供从第一分辨率到第二分辨率的切换点;
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下将具有第二分辨率的第三图片集合编码到第三表示中;以及
对指示编码,该指示是在不使用层间预测的情况下对第一和第三图片集合编码以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片编码的指示。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
将该第一表示、该第二表示和该第三表示编码到自适应集合中。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
将该自适应集合存储到文件中;以及
提供该文件的内容的媒体呈现描述。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
在序列水平以信号传输该指示;
通过网络抽象层处的一种类型的单元以信号传输该指示;
在补充增强信息网络抽象单元层中以信号传输该指示;
在序列参数集合中以信号传输该指示。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
提供该指示作为第一指示符和第二指示符。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
使用该第一指示符指示已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符指示除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及指示发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该计算机程序产品的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_rap_flag。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
接收发送该第二表示的请求。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
接收发送包括图片的集合的呈现的媒体呈现描述的请求。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统使用以下中的一项或多项来传输该分段的计算机程序代码:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。
根据第十二示例,提供了一种方法,包括:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码以及在使用层间预测而不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中解码具有第二分辨率的第三图片集合。
在一些实施例中,该方法包括:
从自适应集合中对该第一表示、该第二表示和该第三表示解码。
在一些实施例中,该方法包括:
接收该自适应集合作为文件;以及
接收该文件的内容的媒体呈现描述。
在一些实施例中,该方法包括以下中的一项或多项:
在序列水平接收该指示;
通过网络抽象层处的一种类型的单元来接收该指示;
在补充增强信息网络抽象单元层中接收该指示;
在序列参数集合中接收该指示。
在一些实施例中,该方法包括:
接收该指示作为第一指示符和第二指示符。
在一些实施例中,该方法包括:
使用该第一指示符确定已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及确定发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该方法的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_irap_flag。
在一些实施例中,该方法包括:
发送发送该第二表示的请求。
在一些实施例中,该方法包括:
发送发送包括图片的集合的呈现的媒体呈现描述的请求。
在一些实施例中,该方法包括使用以下中的一项或多项来接收该分段:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。
根据第十三示例,提供了一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置成通过至少一个处理器使得装置:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码以及在使用层间预测但不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测但不使用时间预测从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中对具有第二分辨率的第三图片集合解码。
在一些实施例中,该至少一个存储器上存储有代码,该代码在由该至少一个处理器执行时使得该装置至少执行以下操作:
从自适应集合对该第一表示、该第二表示和该第三表示解码。
在一些实施例中,该至少一个存储器上存储有代码,该代码在由该至少一个处理器执行时使得该装置至少执行以下操作:
接收该自适应集合作为文件;以及
接收该文件的内容的媒体呈现描述。
在一些实施例中,该至少一个存储器上存储有代码,该代码在由该至少一个处理器执行时使得该装置至少执行以下操作:
在序列水平接收该指示;
通过网络抽象层处的一种类型的单元来接收该指示;
在补充增强信息网络抽象单元层中接收该指示;
在序列参数集合中接收该指示。
在一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下:
接收该指示作为第一指示符和第二指示符。
在一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下:
使用该第一指示符确定已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及确定发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该装置的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_irap_flag。
在一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下:
发送发送该第二表示的请求。
在一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置执行至少以下:
发送发送包括图片的集合的呈现的媒体呈现描述的请求。
在一些实施例中,所述至少一个存储器上存储有代码,该代码在由所述至少一个处理器执行时使得该装置使用以下中的一项或多项来接收该分段:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。
根据第十四示例,提供了一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,该计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
对指示解码,该指示是在不使用层间预测的情况下对第一和第三图片集合解码以及在使用层间预测而不使用时间预测的情况下对第二图片集合中的至少一个图片解码的指示;
将具有第一分辨率的第一图片集合解码到第一表示中;
使用来自第一图片集合的帧间预测并且在不使用时间预测的情况下从第二表示中对第二图片集合解码,该时间预测用于提供从第一分辨率到第二分辨率的切换点;以及
在不使用层间预测并且不在时间上参考在第二表示的第二图片集合之前的图片的情况下从第三表示中对具有第二分辨率的第三图片集合解码。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
从自适应集合中对该第一表示、该第二表示和该第三表示解码。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
接收该自适应集合作为文件;以及
接收该文件的内容的媒体呈现描述。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
在序列水平接收该指示;
通过网络抽象层处的一种类型的单元来接收该指示;
在补充增强信息网络抽象单元层中接收该指示;
在序列参数集合中接收该指示。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置至少进行以下操作的计算机程序代码:
接收该指示作为第一指示符和第二指示符。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
使用该第一指示符确定已编码视频序列被约束为执行该自适应分辨率变化操作;以及
使用该第二指示符确定除了切换点处的图片之外每个接入单元包含来自单个层的单个图片;以及确定发生切换的接入单元包括来自两个层的图片并且能够使用层间可缩放性工具。
在该计算机程序产品的一些实施例中,该第一指示符是inter_layer_pred_for_el_rap_only_flag,该第二指示符是single_layer_for_non_irap_flag。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
发送发送该第二表示的请求。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统至少进行以下操作的计算机程序代码:
发送发送包括图片的集合的呈现的媒体呈现描述的请求。
在一些实施例中,该计算机程序产品包括被配置成在由所述至少一个处理器执行时使得该装置或者该系统使用以下中的一项或多项来接收该分段的计算机程序代码:
通过HTTP的动态自适应流送;
电子邮件;
拇指驱动器;
广播。

Claims (35)

1.一种方法,包括:
接收第一指示符和第二指示符;
通过使用所述第一指示符和所述第二指示符中的至少一个指示符来确定比特流中是否存在从第一层到第二层的切换点,所述切换点是指使用层间预测编码的图片;
如果所述确定指示这样的切换点存在,则:
对所述第一层中在所述切换点之前的一个或多个图片解码;
对与所述切换点相关联的一个或多个图片解码;以及
对所述第二层中在所述切换点之后的一个或多个图片解码。
2.根据权利要求1所述的方法,包括以下各项中的一项或多项:
在序列水平接收所述第一指示符和所述第二指示符;
接收所述第一指示符和所述第二指示符作为网络抽象层处的一种类型的单元;
在补充增强信息网络抽象层单元中接收所述第一指示符和所述第二指示符;
在序列参数集合中接收所述第一指示符和所述第二指示符。
3.根据权利要求1或2所述的方法,包括:
使用所述第一指示符来确定已编码视频序列是否被约束为执行自适应分辨率变化操作;以及使用所述第二指示符来确定除了切换图片之外每个接入单元是否包含来自单个层的单个图片;以及发生切换的接入单元是否包括来自两个层的图片以及是否能够使用层间可缩放性工具。
4.根据权利要求1、2或3所述的方法,包括以下各项中的一项:
所述第一层是可缩放视频编码的基本层;并且所述第二层是所述可缩放视频编码的增强层;
所述第一层是可缩放视频编码的第一增强层;并且所述第二层是所述可缩放视频编码的另一增强层;
所述第一层是多视图视频编码的第一视图;并且所述第二层是所述多视图视频编码的第二视图。
5.根据权利要求1至4中任一项所述的方法,包括:使用所述第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
6.一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成通过所述至少一个处理器使得所述装置:
接收第一指示符和第二指示符;
通过使用所述第一指示符和所述第二指示符中的至少一个指示符来确定比特流中是否存在从第一层到第二层的切换点;
如果所述确定指示这样的切换点存在,则:
对所述第一层中在所述切换点之前的一个或多个图片解码;
对与所述切换点相关联的一个或多个图片解码;以及
对所述第二层中在所述切换点之后的一个或多个图片解码。
7.根据权利要求6所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置执行至少以下各项:
在序列水平接收所述第一指示符和所述第二指示符;
接收所述第一指示符和所述第二指示符作为网络抽象层处的一种类型的单元;
在补充增强信息网络抽象层单元中接收所述第一指示符和所述第二指示符;
在序列参数集合中接收所述第一指示符和所述第二指示符。
8.根据权利要求7所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置执行至少以下各项:
使用所述第一指示符来确定已编码视频序列是否被约束为执行自适应分辨率变化操作;以及
使用所述第二指示符来确定除了切换图片之外每个接入单元是否包含来自单个层的单个图片;以及发生切换的接入单元是否包括来自两个层的图片以及是否能够使用层间可缩放性工具。
9.根据权利要求6至8中任一项所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置使用所述第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
10.一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
接收第一指示符和第二指示符;
通过使用所述第一指示符和所述第二指示符中的至少一个指示符来确定比特流中是否存在从第一层到第二层的切换点;
如果所述确定指示这样的切换点存在,则:
对所述第一层中在所述切换点之前的一个或多个图片解码;
对与所述切换点相关联的一个或多个图片解码;以及
对所述第二层中在所述切换点之后的一个或多个图片解码。
11.根据权利要求10所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统执行至少以下各项:
在序列水平接收所述第一指示符和所述第二指示符;
接收所述第一指示符和所述第二指示符作为网络抽象层处的一种类型的单元;
在补充增强信息网络抽象层单元中接收所述第一指示符和所述第二指示符;
在序列参数集合中接收所述第一指示符和所述第二指示符。
12.根据权利要求10或11所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统使用所述第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
13.一种方法,包括:
在不使用层间预测的情况下根据在第一层上具有第一分辨率的第一图片类型对第一图片编码;
使用所述第一层与第二层之间的层间预测并且在不使用时间预测的情况下根据在所述第二层上具有第二分辨率的第二图片类型对第二图片编码,所述时间预测使用来自所述第二层的图片用于提供从所述第一层到所述第二层的切换点;
在不使用层间预测并且不在时间上参考所述第二层上在所述第二图片之前的图片的情况下根据在所述第二层上具有所述第二分辨率的第三图片类型来对第三图片编码;以及
对指示编码,所述指示是在不使用层间预测的情况下对所述第一图片和所述第三图片编码以及能够使用层间预测但不使用时间预测对所述第二图片编码的指示。
14.根据权利要求13所述的方法,包括以下各项中的一项或多项:
在序列水平以信号传输所述指示;
通过网络抽象层处的一种类型的单元以信号传输所述指示;
在补充增强信息网络抽象层单元中以信号传输所述指示;
在序列参数集合中以信号传输所述指示;
在视频参数集合中以信号传输所述指示。
15.根据权利要求13或14所述的方法,其中所述指示还指示所述指示的范围内的所有接入单元,包括:
-所述第一图片类型的图片;
-所述第二图片类型的图片;
-所述第三图片类型的图片;
-所述第一图片类型的图片和所述第二图片类型的图片。
16.根据权利要求13至15中任一项所述的方法,包括使用所述网络抽象层单元类型以指示所述第二图片类型的图片、以及指示所述第二层中按照解码顺序在使用所述网络抽象层单元类型指示的图片之后的任何图片属于所述第三图片类型。
17.根据权利要求13至16中任一项所述的方法,包括以下各项中的一项:
所述第一层是可缩放视频编码的基本层;并且所述第二层是所述可缩放视频编码的增强层;
所述第一层是可缩放视频编码的第一增强层;并且所述第二层是所述可缩放视频编码的另一增强层;
所述第一层是多视图视频编码的第一视图;并且所述第二层是所述多视图视频编码的第二视图。
18.根据权利要求13至17中任一项所述的方法,包括使用所述第二图片用于以下各项中的至少一项:
视频呈现的分辨率变化;
质量可缩放性;
比特深度可缩放性;
空间可缩放性;
色度格式可缩放性。
19.根据权利要求13所述的方法,包括:
通过网络元件接收用于视频呈现的至少一个接入单元的所述第一层和所述第二层的已编码图片;以及
确定要向接收者发送所述视频呈现的格式;
其中基于所述确定,所述方法还包括:
向所述接收者仅发送所述视频呈现的一个层;或者
向所述接收者发送所述第一层和所述第二层两者。
20.一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成通过所述至少一个处理器使得所述装置:
在不使用层间预测的情况下根据在第一层上具有第一分辨率的第一图片类型对第一图片编码;
使用所述第一层与第二层之间的层间预测并且在不使用时间预测的情况下根据在所述第二层上具有第二分辨率的第二图片类型对第二图片编码,所述时间预测使用来自所述第二层的图片用于提供从所述第一层到所述第二层的切换点;
在不使用层间预测并且不在时间上参考所述第二层上在所述第二图片之前的图片的情况下根据在所述第二层上具有所述第二分辨率的第三图片类型来对第三图片编码;以及
对指示编码,所述指示是在不使用层间预测的情况下对所述第一图片和所述第三图片编码以及能够使用层间预测但不使用时间预测对所述第二图片编码的指示。
21.根据权利要求20所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置执行至少以下各项:
在序列水平以信号传输所述指示;
通过网络抽象层处的一种类型的单元以信号传输所述指示;
在补充增强信息网络抽象层单元中以信号传输所述指示;
在序列参数集合中以信号传输所述指示;
在视频参数集合中以信号传输所述指示。
22.根据权利要求20或21所述的装置,其中所述指示还指示所述指示的范围内的所有接入单元,包括:
-所述第一图片类型的图片;
-所述第二图片类型的图片;
-所述第三图片类型的图片;
-所述第一图片类型的图片和所述第二图片类型的图片。
23.根据权利要求20、21或22所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置执行至少以下各项:
通过网络元件接收用于视频呈现的至少一个接入单元的所述第一层和所述第二层的已编码图片;以及
确定要向接收者发送所述视频呈现的格式;
其中基于所述确定,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时还使得所述装置执行至少以下各项:
向所述接收者仅发送所述视频呈现的一个层;或者
向所述接收者发送所述第一层和所述第二层两者。
24.一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统:
在不使用层间预测的情况下根据在第一层上具有第一分辨率的第一图片类型对第一图片编码;
使用所述第一层与第二层之间的层间预测并且在不使用时间预测的情况下根据在所述第二层上具有第二分辨率的第二图片类型对第二图片编码,所述时间预测使用来自所述第二层的图片用于提供从所述第一分辨率到所述第二分辨率的切换点;
在不使用层间预测并且不在时间上参考所述第二层上在所述第二图片之前的图片的情况下根据在所述第二层上具有所述第二分辨率的第三图片类型来对第三图片编码;以及
对指示编码,所述指示是在不使用层间预测的情况下对所述第一图片和所述第三图片编码以及能够使用层间预测但不使用时间预测对所述第二图片编码的指示。
25.根据权利要求24所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统执行至少以下各项:
在序列水平以信号传输所述指示;
通过网络抽象层处的一种类型的单元以信号传输所述指示;
在补充增强信息网络抽象层单元中以信号传输所述指示;
在序列参数集合中以信号传输所述指示;
在视频参数集合中以信号传输所述指示。
26.根据权利要求24或25所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统执行至少以下各项:
通过网络元件接收用于视频呈现的至少一个接入单元的所述第一层和所述第二层的已编码图片;以及
确定要向接收者发送所述视频呈现的格式;
其中基于所述确定,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时还使得所述装置或者所述系统执行至少以下各项:
向所述接收者仅发送所述视频呈现的一个层;或者
向所述接收者发送所述第一层和所述第二层两者。
27.一种方法,包括:
对指示解码,所述指示指示接入单元包括一个图片或者多于一个层的两个或更多图片;
其中所述方法还包括:
检查接入单元是包括一个图片还是包括一个层上的图片以及更高层上的随机接入点图片;
基于所述检查,从所述接入单元对所述一个图片或者多于一个层的两个或更多图片解码。
28.根据权利要求27所述的方法,所述检查包括:
检查所述接入单元的VCL NAL单元的层标识符值;
如果所有的标识符值相同,则确定所述接入单元包括所述一个图片;或者
如果至少两个标识符值不同,则确定所述接入单元包括多于一个层的两个或更多图片。
29.一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成通过所述至少一个处理器使得所述装置执行以下各项中的一项:
对指示解码,所述指示指示接入单元包括一个图片或者多于一个层的两个或更多图片;
其中所述至少一个存储器和所述计算机程序代码还被配置成通过所述至少一个处理器使得所述装置:
检查接入单元是包括一个图片还是包括一个层上的图片以及更高层上的随机接入点图片;
基于所述检查,从所述接入单元对所述一个图片或者多于一个层的两个或更多图片解码。
30.根据权利要求29所述的装置,所述至少一个存储器上存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置至少执行以下各项:
检查所述接入单元的VCL NAL单元的层标识符值;
如果所有的标识符值相同,则确定所述接入单元包括所述一个图片;或者
如果至少两个标识符值不同,则确定所述接入单元包括多于一个层的两个或更多图片。
31.一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统执行以下各项中的一项:
对指示解码,所述指示指示所述接入单元包括一个图片或者多于一个层的两个或更多图片;
其中所述计算机程序代码还被配置成通过所述至少一个处理器使得所述装置:
检查接入单元是包括一个图片还是包括一个层上的图片以及更高层上的随机接入点图片;
基于所述检查,从所述接入单元对所述一个图片或者多于一个层的两个或更多图片解码。
32.根据权利要求31所述的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统执行至少以下各项:
检查所述接入单元的VCL NAL单元的层标识符值;
如果所有的标识符值相同,则确定所述接入单元包括所述一个图片;或者
如果至少两个标识符值不同,则确定所述接入单元包括多于一个层的两个或更多图片。
33.一种方法,包括:
在不使用层间预测的情况下向接入单元中编码一个图片;或者
向接入单元中编码一个层上的图片以及更高层上的随机接入点图片,其中使用所述一个层与所述更高层之间的层间预测用于提供从所述一个层到所述更高层的切换点;
其中所述方法还包括对指示编码,所述指示指示所述接入单元包括一个图片或者多于一个层的两个或更多图片。
34.一种装置,包括:至少一个处理器以及包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置成通过所述至少一个处理器使得所述装置执行以下各项中的一项:
在不使用层间预测的情况下向接入单元中编码一个图片;或者
向接入单元中编码一个层上的图片以及更高层上的随机接入点图片,其中使用所述一个层与所述更高层之间的层间预测用于提供从所述一个层到所述更高层的切换点;
其中所述至少一个存储器上还存储有代码,所述代码在由所述至少一个处理器执行时使得所述装置:对指示编码,所述指示指示所述接入单元包括一个图片或者多于一个层的两个或更多图片。
35.一种在非暂态计算机可读介质上实施的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置成当在至少一个处理器上执行时使得装置或者系统执行以下各项中的一项:
在不使用层间预测的情况下向接入单元中编码一个图片;或者
向接入单元中编码一个层上的图片以及更高层上的随机接入点图片,其中使用所述一个层与所述更高层之间的层间预测用于提供从所述一个层到所述更高层的切换点;
其中所述计算机程序代码还被配置成在由所述至少一个处理器执行时使得所述装置或者所述系统:对指示编码,所述指示指示所述接入单元包括一个图片或者多于一个层的两个或更多图片。
CN201480012813.0A 2013-01-07 2014-01-07 用于视频编码和解码的方法和装置 Pending CN105027567A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361749530P 2013-01-07 2013-01-07
US61/749,530 2013-01-07
PCT/FI2014/050007 WO2014106692A1 (en) 2013-01-07 2014-01-07 Method and apparatus for video coding and decoding

Publications (1)

Publication Number Publication Date
CN105027567A true CN105027567A (zh) 2015-11-04

Family

ID=51062175

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480012813.0A Pending CN105027567A (zh) 2013-01-07 2014-01-07 用于视频编码和解码的方法和装置

Country Status (7)

Country Link
US (1) US10616573B2 (zh)
EP (1) EP2941868B1 (zh)
JP (1) JP6290924B2 (zh)
KR (1) KR101825575B1 (zh)
CN (1) CN105027567A (zh)
CA (1) CA2897152C (zh)
WO (1) WO2014106692A1 (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686036A (zh) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 多媒体数据下载方法、客户端、服务器及系统
CN108370444A (zh) * 2015-12-21 2018-08-03 汤姆逊许可公司 组合自适应分辨率和内部比特深度增加编码的方法和装置
CN109151505A (zh) * 2018-11-07 2019-01-04 深圳市网心科技有限公司 一种视频转码方法、系统、装置及计算机可读存储介质
WO2019128668A1 (zh) * 2017-12-26 2019-07-04 中兴通讯股份有限公司 视频码流处理方法、装置、网络设备和可读存储介质
CN110796205A (zh) * 2019-11-04 2020-02-14 华南理工大学 特征映射复用编解码器架构网络及快速分割方法
CN111279703A (zh) * 2017-07-05 2020-06-12 艾锐势有限责任公司 用于加权角度预测的后滤波
CN111543060A (zh) * 2017-10-09 2020-08-14 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
CN112118443A (zh) * 2019-06-21 2020-12-22 腾讯美国有限责任公司 视频解码方法、系统、计算机设备以及存储介质
CN112385212A (zh) * 2018-06-07 2021-02-19 交互数字Vc控股公司 用于视频编码或解码的语法元素
CN112655208A (zh) * 2018-07-09 2021-04-13 弗劳恩霍夫应用研究促进协会 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法
CN112690002A (zh) * 2018-09-14 2021-04-20 华为技术有限公司 点云译码中属性层和指示的改进
CN112703743A (zh) * 2018-09-14 2021-04-23 华为技术有限公司 视频译码中的条带和分块
CN113366843A (zh) * 2018-12-20 2021-09-07 瑞典爱立信有限公司 恢复点的规范指示
CN113424543A (zh) * 2019-02-01 2021-09-21 北京字节跳动网络技术有限公司 使用参数集信令通知环路整形信息
CN113498606A (zh) * 2019-01-02 2021-10-12 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
US20210392378A1 (en) * 2020-06-10 2021-12-16 Sharp Kabushiki Kaisha Systems and methods for signaling sequence parameter information in video coding
CN113841395A (zh) * 2019-05-16 2021-12-24 北京字节跳动网络技术有限公司 视频编解码中的自适应分辨率改变
CN114175633A (zh) * 2019-07-10 2022-03-11 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的样点标识
CN114205626A (zh) * 2020-09-17 2022-03-18 脸萌有限公司 视频操作点记录语法和语义
CN114208166A (zh) * 2019-08-10 2022-03-18 北京字节跳动网络技术有限公司 视频比特流中的子图片相关信令通知
US11882287B2 (en) 2019-03-01 2024-01-23 Beijing Bytedance Network Technology Co., Ltd Direction-based prediction for intra block copy in video coding
US11956432B2 (en) 2019-10-18 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Interplay between subpictures and in-loop filtering
CN117935743A (zh) * 2024-03-22 2024-04-26 钰泰半导体股份有限公司 背光光源分区调光控制方法、电路及led驱动芯片
US11985308B2 (en) 2019-03-04 2024-05-14 Beijing Bytedance Network Technology Co., Ltd Implementation aspects in intra block copy in video coding
US12003745B2 (en) 2019-02-02 2024-06-04 Beijing Bytedance Network Technology Co., Ltd Buffer updating for intra block copy in video coding
US12028535B2 (en) 2019-03-14 2024-07-02 Beijing Bytedance Network Technology Co., Ltd Signaling and syntax for in-loop reshaping information

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107257479A (zh) * 2011-05-31 2017-10-17 Jvc建伍株式会社 动图像编码装置、动图像编码方法以及记录介质
US10230956B2 (en) 2012-09-26 2019-03-12 Integrated Device Technology, Inc. Apparatuses and methods for optimizing rate-distortion of syntax elements
US10277907B2 (en) 2012-10-25 2019-04-30 Integrated Device Technology, Inc. Rate-distortion optimizers and optimization techniques including joint optimization of multiple color components
CN105075261B (zh) * 2013-01-10 2018-07-24 三星电子株式会社 用于对多层视频进行编码的方法和设备以及用于对多层视频进行解码的方法和设备
ITTO20130032A1 (it) * 2013-01-15 2014-07-16 St Microelectronics Srl Procedimento ed apparecchiatura per calcolare piramidi di immagini e prodotto informatico relativo
US20140219331A1 (en) * 2013-02-06 2014-08-07 Magnum Semiconductor, Inc. Apparatuses and methods for performing joint rate-distortion optimization of prediction mode
WO2014127468A1 (en) * 2013-02-25 2014-08-28 Huron Technologies International Inc. Microscopy slide scanner with variable magnification
US9706522B2 (en) * 2013-03-01 2017-07-11 Intel IP Corporation Wireless local area network (WLAN) traffic offloading
US9473779B2 (en) 2013-03-05 2016-10-18 Qualcomm Incorporated Parallel processing for video coding
US9300710B2 (en) * 2013-03-07 2016-03-29 Qualcomm Innovation Center, Inc. Adaptive bandwidth switching via short-circuitable download
EP2983363A4 (en) * 2013-04-05 2016-10-19 Samsung Electronics Co Ltd MULTI-LAYER VIDEO ENCODING METHOD FOR RANDOM ACCESS AND DEVICE THEREFOR, AND MULTI-LAYER VIDEO DECODING METHOD FOR RANDOM ACCESS AND DEVICE THEREOF
WO2014163464A1 (ko) * 2013-04-05 2014-10-09 삼성전자 주식회사 현재 영상이 참조 영상이 되는지 여부를 결정하는 방법과 그 장치
US9351009B2 (en) * 2013-04-05 2016-05-24 Sharp Kabushiki Kaisha Marking pictures for inter-layer prediction
US11438609B2 (en) 2013-04-08 2022-09-06 Qualcomm Incorporated Inter-layer picture signaling and related processes
US10003815B2 (en) * 2013-06-03 2018-06-19 Qualcomm Incorporated Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
JP5885886B2 (ja) * 2013-06-04 2016-03-16 三菱電機株式会社 画像解析装置及び画像解析方法
US20140372569A1 (en) * 2013-06-14 2014-12-18 Samsung Electronics Co., Ltd. Controlling dash client rate adaptation
JP6492006B2 (ja) * 2013-07-02 2019-03-27 サターン ライセンシング エルエルシーSaturn Licensing LLC コンテンツ供給装置、コンテンツ供給方法、プログラム、および、コンテンツ供給システム
GB2516224A (en) 2013-07-11 2015-01-21 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
WO2015008464A1 (en) * 2013-07-14 2015-01-22 Sharp Kabushiki Kaisha Video parameter set signaling
JP6191296B2 (ja) * 2013-07-16 2017-09-06 富士通株式会社 動画像処理装置、動画像処理方法及びプログラム
AU2014291253B2 (en) * 2013-07-19 2018-07-05 Sony Corporation Information processing device and method
GB2516824A (en) 2013-07-23 2015-02-11 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
US20150103887A1 (en) * 2013-10-14 2015-04-16 Qualcomm Incorporated Device and method for scalable coding of video information
CN105981387B (zh) * 2013-10-15 2019-09-27 诺基亚技术有限公司 用于处理视频的方法、装置和计算机可读存储介质
US10476930B2 (en) * 2014-01-06 2019-11-12 Intel IP Corporation Client/server signaling commands for dash
KR20150083429A (ko) * 2014-01-08 2015-07-17 한국전자통신연구원 Dash를 사용하는 비디오 재생을 위한 비트 깊이 표현 방법
US10547834B2 (en) * 2014-01-08 2020-01-28 Qualcomm Incorporated Support of non-HEVC base layer in HEVC multi-layer extensions
JP2015136060A (ja) * 2014-01-17 2015-07-27 ソニー株式会社 通信装置、通信データ生成方法、および通信データ処理方法
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
WO2016032033A1 (ko) * 2014-08-29 2016-03-03 전자부품연구원 클라우드 기반 4k uhd 콘텐츠 스트리밍 장치 및 방법
JP6239472B2 (ja) * 2014-09-19 2017-11-29 株式会社東芝 エンコード装置、デコード装置、ストリーミングシステム、および、ストリーミング方法
CA2964773A1 (en) * 2014-10-15 2016-04-21 Nucleushealth, Llc Remote viewing of large image files
US10593019B2 (en) * 2014-10-17 2020-03-17 Samsung Electronics Co., Ltd. Method and apparatus for storing, processing and reconstructing full resolution image out of sub band encoded images
EP3198867A4 (en) * 2014-10-31 2018-04-04 MediaTek Inc. Method of improved directional intra prediction for video coding
US9838760B2 (en) * 2014-12-16 2017-12-05 Arizona Board Of Regents On Behalf Of Arizona State University Systems and methods for name-based segmented media acquisition and distribution framework on a network
WO2016098056A1 (en) * 2014-12-18 2016-06-23 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
EP3241352B1 (en) * 2014-12-31 2021-11-24 Nokia Technologies Oy Inter-layer prediction for scalable video coding and decoding
GB2534136A (en) 2015-01-12 2016-07-20 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US10455242B2 (en) * 2015-03-04 2019-10-22 Qualcomm Incorporated Signaling output indications in codec-hybrid multi-layer video coding
US9654807B2 (en) * 2015-03-27 2017-05-16 Thales, Inc. Aircraft communications system with adaptive streaming video and associated methods
WO2016180486A1 (en) * 2015-05-12 2016-11-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Composite scalable video streaming
GB2538531A (en) * 2015-05-20 2016-11-23 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US10129558B2 (en) * 2015-09-21 2018-11-13 Qualcomm Incorporated Supplement enhancement information (SEI) messages for high dynamic range and wide color gamut video coding
US10244249B2 (en) 2015-09-21 2019-03-26 Qualcomm Incorporated Fixed point implementation of range adjustment of components in video coding
EP3417625A1 (en) * 2016-02-16 2018-12-26 Fraunhofer Gesellschaft zur Förderung der Angewand Efficient adaptive streaming
US9992517B2 (en) * 2016-02-23 2018-06-05 Comcast Cable Communications, Llc Providing enhanced content based on user interactions
US10367874B2 (en) * 2016-11-04 2019-07-30 Verizon Patent And Licensing Inc. MPEG-DASH delivery over multicast
US10484701B1 (en) * 2016-11-08 2019-11-19 Amazon Technologies, Inc. Rendition switch indicator
FI20166017A (fi) * 2016-12-22 2018-06-23 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodausta ja videokoodauksen purkua varten
EP3349467B1 (en) * 2017-01-10 2019-09-04 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US11166034B2 (en) 2017-02-23 2021-11-02 Netflix, Inc. Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric
US10715814B2 (en) * 2017-02-23 2020-07-14 Netflix, Inc. Techniques for optimizing encoding parameters for different shot sequences
US11153585B2 (en) 2017-02-23 2021-10-19 Netflix, Inc. Optimizing encoding operations when generating encoded versions of a media title
KR20200005539A (ko) * 2017-04-11 2020-01-15 브이아이디 스케일, 인크. 면 연속성을 사용하는 360 도 비디오 코딩
GB2563439B (en) * 2017-06-16 2022-02-16 Canon Kk Methods, devices, and computer programs for improving streaming of portions of media data
JP6721631B2 (ja) * 2017-07-07 2020-07-15 ノキア テクノロジーズ オーユー ビデオの符号化・復号の方法、装置、およびコンピュータプログラムプロダクト
US10666992B2 (en) 2017-07-18 2020-05-26 Netflix, Inc. Encoding techniques for optimizing distortion and bitrate
WO2019060443A1 (en) 2017-09-20 2019-03-28 Vid Scale, Inc. HANDLING FACIAL DISCONTINUITIES IN 360-DEGREE VIDEO CODING
CN111434120A (zh) * 2017-10-02 2020-07-17 弗劳恩霍夫应用研究促进协会 高效的沉浸式流传输
US10674166B2 (en) * 2018-08-22 2020-06-02 Purdue Research Foundation Method and system for scalable video streaming
US10999590B2 (en) 2018-12-28 2021-05-04 Tencent America LLC Method for identification of random access point and picture types
WO2020142382A1 (en) * 2018-12-31 2020-07-09 Futurewei Technologies, Inc. Support of adaptive resolution change in video coding
US11290734B2 (en) * 2019-01-02 2022-03-29 Tencent America LLC Adaptive picture resolution rescaling for inter-prediction and display
EP3906699A4 (en) * 2019-01-02 2022-11-02 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR CODING AND DECODING VIDEO
US11012710B2 (en) 2019-03-06 2021-05-18 Tencent America LLC Techniques for intra prediction for 360 image and video coding
MX2021011016A (es) * 2019-03-11 2021-11-12 Huawei Tech Co Ltd Un codificador, un decodificador y métodos correspondientes.
US10924751B2 (en) * 2019-03-18 2021-02-16 Tencent America LLC Data unit and parameter set design for point cloud coding
GB2619430B (en) * 2019-03-20 2024-02-21 V Nova Int Ltd Low complexity enhancement video coding
US11968393B2 (en) 2019-03-20 2024-04-23 Lg Electronics Inc. Point cloud data transmitting device, point cloud data transmitting method, point cloud data receiving device, and point cloud data receiving method
EP3926959A4 (en) 2019-03-21 2022-03-23 LG Electronics Inc. POINT CLOUD DATA TRANSMITTER DEVICE, POINT CLOUD DATA TRANSMITTER METHOD, POINT CLOUD DATA RECEIVE DEVICE, AND POINT CLOUD DATA RECEIVE METHOD
CA3136342A1 (en) * 2019-05-03 2020-11-12 Fnu HENDRY An encoder, a decoder and corresponding methods
US11483558B2 (en) * 2019-06-21 2022-10-25 Tencent America LLC Method for region-wise scalability with adaptive resolution change
US20220377327A1 (en) * 2019-07-03 2022-11-24 Lg Electronics Inc. Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
US11831879B2 (en) * 2019-09-20 2023-11-28 Comcast Cable Communications, Llc Methods, systems, and apparatuses for enhanced adaptive bitrate segmentation
CN117528101A (zh) * 2019-09-24 2024-02-06 华为技术有限公司 序列级hrd参数
US11178418B2 (en) * 2019-09-27 2021-11-16 Tencent America LLC Method and apparatus for efficient signaling of picture size and partitioning information in video bitstream
WO2021063420A1 (en) 2019-10-02 2021-04-08 Beijing Bytedance Network Technology Co., Ltd. Slice level signaling in video bitstreams that include sub-pictures
WO2021125703A1 (ko) * 2019-12-20 2021-06-24 엘지전자 주식회사 영상/비디오 코딩 방법 및 장치
WO2021188453A1 (en) 2020-03-16 2021-09-23 Bytedance Inc. Gradual decoding refresh access unit in scalable video coding
WO2021197407A1 (en) * 2020-04-02 2021-10-07 Beijing Bytedance Network Technology Co., Ltd. Video coding using adaptation parameter sets
US11477471B2 (en) * 2020-05-20 2022-10-18 Tencent America LLC Techniques for signaling combination of reference picture resampling and spatial scalability
CN115668924A (zh) * 2020-05-21 2023-01-31 字节跳动有限公司 参考图片信息的约束
KR20230020425A (ko) * 2020-06-09 2023-02-10 바이트댄스 아이엔씨 비디오 코딩에서 보충 향상 정보 메시지의 스케일러블 네스팅
EP3930287A1 (en) * 2020-06-24 2021-12-29 Sandvine Corporation System and method for managing adaptive bitrate video streaming
US11528707B2 (en) 2021-04-26 2022-12-13 Nokia Technologies Oy Primary and secondary beams based channel access
US20230291913A1 (en) * 2022-03-14 2023-09-14 Comcast Cable Communications, Llc Methods, systems, and apparatuses for improved adaptation logic and content streaming
CN116760992B (zh) * 2023-08-23 2023-10-27 北京中星微人工智能芯片技术有限公司 视频编码、认证、加密和传输方法、装置、设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070110150A1 (en) * 2005-10-11 2007-05-17 Nokia Corporation System and method for efficient scalable stream adaptation
WO2008084443A1 (en) * 2007-01-09 2008-07-17 Nokia Corporation System and method for implementing improved decoded picture buffer management for scalable video coding and multiview video coding
CN102474274A (zh) * 2009-07-01 2012-05-23 汤姆森特许公司 算术编码和解码的方法
US20120183076A1 (en) * 2011-01-14 2012-07-19 Jill Boyce High layer syntax for temporal scalability

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7751473B2 (en) 2000-05-15 2010-07-06 Nokia Corporation Video coding
GB2362531A (en) 2000-05-15 2001-11-21 Nokia Mobile Phones Ltd Indicating the temporal order of reference frames in a video sequence
US7986731B2 (en) 2004-02-06 2011-07-26 Apple Inc. H.264/AVC coder incorporating rate and quality controller
KR100700982B1 (ko) * 2005-05-24 2007-03-29 삼성전자주식회사 영상처리방법과, 영상처리장치와 이를 포함하는영상처리시스템 및 그 제어방법
KR100878811B1 (ko) * 2005-05-26 2009-01-14 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 이의 장치
KR100825743B1 (ko) * 2005-11-15 2008-04-29 한국전자통신연구원 실시간으로 비트스트림의 공간 해상도를 변환할 수 있는스케일러블 비디오 코딩 방법 및 그 방법을 이용한 코덱
US8619865B2 (en) * 2006-02-16 2013-12-31 Vidyo, Inc. System and method for thinning of scalable video coding bit-streams
KR101407571B1 (ko) 2006-03-27 2014-06-16 세종대학교산학협력단 스위칭 픽쳐를 이용한 동영상 비트스트림 부호화 및 복호화방법 및 장치
AU2007309044B2 (en) * 2006-10-23 2011-04-28 Vidyo, Inc. System and method for scalable video coding using telescopic mode flags
US20090320081A1 (en) * 2008-06-24 2009-12-24 Chui Charles K Providing and Displaying Video at Multiple Resolution and Quality Levels
US9332259B2 (en) * 2012-01-18 2016-05-03 Qualcomm Incorporated Indication of use of wavefront parallel processing in video coding
EP2810438A1 (en) * 2012-01-31 2014-12-10 VID SCALE, Inc. Reference picture set (rps) signaling for scalable high efficiency video coding (hevc)
EP2901694A4 (en) * 2012-09-28 2016-05-25 Intel Corp INTER-LAYER RESIDUAL PREDICTION
CN104813660B (zh) 2012-09-28 2019-04-05 诺基亚技术有限公司 用于视频编码和解码的装置和方法
WO2014058210A1 (ko) * 2012-10-08 2014-04-17 삼성전자 주식회사 다시점 비디오의 인터 레이어 예측 구조에 따른 비디오 스트림 부호화 방법 및 그 장치, 다시점 비디오의 인터 레이어 예측 구조에 따른 비디오 스트림 복호화 방법 및 그 장치
US9596465B2 (en) * 2013-01-04 2017-03-14 Intel Corporation Refining filter for inter layer prediction of scalable video coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070110150A1 (en) * 2005-10-11 2007-05-17 Nokia Corporation System and method for efficient scalable stream adaptation
WO2008084443A1 (en) * 2007-01-09 2008-07-17 Nokia Corporation System and method for implementing improved decoded picture buffer management for scalable video coding and multiview video coding
CN102474274A (zh) * 2009-07-01 2012-05-23 汤姆森特许公司 算术编码和解码的方法
US20120183076A1 (en) * 2011-01-14 2012-07-19 Jill Boyce High layer syntax for temporal scalability

Cited By (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017080450A1 (zh) * 2015-11-10 2017-05-18 中兴通讯股份有限公司 多媒体数据下载方法、客户端、服务器、系统及存储介质
CN106686036A (zh) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 多媒体数据下载方法、客户端、服务器及系统
CN108370444B (zh) * 2015-12-21 2024-03-26 交互数字Vc控股公司 组合自适应分辨率和内部比特深度增加编码的方法和装置
CN108370444A (zh) * 2015-12-21 2018-08-03 汤姆逊许可公司 组合自适应分辨率和内部比特深度增加编码的方法和装置
US11297323B2 (en) 2015-12-21 2022-04-05 Interdigital Vc Holdings, Inc. Method and apparatus for combined adaptive resolution and internal bit-depth increase coding
CN111279703B (zh) * 2017-07-05 2023-08-04 艾锐势有限责任公司 用于加权角度预测的后滤波
US11902519B2 (en) 2017-07-05 2024-02-13 Arris Enterprises Llc Post-filtering for weighted angular prediction
CN111279703A (zh) * 2017-07-05 2020-06-12 艾锐势有限责任公司 用于加权角度预测的后滤波
US11627315B2 (en) 2017-07-05 2023-04-11 Arris Enterprises Llc Post-filtering for weighted angular prediction
CN111543060A (zh) * 2017-10-09 2020-08-14 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
US11671588B2 (en) 2017-10-09 2023-06-06 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
CN111543060B (zh) * 2017-10-09 2024-03-08 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
US11336965B2 (en) 2017-12-26 2022-05-17 Xi'an Zhongxing New Software Co., Ltd. Method and apparatus for processing video bitstream, network device, and readable storage medium
WO2019128668A1 (zh) * 2017-12-26 2019-07-04 中兴通讯股份有限公司 视频码流处理方法、装置、网络设备和可读存储介质
US11991394B2 (en) 2018-06-07 2024-05-21 Interdigital Vc Holdings, Inc. Syntax elements for video encoding or decoding
CN112385212A (zh) * 2018-06-07 2021-02-19 交互数字Vc控股公司 用于视频编码或解码的语法元素
CN112655208A (zh) * 2018-07-09 2021-04-13 弗劳恩霍夫应用研究促进协会 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法
CN112655208B (zh) * 2018-07-09 2023-12-15 弗劳恩霍夫应用研究促进协会 用于编码图片的通用空间划分的编码器和解码器、编码方法和解码方法
US11979605B2 (en) 2018-09-14 2024-05-07 Huawei Technologies Co., Ltd. Attribute layers and signaling in point cloud coding
US11272223B2 (en) 2018-09-14 2022-03-08 Huawei Technologies Co., Ltd. Slicing and tiling in video coding
CN113016184A (zh) * 2018-09-14 2021-06-22 华为技术有限公司 点云译码中属性支持的改进
CN112703743A (zh) * 2018-09-14 2021-04-23 华为技术有限公司 视频译码中的条带和分块
CN112703743B (zh) * 2018-09-14 2022-05-24 华为技术有限公司 视频译码中的条带和分块
CN112690002A (zh) * 2018-09-14 2021-04-20 华为技术有限公司 点云译码中属性层和指示的改进
CN109151505A (zh) * 2018-11-07 2019-01-04 深圳市网心科技有限公司 一种视频转码方法、系统、装置及计算机可读存储介质
US11956471B2 (en) 2018-12-20 2024-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Normative indication of recovery point
CN113366843A (zh) * 2018-12-20 2021-09-07 瑞典爱立信有限公司 恢复点的规范指示
CN113498606A (zh) * 2019-01-02 2021-10-12 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
CN113424543B (zh) * 2019-02-01 2024-03-15 北京字节跳动网络技术有限公司 使用参数集信令通知环路整形信息
CN113424543A (zh) * 2019-02-01 2021-09-21 北京字节跳动网络技术有限公司 使用参数集信令通知环路整形信息
US12003745B2 (en) 2019-02-02 2024-06-04 Beijing Bytedance Network Technology Co., Ltd Buffer updating for intra block copy in video coding
US11956438B2 (en) 2019-03-01 2024-04-09 Beijing Bytedance Network Technology Co., Ltd. Direction-based prediction for intra block copy in video coding
US11882287B2 (en) 2019-03-01 2024-01-23 Beijing Bytedance Network Technology Co., Ltd Direction-based prediction for intra block copy in video coding
US11985308B2 (en) 2019-03-04 2024-05-14 Beijing Bytedance Network Technology Co., Ltd Implementation aspects in intra block copy in video coding
US12028535B2 (en) 2019-03-14 2024-07-02 Beijing Bytedance Network Technology Co., Ltd Signaling and syntax for in-loop reshaping information
CN113841395B (zh) * 2019-05-16 2022-10-25 北京字节跳动网络技术有限公司 视频编解码中的自适应分辨率改变
CN113841395A (zh) * 2019-05-16 2021-12-24 北京字节跳动网络技术有限公司 视频编解码中的自适应分辨率改变
CN112118443B (zh) * 2019-06-21 2022-04-26 腾讯美国有限责任公司 视频解码方法、系统、计算机设备以及存储介质
CN112118443A (zh) * 2019-06-21 2020-12-22 腾讯美国有限责任公司 视频解码方法、系统、计算机设备以及存储介质
CN114175633B (zh) * 2019-07-10 2023-12-29 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的样点标识
US11936852B2 (en) 2019-07-10 2024-03-19 Beijing Bytedance Network Technology Co., Ltd. Sample identification for intra block copy in video coding
CN114175633A (zh) * 2019-07-10 2022-03-11 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的样点标识
CN114208166A (zh) * 2019-08-10 2022-03-18 北京字节跳动网络技术有限公司 视频比特流中的子图片相关信令通知
CN114208166B (zh) * 2019-08-10 2024-04-09 北京字节跳动网络技术有限公司 视频比特流中的子图片相关信令通知
US11956432B2 (en) 2019-10-18 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Interplay between subpictures and in-loop filtering
US11962771B2 (en) 2019-10-18 2024-04-16 Beijing Bytedance Network Technology Co., Ltd Syntax constraints in parameter set signaling of subpictures
CN110796205A (zh) * 2019-11-04 2020-02-14 华南理工大学 特征映射复用编解码器架构网络及快速分割方法
CN110796205B (zh) * 2019-11-04 2023-03-24 华南理工大学 特征映射复用编解码器架构网络及快速分割方法
US20210392378A1 (en) * 2020-06-10 2021-12-16 Sharp Kabushiki Kaisha Systems and methods for signaling sequence parameter information in video coding
US11503342B2 (en) * 2020-06-10 2022-11-15 Sharp Kabushiki Kaisha Systems and methods for signaling sequence parameter information in video coding
US11877011B2 (en) 2020-09-17 2024-01-16 Lemon Inc. Picture dimension indication in decoder configuration record
CN114205626B (zh) * 2020-09-17 2023-12-01 脸萌有限公司 视频操作点记录语法和语义
US11831921B2 (en) 2020-09-17 2023-11-28 Lemon Inc. Video operating points record syntax and semantics
US11729427B2 (en) 2020-09-17 2023-08-15 Lemon Inc. Chroma format and bit depth indication in coded video
CN114205626A (zh) * 2020-09-17 2022-03-18 脸萌有限公司 视频操作点记录语法和语义
CN117935743A (zh) * 2024-03-22 2024-04-26 钰泰半导体股份有限公司 背光光源分区调光控制方法、电路及led驱动芯片
CN117935743B (zh) * 2024-03-22 2024-05-31 钰泰半导体股份有限公司 背光光源分区调光控制方法、电路及led驱动芯片

Also Published As

Publication number Publication date
CA2897152C (en) 2019-03-05
US20140219346A1 (en) 2014-08-07
KR20150103728A (ko) 2015-09-11
CA2897152A1 (en) 2014-07-10
EP2941868A4 (en) 2016-07-13
KR101825575B1 (ko) 2018-02-05
EP2941868A1 (en) 2015-11-11
JP2016506687A (ja) 2016-03-03
JP6290924B2 (ja) 2018-03-07
WO2014106692A1 (en) 2014-07-10
EP2941868B1 (en) 2020-07-08
US10616573B2 (en) 2020-04-07

Similar Documents

Publication Publication Date Title
CN105027567A (zh) 用于视频编码和解码的方法和装置
JP6687770B2 (ja) ビデオ符号化・復号装置、方法、及びコンピュータプログラム
CN106464893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN105981387B (zh) 用于处理视频的方法、装置和计算机可读存储介质
CN105556965B (zh) 用于视频编码和解码的方法、装置和计算机程序产品
CN104604236B (zh) 用于视频编码的方法和装置
KR102101535B1 (ko) 비디오 코딩 및 디코딩용 방법 및 장치
KR101669524B1 (ko) 비디오 코딩을 위한 방법 및 장치
KR101881677B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
KR101967398B1 (ko) 모션 정보를 시그널링하기 위한 구문을 수반하는 비디오 코딩을 위한 방법 및 장치
KR101630564B1 (ko) 비디오 코딩을 위한 방법 및 장치
CN108702503A (zh) 用于视频编码和解码的装置、方法及计算机程序
CN111327893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN104380749A (zh) 用于视频编码的方法和装置
CN105325003A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN105027569A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN106416250A (zh) 视频编码和解码
CN104813669A (zh) 用于视频编码的方法和装置
CN104813662A (zh) 用于视频编码和解码的装置、方法和计算机程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151104