[go: up one dir, main page]

HK1242091B - Method for encoding/decoding video stream and device for decoding video stream - Google Patents

Method for encoding/decoding video stream and device for decoding video stream Download PDF

Info

Publication number
HK1242091B
HK1242091B HK18101320.9A HK18101320A HK1242091B HK 1242091 B HK1242091 B HK 1242091B HK 18101320 A HK18101320 A HK 18101320A HK 1242091 B HK1242091 B HK 1242091B
Authority
HK
Hong Kong
Prior art keywords
picture
poc
decoded
pps
frame
Prior art date
Application number
HK18101320.9A
Other languages
Chinese (zh)
Other versions
HK1242091A1 (en
Inventor
基兰‧米斯拉
萨琴‧G‧德希潘德
克里斯多夫‧A‧西格尔
Original Assignee
杜比国际公司
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 杜比国际公司 filed Critical 杜比国际公司
Publication of HK1242091A1 publication Critical patent/HK1242091A1/en
Publication of HK1242091B publication Critical patent/HK1242091B/en

Links

Description

对视频流编码/解码的方法以及对视频流解码的装置Method for encoding/decoding video stream and device for decoding video stream

本申请是申请日为2012年10月12日、最早优先权日为2011年10月 13日的中国专利申请CN201280050538.2(“在电子设备上基于选定画面跟踪参考画面”)的分案申请。This application is a divisional application of Chinese patent application CN201280050538.2 ("Tracking a reference picture based on a selected picture on an electronic device"), whose application date is October 12, 2012 and whose earliest priority date is October 13, 2011.

相关引用Related references

本申请是2011年11月8日递交的标题为“TRACKING A REFERENCE PICTURE BASEDON A DESIGNATED PICTURE ON AN ELECTRONIC DEVICE”的美国专利申请No.13/291,961的部分接续申请案,其是2011年11月1日递交的标题为“TRACKING A REFERENCE PICTUREBASED ON A DESIGNATED PICTURE ON AN ELECTRONIC DEVICE”的美国专利申请No.13/287,015的部分接续申请案,其是2011年10月13递交的标题为“TRACKING A REFERENCEPICTURE ON AN ELECTRONIC DEVICE”的美国专利申请No.13/273,191的部分接续申请案,所有这些申请的全部内容均通过引用方式并入本文。This application is a continuation-in-part of U.S. patent application No. 13/291,961, filed on November 8, 2011, entitled “TRACKING A REFERENCE PICTURE BASED ON A DESIGNATED PICTURE ON AN ELECTRONIC DEVICE,” which is a continuation-in-part of U.S. patent application No. 13/287,015, filed on November 1, 2011, entitled “TRACKING A REFERENCE PICTURE BASED ON A DESIGNATED PICTURE ON AN ELECTRONIC DEVICE,” which is a continuation-in-part of U.S. patent application No. 13/273,191, filed on October 13, 2011, entitled “TRACKING A REFERENCE PICTURE ON AN ELECTRONIC DEVICE,” all of which are incorporated herein by reference in their entireties.

技术领域Technical Field

本公开大体上涉及电子设备。更具体地,本公开涉及实现参考画面的跟踪。The present disclosure relates generally to electronic devices and more particularly to enabling tracking of reference pictures.

背景技术Background Art

电子设备已经变得更小且更强大的,以满足消费者的需求并提高便携性和方便性。消费者已经变得依赖电子设备并且逐渐期望增加的功能。电子设备的一些示例包括台式计算机、膝上型计算机、蜂窝电话、智能电话、媒体播放器、集成电路等。Electronic devices have become smaller and more powerful to meet consumer demand and improve portability and convenience. Consumers have become dependent on electronic devices and increasingly expect increased functionality. Some examples of electronic devices include desktop computers, laptop computers, cellular phones, smartphones, media players, integrated circuits, and the like.

一些电子设备用于处理和显示数字媒体。例如,便携式电子设备现在允许在消费者所在的几乎任何位置处消费数字媒体。此外,一些电子设备可以提供数字媒体内容的下载或流式传送,以供消费者使用和享受。Some electronic devices are used to process and display digital media. For example, portable electronic devices now allow consumers to consume digital media almost anywhere they are. In addition, some electronic devices can provide downloading or streaming of digital media content for consumers to use and enjoy.

数字媒体的日渐流行已经呈现出多个问题。例如,高效地表示用于存储、传输和回放的高质量数字媒体呈现多个挑战。可以从本讨论中看到,更高效地表示数字媒体的系统和方法可以是有益的。The increasing popularity of digital media has presented a number of problems. For example, efficiently representing high-quality digital media for storage, transmission, and playback presents a number of challenges. As can be seen from this discussion, systems and methods for more efficiently representing digital media can be beneficial.

发明内容Summary of the Invention

优选的实施例是一种用于对视频比特流进行解码的方法,包括:从所述比特流接收对解码参考画面的参考描述;确定用于解码的当前画面的画面顺序计数(POC);基于所述画面顺序计数和所述参考描述,从解码画面缓存中识别所述当前画面的解码参考画面;基于所述解码参考画面,使用帧间预测对所述当前画面进行解码;以及将所解码的画面缓存到所述解码画面缓存中以用于未来预测,其中,所述参考描述包括针对长期参考画面的修改参数;以及所述识别使用所述修改参数以修改对解码参考画面集合的至少一部分参考。A preferred embodiment is a method for decoding a video bitstream, comprising: receiving a reference description of a decoded reference picture from the bitstream; determining a picture order count (POC) of a current picture for decoding; identifying a decoded reference picture of the current picture from a decoded picture cache based on the picture order count and the reference description; decoding the current picture using inter-frame prediction based on the decoded reference picture; and caching the decoded picture in the decoded picture cache for future prediction, wherein the reference description includes modification parameters for a long-term reference picture; and the identifying using the modification parameters to modify a reference to at least a portion of a set of decoded reference pictures.

另一优选实施例是一种被配置为对视频比特流进行解码的电子设备,包括:处理器;存储器,与所述处理器进行电子通信;指令,被存储在所述存储器中,所述指令可执行以:从所述比特流接收对解码参考画面的参考描述;确定用于解码的当前画面的画面顺序计数 (POC);基于所述画面顺序计数和所述参考描述,从解码画面缓存中识别所述当前画面的所述解码参考画面;基于所述解码参考画面使用帧间预测对所述当前画面进行解码;以及将所解码的画面缓存到所述解码画面缓存中以用于未来预测,其中,所述参考描述包括针对长期参考画面的修改参数;以及所述修改参数用于修改对解码参考画面集合的至少一部分参考。Another preferred embodiment is an electronic device configured to decode a video bitstream, comprising: a processor; a memory in electronic communication with the processor; instructions stored in the memory, the instructions executable to: receive a reference description of a decoded reference picture from the bitstream; determine a picture order count (POC) of a current picture for decoding; identify the decoded reference picture of the current picture from a decoded picture cache based on the picture order count and the reference description; decode the current picture using inter-frame prediction based on the decoded reference picture; and cache the decoded picture in the decoded picture cache for future prediction, wherein the reference description includes modification parameters for a long-term reference picture; and the modification parameters are used to modify a reference to at least a portion of a set of decoded reference pictures.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1是示出了可以在其中实现用于基于选定画面来跟踪参考画面的系统和方法的一个或更多个电子设备的示例的框图;1 is a block diagram illustrating an example of one or more electronic devices in which systems and methods for tracking a reference picture based on a selected picture may be implemented;

图2是示出了解码器的一个配置的框图;FIG2 is a block diagram showing one configuration of a decoder;

图3是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的一个配置的流程图;3 is a flow chart illustrating one configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图4是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的更具体配置的流程图;4 is a flow chart illustrating a more specific configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图5是示出了循环参数所参考的多个画面集合的一个示例的示意图;FIG5 is a diagram showing an example of a plurality of picture sets referenced by a loop parameter;

图6是示出了多个画面集合的另一示例的示意图;FIG6 is a schematic diagram showing another example of a plurality of picture sets;

图7是示出了循环参数所参考的多个画面集合的更具体的示例的示意图;FIG7 is a schematic diagram showing a more specific example of a plurality of picture sets referenced by a loop parameter;

图8是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的一个配置的流程图;8 is a flow chart illustrating one configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图9是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的另一配置的流程图;9 is a flow chart illustrating another configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图10是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的另一配置的流程图;10 is a flow chart illustrating another configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图11是示出了根据本文所公开的系统和方法信号通知回绕指示符的一个示例的示意图;FIG11 is a diagram illustrating one example of signaling a wrap indicator according to the systems and methods disclosed herein;

图12是示出了根据本文所公开的系统和方法信号通知回绕指示符的一个示例的示意图;FIG12 is a diagram illustrating one example of signaling a wrap indicator according to the systems and methods disclosed herein;

图13是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的另一更具体配置的流程图;13 is a flow chart illustrating another more specific configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图14是示出了用于确定在画面集合之间是否发生转换的方法的一个配置的流程图;FIG14 is a flow chart illustrating one configuration of a method for determining whether a transition occurs between picture sets;

图15是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法的另一更具体配置的流程图;15 is a flow chart illustrating another more specific configuration of a method for tracking a reference picture using reduced overhead referencing based on a selected picture;

图16示出了可以用电子设备中利用的各种组件;以及FIG16 illustrates various components that may be utilized in an electronic device; and

图17是示出了根据本文所公开的系统和方法的使用情况的示例的示意图。FIG. 17 is a diagram illustrating an example of a use case according to the systems and methods disclosed herein.

具体实施方式DETAILED DESCRIPTION

描述了一种用于在电子设备上跟踪参考画面的方法。该方法包括:接收比特流。该方法还包括:对该比特流的一部分进行解码,以产生解码参考画面。该方法还包括:基于选定画面利用减少开销参考来跟踪解码画面缓存(DPB)中的解码参考画面。该方法还包括:基于解码参考画面来对画面进行解码。选定画面可以是即时解码刷新(IDR) 画面。附加地,解码参考画面的缓存描述可以包括:画面顺序计数 (POC)、循环参数、时间标识符和缩放参数。A method for tracking reference pictures on an electronic device is described. The method includes receiving a bitstream. The method also includes decoding a portion of the bitstream to generate a decoded reference picture. The method also includes tracking a decoded reference picture in a decoded picture buffer (DPB) using a reduced overhead reference based on a selected picture. The method also includes decoding a picture based on the decoded reference picture. The selected picture may be an Instantaneous Decoding Refresh (IDR) picture. Additionally, a cache description of the decoded reference picture may include a picture order count (POC), a loop parameter, a temporal identifier, and a scaling parameter.

跟踪解码参考画面可以包括:基于选定画面来确定循环参数。可以基于选定画面来重置循环参数。Tracking the decoded reference picture may include determining a loop parameter based on the selected picture.The loop parameter may be reset based on the selected picture.

跟踪解码参考画面可以包括:基于选定画面来确定画面顺序计数 (POC)。可以基于选定画面来重置画面顺序计数(POC)序列。Tracking the decoded reference picture may include determining a picture order count (POC) based on the selected picture. A picture order count (POC) sequence may be reset based on the selected picture.

解码参考画面的分辨率可以与画面的分辨率不同。该方法还可以包括:基于缩放参数来处理解码参考画面的变换系数以对画面进行解码。A resolution of the decoded reference picture may be different from a resolution of the picture.The method may further include processing transform coefficients of the decoded reference picture based on the scaling parameter to decode the picture.

跟踪解码参考画面可以包括:跟踪包括解码参考画面的解码参考画面集合。跟踪解码参考画面还可以包括:获得缓存描述并修改缓存描述。修改缓存描述可以包括:删除条目、添加条目和/或替换条目。Tracking the decoded reference picture may include tracking a decoded reference picture set including the decoded reference picture. Tracking the decoded reference picture may also include obtaining a cache description and modifying the cache description. Modifying the cache description may include deleting an entry, adding an entry, and/or replacing an entry.

还描述了一种被配置为跟踪参考画面的电子设备。所述电子设备包括:处理器和存储在存储器中的指令,所述存储器与所述处理器进行电子通信。所述电子设备接收比特流。所述电子设备还对所述比特流的一部分进行解码,以产生解码参考画面。所述电子设备还基于选定画面利用减少开销参考来跟踪解码画面缓存(DPB)中的解码参考画面。所述电子设备还基于解码参考画面来对画面进行解码。An electronic device configured to track reference pictures is also described. The electronic device includes a processor and instructions stored in a memory in electronic communication with the processor. The electronic device receives a bitstream. The electronic device also decodes a portion of the bitstream to generate a decoded reference picture. The electronic device also tracks a decoded reference picture in a decoded picture buffer (DPB) using a reduced overhead reference based on a selected picture. The electronic device also decodes a picture based on the decoded reference picture.

本文所公开的所述系统和方法描述用于在电子设备上基于选定画面来跟踪参考画面的多个配置。例如,本文所公开的所述系统和方法描述了利用减少开销参考来跟踪解码画面缓存(DPB)中的解码参考画面。例如,描述了用于长期参考画面信号通知的多个方案。应当注意的是,解码画面缓存(DPB)可以是针对假想参考解码器所规定的保存解码画面以用于参考、输出重排序或输出延迟的缓存。The systems and methods disclosed herein describe multiple configurations for tracking reference pictures based on selected pictures on an electronic device. For example, the systems and methods disclosed herein describe tracking decoded reference pictures in a decoded picture buffer (DPB) using reduced overhead referencing. For example, multiple schemes for long-term reference picture signaling are described. It should be noted that a decoded picture buffer (DPB) can be a buffer specified for a hypothetical reference decoder that stores decoded pictures for reference, output reordering, or output delay.

在电子设备上,解码画面缓存(DPB)可以用于存储在解码器处重构的(例如解码的)画面。然后,这些存储的画面可以用在例如帧间预测机制中。当对画面进行乱序解码时,画面可以存储在DPB中,使得可以随后按顺序显示画面。On electronic devices, a decoded picture buffer (DPB) can be used to store reconstructed (e.g., decoded) pictures at the decoder. These stored pictures can then be used, for example, in inter-frame prediction mechanisms. When pictures are decoded out of order, they can be stored in the DPB so that they can be displayed in order later.

在H.264或高级视频编码(AVC)标准中,使用内存管理控制操作 (MMCO)执行DPB管理(例如画面的删除、画面的添加、画面的重排序等)。针对即将到来的高效视频编码(HEVC)标准,更可靠的DPB 管理方案在考虑中。更可靠的方案的一个示例是基于如来自视频编码联合协作组(JCT-VC)的文档JCTVC-F493的“Absolute signaling of referencepictures”中详述的参考画面的绝对信令。In the H.264 or Advanced Video Coding (AVC) standard, DPB management (e.g., picture deletion, picture addition, picture reordering, etc.) is performed using memory management control operations (MMCO). More reliable DPB management schemes are under consideration for the upcoming High Efficiency Video Coding (HEVC) standard. One example of a more reliable scheme is based on absolute signaling of reference pictures, as detailed in the document JCTVC-F493, "Absolute signaling of reference pictures," from the Joint Collaborative Team on Video Coding (JCT-VC).

JCTVC-F493概述了用于识别哪些参考画面应当保存在解码画面缓存(DPB)中的参考画面的绝对信令。具体而言,JCTVC-F493概述了用于基于画面顺序计数(POC)来识别哪些参考画面要保存在DPB 中的两种不同方案。画面顺序计数(POC)可以是与每个编码画面相关联并具有以回绕的输出顺序随着画面位置的增加而增加的值的变量。JCTVC-F493 outlines absolute signaling of reference pictures for identifying which reference pictures should be stored in the decoded picture buffer (DPB). Specifically, JCTVC-F493 outlines two different schemes for identifying which reference pictures to store in the DPB based on a picture order count (POC). The picture order count (POC) can be a variable associated with each coded picture and has a value that increases with increasing picture position in a wrap-around output order.

在一个示例中,假定所有画面具有时间标识符(temporalID)=0。还假定当前POC=5并且当前DPB包含={3,2}。此外,假定画面参数集合(PPS)的定义是:BufferDescription0={deltaPOC=-1,temporalID=0}、 {deltaPOC=-2,temporalID=0}。deltaPOC指定参考画面与当前画面的 POC值的距离,其中,当前画面可以是正在解码的画面。所给出的一个方案是参考PPS中的缓存描述。在此方案中,POC=5的画面的片首部包含对PPS中的BufferDescription0的参考。假定动作是从DPB中丢弃 POC=2的解码画面,并向DPB添加POC=4的解码画面。因此,DPB于是包含={4,3}。In one example, assume that all pictures have a temporal identifier (temporalID) of 0. Also assume that the current POC is 5 and the current DPB contains [ ] = {3, 2}. Furthermore, assume that the definition of the picture parameter set (PPS) is: BufferDescription0 = {deltaPOC = -1, temporalID = 0}, {deltaPOC = -2, temporalID = 0}. The deltaPOC specifies the distance between the POC value of the reference picture and the current picture, where the current picture may be the picture being decoded. One proposed solution is to reference the buffer description in the PPS. In this solution, the slice header of a picture with POC = 5 contains a reference to BufferDescription0 in the PPS. The assumed action is to discard decoded pictures with POC = 2 from the DPB and add decoded pictures with POC = 4 to the DPB. Therefore, the DPB then contains [ ] = {4, 3}.

在一个配置中,缓存描述被定义为两个列表(表示为POCBD和 TemporalIDBD)和针对所有画面给出的变量NumberOfPicturesInBD。这是使得POCBD包含参考画面的画面顺序计数值,并且 TemporalIDBD包含参考画面的相应时间标识符,两个列表均包含NumberOfPicturesInBD值。In one configuration, the cache description is defined as two lists (denoted as POCBD and TemporalIDBD) and a variable NumberOfPicturesInBD given for all pictures. This is so that POCBD contains the picture order count value of the reference picture, and TemporalIDBD contains the corresponding temporal identifier of the reference picture, and both lists contain the NumberOfPicturesInBD value.

应当注意的是,temporalID可以如下在视频编码联合协作组 (JCT-VC)的文档JCTVC-F803中所定义:“temporalID指定针对NAL 单元的时间标识符。针对访问单元的所有NAL单元,temporalID的值应当是相同的。当访问单元包含nal_unit_type等于5的任意NAL单元时,temporalID应当等于0。”应当注意的是,NAL可以是“网络抽象层”的缩写。It should be noted that temporalID may be defined in the Joint Collaborative Team on Video Coding (JCT-VC) document JCTVC-F803 as follows: "temporalID specifies a temporal identifier for a NAL unit. The value of temporalID shall be the same for all NAL units of an access unit. When an access unit contains any NAL unit with nal_unit_type equal to 5, temporalID shall be equal to 0." It should be noted that NAL may be an abbreviation for "Network Abstraction Layer".

另一方案是关于当前POC使用增量POC来显式地信号通知DPB的内容。在此方案中,POC=5的画面的片首部包含 {deltaPOC=-1,temporalID=0}和{deltaPOC=-2,temporalID=0}。假定动作是从DPB中丢弃POC=2的解码画面,并向DPB添加POC=4的解码画面。因此,新DPB包含={4,3}。Another approach is to explicitly signal the contents of the DPB using deltaPOC relative to the current POC. In this approach, the slice header of a picture with POC=5 contains {deltaPOC=-1, temporalID=0} and {deltaPOC=-2, temporalID=0}. Assume the action is to drop decoded pictures with POC=2 from the DPB and add decoded pictures with POC=4 to the DPB. Therefore, the new DPB contains {4, 3}.

JCTVC-F493给出的方案的一些优点如下。JCTVC-F493中的方案提供了简单机制。此外,在解码器容易检测到画面的丢失。此外,可以检测到并较好地支持具有较高时间ID的整层画面的丢弃。The advantages of the solution proposed in JCTVC-F493 are as follows: The solution in JCTVC-F493 provides a simple mechanism. Furthermore, picture loss is easily detected at the decoder. Furthermore, the loss of entire layers of pictures with higher temporal IDs can be detected and better supported.

然而,在下文中给出了JCTVC-F493中所给出的方案的一些缺点。用于信号通知长期参考画面的比特开销可能变得较大。此外,可以分配固定数量的比特以传送POC。因此,当达到正在使用的比特的数量所允许的最大值时,POC编号应当回绕至0。因此,可能不能保证可以使用POC来唯一地标识画面。However, some disadvantages of the approach presented in JCTVC-F493 are described below. The bit overhead for signaling long-term reference pictures can become large. Furthermore, a fixed number of bits may be allocated to convey the POC. Therefore, when the maximum allowed by the number of bits being used is reached, the POC number should wrap around to 0. Consequently, there may be no guarantee that the POC can be used to uniquely identify a picture.

本文所公开的系统和方法可以帮助减轻这些缺点。具体而言,通过减少与绝对长期画面参考相关联的开销,本文所公开的系统和方法可能是有益的,并且其能够实现唯一地标识画面(例如长期(参考) 画面可以不与其他短期画面或长期画面混淆,反之亦然)。The systems and methods disclosed herein may help alleviate these shortcomings. Specifically, the systems and methods disclosed herein may be beneficial by reducing the overhead associated with absolute long-term picture references, and may enable unique identification of pictures (e.g., a long-term (reference) picture may not be confused with other short-term or long-term pictures, and vice versa).

本文所公开的系统和方法可以提供如下所述的一个或更多个附加益处。本文所公开的系统和方法一个或更多个配置可以充分利用可用 POC编号空间[0,…,MaxPOC-1],其中MaxPOC= 2log2_max_pic_order_cnt_minus4+4并且log2_max_pic_order_cnt_minus4指定在解码处理中用于画面顺序计数的变量MaxPOC的值。例如,用于解决POC回绕之后[0,…,MaxPOC-1]的重用的一个现有方案主张当向画面指派标识符(例如POC号)时,越过当前使用的POC。这导致POC空间的一部分未使用。然而,本文所公开的系统和方法可以解决越过POC 和相关联的POC空间缩小的问题。The systems and methods disclosed herein can provide one or more additional benefits as described below. One or more configurations of the systems and methods disclosed herein can make full use of the available POC number space [0, ..., MaxPOC-1], where MaxPOC = 2 log2_max_pic_order_cnt_minus4+4 and log2_max_pic_order_cnt_minus4 specifies the value of the variable MaxPOC used for the picture order count in the decoding process. For example, one existing solution for reusing [0, ..., MaxPOC-1] after POC wraparound advocates skipping the currently used POC when assigning an identifier (e.g., POC number) to a picture. This results in a portion of the POC space being unused. However, the systems and methods disclosed herein can solve the problem of skipping POCs and the associated reduction in POC space.

另一益处可以是本文所公开的系统和方法的用于信号通知的一些配置在每个画面中可以是独立的。因此,与依赖于来自先前画面(可能丢失或被丢弃)的信息传播的方案相比,差错恢复可以更好。例如,解码画面缓存(DPB)描述的一个配置不依赖于在其他画面中嵌入的信息,以保持与编码器相同的DPB。Another benefit may be that some configurations for signaling of the systems and methods disclosed herein may be independent per picture. Thus, error resilience may be better than schemes that rely on propagation of information from previous pictures (which may be lost or discarded). For example, one configuration described by the decoded picture buffer (DPB) does not rely on information embedded in other pictures to maintain the same DPB as the encoder.

本文所公开的系统和方法的一些配置的另一益处可以是:如果画面丢失,则一旦缓存描述在解码器处(其在下一接收画面处)可用就可以检测到丢失。这允许解码器采取纠正动作。另一益处是如果POC 分辨率足够,则不需要额外比特。Another benefit of some configurations of the systems and methods disclosed herein may be that if a picture is lost, the loss can be detected as soon as a buffered description is available at the decoder (which is at the next received picture). This allows the decoder to take corrective action. Another benefit is that if the POC resolution is sufficient, no additional bits are required.

现在参考附图描述各种配置,在附图中,相似的附图标记可以指示功能上相似的元件。可以以各种不同配置来布置和设计如本文附图中一般地描述和示出的系统和方法。因此,如在附图中表示的多个配置的以下更详细的描述不旨在限制要求保护的范围,而仅表示系统和方法。Various configurations will now be described with reference to the accompanying drawings, in which like reference numerals may indicate functionally similar elements. The systems and methods, as generally described and illustrated in the drawings herein, may be arranged and designed in a variety of different configurations. Therefore, the following more detailed description of the various configurations, as represented in the drawings, is not intended to limit the scope of what is claimed, but is merely representative of the systems and methods.

图1是示出了可以在其中实现用于基于选定画面来跟踪参考画面的系统和方法的一个或更多个电子设备104的示例的框图。在本示例中,示出了电子设备A 104a和电子设备B 104b。然而,应当注意的是,在一些配置中,关于电子设备A 104a和电子设备B 104b所描述的特征和/或功能可以组合到单个电子设备中。FIG1 is a block diagram illustrating an example of one or more electronic devices 104 in which systems and methods for tracking a reference picture based on a selected picture may be implemented. In this example, electronic device A 104 a and electronic device B 104 b are shown. However, it should be noted that in some configurations, the features and/or functionality described with respect to electronic device A 104 a and electronic device B 104 b may be combined into a single electronic device.

电子设备A 104a包括编码器108和开销信令模块112。电子设备A 104a中包括的元件中的每一个元件(例如编码器108和开销信令模块 112)可以以硬件、软件或硬件和软件的组合来实现。Electronic device A 104a includes an encoder 108 and an overhead signaling module 112. Each of the elements included in electronic device A 104a (e.g., encoder 108 and overhead signaling module 112) may be implemented in hardware, software, or a combination of hardware and software.

电子设备A104a可以获得输入画面106。在一些配置中,可以使用图像传感器在电子设备A104a上捕获、从存储器取回和/或从另一电子设备接收输入画面106。Electronic device A 104a may obtain an input screen 106. In some configurations, the input screen 106 may be captured on electronic device A 104a using an image sensor, retrieved from memory, and/or received from another electronic device.

编码器108可以对输入画面106进行编码以产生编码数据110。例如,编码器108可以对一系列输入画面106(例如视频)进行编码。在一个配置中,编码器108可以是高效视频编码(HEVC)编码器。编码数据110可以是数字数据(例如比特流)。The encoder 108 may encode the input pictures 106 to generate encoded data 110. For example, the encoder 108 may encode a series of input pictures 106 (e.g., a video). In one configuration, the encoder 108 may be a High Efficiency Video Coding (HEVC) encoder. The encoded data 110 may be digital data (e.g., a bitstream).

开销信令模块112可以基于编码数据110来生成开销信令。例如,开销信令模块112可以将开销数据添加到编码数据110中,例如片首部信息、画面参数集合(PPS)信息、画面顺序计数(POC)、参考画面指示等。在一些配置中,开销信令模块112可以产生指示两个画面集合之间的转换的回绕指示符。The overhead signaling module 112 may generate overhead signaling based on the coded data 110. For example, the overhead signaling module 112 may add overhead data to the coded data 110, such as slice header information, picture parameter set (PPS) information, picture order count (POC), reference picture indication, etc. In some configurations, the overhead signaling module 112 may generate a wrap indicator that indicates a transition between two picture sets.

以下给出了可以由电子设备A 104a产生的各种开销信令的更多细节。具体而言,开销信令模块112可以根据配置产生下面关于解码所描述的参数、指示符或各种信息中的零个、一个或更多个。应当注意的是,在一些配置中,开销信令模块112可以被包括在编码器108中。开销信令模块112可以实现利用减少开销参考进行画面跟踪。The following provides further details on various overhead signaling that may be generated by electronic device A 104a. Specifically, the overhead signaling module 112 may generate zero, one, or more of the parameters, indicators, or various information described below with respect to decoding, depending on the configuration. It should be noted that in some configurations, the overhead signaling module 112 may be included in the encoder 108. The overhead signaling module 112 may enable picture tracking using reduced overhead references.

编码器108(以及例如开销信令模块112)可以产生比特流114。比特流114可以包括基于输入画面106的编码画面数据。在一些配置中,比特流114还可以包括开销数据,例如片首部信息、PPS信息等。以下给出了开销数据的更多细节。当对附加输入画面106进行编码时,比特流114可以包括一个或更多个编码画面。例如,比特流114可以包括一个或更多个编码参考画面和/或其他画面。The encoder 108 (and, for example, the overhead signaling module 112) can generate a bitstream 114. The bitstream 114 can include coded picture data based on the input picture 106. In some configurations, the bitstream 114 can also include overhead data, such as slice header information, PPS information, etc. More details on the overhead data are provided below. When encoding additional input pictures 106, the bitstream 114 can include one or more coded pictures. For example, the bitstream 114 can include one or more coded reference pictures and/or other pictures.

可以将比特流114提供给解码器102。在一个示例中,可以使用有线链路或无线链路向电子设备B 104b发送比特流114。在一些情况下,这可以通过网络(例如互联网或局域网(LAN))来完成。如图1所示,解码器102可以与电子设备A 104a上编码器108分离地实现在电子设备 B 104b上。然而,应当注意的是,在一些配置中,编码器108和解码器 102可以实现在相同的电子设备上。在编码器108和解码器102实现在相同的电子设备上的实现方式中,例如可以通过总线向解码器102提供比特流114,或者可以将比特流114存储在存储器中以供解码器102取回。The bitstream 114 can be provided to the decoder 102. In one example, a wired link or a wireless link can be used to send the bitstream 114 to the electronic device B 104b. In some cases, this can be accomplished by a network (such as the Internet or a local area network (LAN)). As shown in Figure 1, the decoder 102 can be implemented on the electronic device B 104b separately from the encoder 108 on the electronic device A 104a. However, it should be noted that in some configurations, the encoder 108 and the decoder 102 can be implemented on the same electronic device. In the implementation mode that the encoder 108 and the decoder 102 are implemented on the same electronic device, for example, the bitstream 114 can be provided to the decoder 102 by a bus, or the bitstream 114 can be stored in a memory for the decoder 102 to retrieve.

解码器可以以硬件、软件或硬件和软件的组合来实现。在一个配置中,解码器102可以是高效视频编码(HEVC)解码器。解码器102 可以接收(例如获得)比特流114。解码器102可以基于比特流114生成解码画面118(例如一个或更多个解码画面118)。可以显示、回放、在存储器中存储、和/或向另一设备发送解码画面118等等。The decoder can be implemented in hardware, software, or a combination of hardware and software. In one configuration, the decoder 102 can be a High Efficiency Video Coding (HEVC) decoder. The decoder 102 can receive (e.g., obtain) a bitstream 114. The decoder 102 can generate a decoded picture 118 (e.g., one or more decoded pictures 118) based on the bitstream 114. The decoded picture 118 can be displayed, played back, stored in a memory, and/or transmitted to another device, etc.

解码器102可以包括参考画面跟踪模块116。参考画面跟踪模块116 可以使解码器102能够利用减少开销参考来跟踪参考画面。例如,参考画面跟踪模块116可以利用比现有方案(例如JCTVC-F493中给出的方案)所需的开销更少的开销来跟踪解码画面缓存(DPB)中的参考画面。The decoder 102 may include a reference picture tracking module 116. The reference picture tracking module 116 may enable the decoder 102 to track reference pictures using reduced overhead referencing. For example, the reference picture tracking module 116 may track reference pictures in a decoded picture buffer (DPB) using less overhead than that required by existing schemes, such as the scheme given in JCTVC-F493.

例如,在现有方案中,非减少开销参考可以用于指定当前画面与长期参考画面之间的关系。例如,在现有方案中,可以通过增加POC 编号空间来指定当前画面和长期参考画面之间的关系,从而避免POC 回绕问题。然而,只能以针对POC的增加的比特-需求为代价来实现增加POC编号空间。本示例是可以用于避免现有方案中的POC回绕问题的多个可能机制之一。然而,本特定示例阐述针对现有方案中的长期画面的较大开销方面。For example, in existing solutions, non-reduced overhead references can be used to specify the relationship between the current picture and long-term reference pictures. For example, in existing solutions, the POC wraparound problem can be avoided by increasing the POC number space to specify the relationship between the current picture and long-term reference pictures. However, increasing the POC number space can only be achieved at the expense of increased bit requirements for the POC. This example is one of several possible mechanisms that can be used to avoid the POC wraparound problem in existing solutions. However, this particular example illustrates the significant overhead associated with long-term pictures in existing solutions.

例如,对于长期画面,JCTVC-F493使用缓存描述中指定绝对POC 的longterm_poc[i]字段和缓存描述中指定时间ID的 longterm_temporal_id[i]字段。这然后在JCTVC-F803中被移除, JCTVC-F803不包括用于长期画面的机制。在随后讨论中,给出了越过 (长期画面)POC的方案。For example, for long-term pictures, JCTVC-F493 used the longterm_poc[i] field in the buffer description to specify the absolute POC and the longterm_temporal_id[i] field in the buffer description to specify the temporal ID. This was later removed in JCTVC-F803, which does not include a mechanism for long-term pictures. In the subsequent discussion, a solution for skipping the POC (for long-term pictures) is presented.

现有方案可能存在问题。首先,可能需要大量开销数据来指定长期参考画面和另一画面之间的关系。例如,可能需要分配大量开销比特来适当地表示长期参考画面和另一画面之间的POC整数差值。其次,如果指定有限数量的比特来表示此差值,则当号被重用时(由于例如号集合周期循环),该差值可能被有歧义地指示。Existing solutions may present problems. First, a large amount of overhead data may be required to specify the relationship between a long-term reference picture and another picture. For example, a large number of overhead bits may need to be allocated to properly represent the POC integer difference between a long-term reference picture and another picture. Second, if a limited number of bits are allocated to represent this difference, the difference may be ambiguously indicated when numbers are reused (e.g., due to periodic rotation of number sets).

参考画面跟踪模块116可以使用以下更详细描述的一个或更多个方案或方法来减少参考开销。一些示例包括使用循环参数,并且基于回绕指示符或画面集合之间的转换来递减循环参数。The reference picture tracking module 116 may use one or more schemes or methods described in more detail below to reduce reference overhead. Some examples include using a loop parameter and decrementing the loop parameter based on a wrap indicator or a transition between picture sets.

应当注意的是,在一些配置中,本文所描述的“参考画面”可以取而代之的是参考画面集合(例如帧组)。因此,在一些配置中,本文所描述的“解码参考画面”可以取而代之的是“解码参考画面集合”。例如,可以应用参考画面集合代替结合本文所公开的系统和方法所描述的单个参考画面。参考画面集合可以包括一个或更多个参考画面。参考画面集合中的两个或更多个参考画面可以对应于相同时刻或不同 (例如类似)时刻。例如,在三维(3D)编码场景中,比特流114包含多个画面,其中,一些画面可以涉及左视图,而一些画面可以涉及右视图。因此,参考画面集合可以标识与特定显示时间相对应的左画面和右画面。It should be noted that in some configurations, the "reference picture" described herein may be replaced by a reference picture set (e.g., a frame group). Thus, in some configurations, the "decoded reference picture" described herein may be replaced by a "decoded reference picture set." For example, a reference picture set may be applied instead of a single reference picture as described in conjunction with the systems and methods disclosed herein. A reference picture set may include one or more reference pictures. Two or more reference pictures in a reference picture set may correspond to the same instant in time or to different (e.g., similar) instants in time. For example, in a three-dimensional (3D) coding scenario, the bitstream 114 may contain multiple pictures, some of which may relate to a left view and some of which may relate to a right view. Thus, a reference picture set may identify a left picture and a right picture corresponding to a particular display time.

在另一示例(例如可缩放编码场景)中,比特流可以包含不同分辨率的画面。在本示例中,参考画面集合可以包括(例如标识)相同画面的不同分辨率版本。In another example (eg, scalable coding scenario), the bitstream may contain pictures of different resolutions. In this example, the reference picture set may include (eg, identify) different resolution versions of the same picture.

图2是示出了解码器202的一个配置的框图。解码器202可以被包括在电子设备204中。例如,解码器202可以是高效视频编码(HEVC) 解码器。解码器202和/或如所示的包括在解码器202中的元件中的一个或更多个元件可以以硬件、软件或硬件和软件的组合来实现。解码器 202可以接收用于解码的比特流214(例如比特流214中包括的一个或更多个编码画面)。在一些配置中,所接收的比特流214可以包括接收的开销信息,例如接收的片首部、接收的PPS、接收的缓存描述信息等。比特流214中包括的编码画面可以包括一个或更多个编码参考画面和/ 或一个或更多个其他编码画面。FIG2 is a block diagram illustrating one configuration of a decoder 202. The decoder 202 may be included in an electronic device 204. For example, the decoder 202 may be a High Efficiency Video Coding (HEVC) decoder. The decoder 202 and/or one or more of the elements included in the decoder 202 as shown may be implemented in hardware, software, or a combination of hardware and software. The decoder 202 may receive a bitstream 214 for decoding (e.g., one or more coded pictures included in the bitstream 214). In some configurations, the received bitstream 214 may include received overhead information, such as a received slice header, a received PPS, received buffer description information, etc. The coded pictures included in the bitstream 214 may include one or more coded reference pictures and/or one or more other coded pictures.

熵解码模块254可以对(比特流214中包括的一个或更多个编码画面中的)接收符号进行熵解码,从而产生运动信息信号256和经量化、缩放和/或变换的系数258。Entropy decoding module 254 may entropy decode received symbols (in one or more encoded pictures included in bitstream 214 ) to produce motion information signal 256 and quantized, scaled, and/or transformed coefficients 258 .

运动信息信号256可以与来自帧存储器264的参考帧信号284的一部分在运动补偿模块260处进行组合,这可以产生帧间预测信号268。逆向模块262可以对经量化、缩小和/或变换的系数258进行逆量化、放大和逆变换,从而产生解码残差信号270。解码残差信号270可以添加到预测信号278,以产生组合信号272。预测信号278可以是选自帧间预测信号268或由帧内预测模块274产生的帧内预测信号276中的信号。在一些配置中,此信号选择可以基于(例如受控于)比特流214。The motion information signal 256 may be combined with a portion of the reference frame signal 284 from the frame memory 264 at the motion compensation module 260, which may produce an inter-frame prediction signal 268. The inverse module 262 may inverse quantize, upscale, and inverse transform the quantized, downscaled, and/or transformed coefficients 258 to produce a decoded residual signal 270. The decoded residual signal 270 may be added to the prediction signal 278 to produce a combined signal 272. The prediction signal 278 may be a signal selected from the inter-frame prediction signal 268 or the intra-frame prediction signal 276 generated by the intra-frame prediction module 274. In some configurations, this signal selection may be based on (e.g., controlled by) the bitstream 214.

帧内预测信号276可以是根据来自(例如当前帧中的)组合信号272 的先前解码信息来预测的。还可以由去块滤波器280对组合信号272进行滤波。可以将所得到的滤波信号282写到帧存储器264中。所得到的滤波信号282可以包括解码画面。The intra-frame prediction signal 276 may be predicted based on previously decoded information (e.g., in the current frame) from the combined signal 272. The combined signal 272 may also be filtered by a deblocking filter 280. The resulting filtered signal 282 may be written to the frame memory 264. The resulting filtered signal 282 may include a decoded picture.

帧存储器264可以包括如本文所描述的解码画面缓存(DPB)。DPB 可以包括作为短期参考帧或长期参考帧保存的一个或更多个解码画面。帧存储器264还可以包括与解码画面相对应的开销信息。例如,帧存储器264可以包括片首部、画面参数集合(PPS)信息、循环参数、缓存描述信息等。这些信息中的一个或更多个信息可能是由编码器(例如编码器108、开销信令模块112)信号通知的。帧存储器264可以提供解码画面218。Frame memory 264 may include a decoded picture buffer (DPB) as described herein. The DPB may include one or more decoded pictures stored as short-term reference frames or long-term reference frames. Frame memory 264 may also include overhead information corresponding to the decoded pictures. For example, frame memory 264 may include slice headers, picture parameter set (PPS) information, loop parameters, buffer description information, etc. One or more of this information may be signaled by an encoder (e.g., encoder 108, overhead signaling module 112). Frame memory 264 may provide decoded pictures 218.

解码器202可以包括参考画面跟踪模块216。参考画面跟踪模块216 可以利用减少参考开销来跟踪帧存储器264中的一个或更多个参考画面。在一个示例中,参考画面跟踪模块216可以使用循环参数并基于所接收的回绕指示符修改(例如递减)循环参数来跟踪长期参考画面。在另一示例中,可以关于正在被解码的画面执行所有参考画面循环参数的更新。此更新过程可以针对当前画面(例如正在被解码的画面) 执行一次。可以隐式地在POC的帮助下跟踪循环之间的转换。循环参数可能有时会增加(例如当在乱序画面解码中可能发生的从画面集合“n”转换到画面集合“n-1”时)。以下给出了关于用于基于选定画面来跟踪参考画面的一个或更多个方案的更多细节。The decoder 202 may include a reference picture tracking module 216. The reference picture tracking module 216 may track one or more reference pictures in the frame memory 264 with reduced reference overhead. In one example, the reference picture tracking module 216 may track long-term reference pictures using a loop parameter and modifying (e.g., decrementing) the loop parameter based on a received wrap indicator. In another example, an update of all reference picture loop parameters may be performed with respect to the picture being decoded. This update process may be performed once for the current picture (e.g., the picture being decoded). Transitions between loops may be tracked implicitly with the help of a POC. The loop parameter may sometimes be increased (e.g., when transitioning from picture set "n" to picture set "n-1"), as may occur in out-of-order picture decoding. More details regarding one or more schemes for tracking reference pictures based on a selected picture are provided below.

本文所公开的系统和方法的一些配置可以使用修改缓存描述。以下给出修改缓存描述的示例。可以修改缓存描述以包括针对长期参考画面的“POC”、“poc_cycle”和“temporalID”。应当注意的是,“poc_cycle”可以是本文所描述的循环参数的一个示例。根据本文所公开的系统和方法所给出的(修改)缓存描述、(修改)句法和/或参数能够实现减少开销参考。Some configurations of the systems and methods disclosed herein may utilize modified cache descriptions. Examples of modified cache descriptions are provided below. The cache description may be modified to include "POC," "poc_cycle," and "temporalID" for long-term reference pictures. It should be noted that "poc_cycle" may be an example of a cycle parameter as described herein. The (modified) cache descriptions, (modified) syntax, and/or parameters provided by the systems and methods disclosed herein may enable reduced overhead references.

以下表格(1)给出了将现有方案与根据本文所公开的系统和方法的一个提出方案中的PPS内的缓存描述进行比较的一个示例。被创建用于进一步描述JCTVC-F493的工作的文档“candidate working draft text of ad-hoc group 21”(AHG21)中详细描述了现有方案。应当注意的是,AHG21(JCTVC-F803)单独地分组并规定“负画面”(例如具有负deltaPOC值的画面)和“正画面”(例如具有正deltaPOC值的画面)。Table (1) below gives an example of comparing the cache description within the PPS in an existing solution with a proposed solution according to the system and method disclosed herein. The existing solution is described in detail in the document "candidate working draft text of ad-hoc group 21" (AHG21), which was created to further describe the work of JCTVC-F493. It should be noted that AHG21 (JCTVC-F803) groups and specifies "negative pictures" (e.g., pictures with negative deltaPOC values) and "positive pictures" (e.g., pictures with positive deltaPOC values) separately.

表格(1)Table (1)

在上述表格(1)中,(POC0,poc_cycles0,temporalID3)和 (POC1,poc_cycles1,temporalID4)表示长期(参考)画面。应当注意的是,缓存描述可以包含针对短期参考画面的两个列表POCBD和 TemporalIDBD(分别与POC字段和TemporalID字段相对应)。此外,缓存描述可以包含针对长期参考画面的三个列表POCBD、 POC_CYCLE_BD和TemporalIDBD(分别与POC字段、poc_cycle字段和TemporalID字段相对应)。In the above table (1), (POC 0 , poc_cycles 0 , temporalID 3 ) and (POC 1 , poc_cycles 1 , temporalID 4 ) represent long-term (reference) pictures. It should be noted that the cache description can contain two lists POCBD and TemporalIDBD for short-term reference pictures (corresponding to the POC field and TemporalID field, respectively). In addition, the cache description can contain three lists POCBD, POC_CYCLE_BD and TemporalIDBD for long-term reference pictures (corresponding to the POC field, poc_cycle field and TemporalID field, respectively).

在一些配置中,在画面参数集合中定义多个缓存描述。具有索引i 的每个缓存描述包含用于参考画面的列表:POCBD_pps[i]、POC_CYCLE_pps[i]、DeltaPOCBD_pps[i]和TemporalIDBD_pps[i]以及变量NumberOfPicturesInBD_pps[i]。第i个列表POCBD_pps[i]包含参考画面的画面顺序计数值。第i个列表POC_CYCLE_pps[i]包含参考画面的poc_cycle值。第i个列表TemporalIDBD_pps[i]包含参考画面的相应的时间标识符。此外,第i个列表TemporalIDBD_pps[i]包含 NumberOfPicturesInBD_pps[i]个条目。列表集合被称为POC_pps、 POC_CYCLE_pps、DeltaPOCBD_pps和TemporalIDBD_pps。针对 deltaPOC参考,单个列表DeltaPOCBD_pps[i]包含参考画面的deltaPOC 值。应当注意的是,在ad-hoc组21的候选工作草案文本中, DeltaPOCBD_pps可以被称为DeltaPOCBD。列表POCBD_pps[i]和列表DeltaPOCBD_pps[i]中条目的总数可以由值 NumberOfPicturesInBD_pps[i]给出。此外,POCBD_pps[i]和 POC_CYCLE_pps[i]中条目的数量是相同的。In some configurations, multiple buffer descriptions are defined in a picture parameter set. Each buffer description with index i contains the lists for a reference picture: POCBD_pps[i], POC_CYCLE_pps[i], DeltaPOCBD_pps[i], and TemporalIDBD_pps[i], as well as the variable NumberOfPicturesInBD_pps[i]. The i-th list POCBD_pps[i] contains the picture sequence count value of the reference picture. The i-th list POC_CYCLE_pps[i] contains the poc_cycle value of the reference picture. The i-th list TemporalIDBD_pps[i] contains the corresponding temporal identifier of the reference picture. In addition, the i-th list TemporalIDBD_pps[i] contains NumberOfPicturesInBD_pps[i] entries. The list sets are referred to as POC_pps, POC_CYCLE_pps, DeltaPOCBD_pps, and TemporalIDBD_pps. For deltaPOC references, a single list, DeltaPOCBD_pps[i], contains the deltaPOC values for the reference pictures. Note that in the candidate working draft text for ad-hoc Group 21, DeltaPOCBD_pps may be referred to as DeltaPOCBD. The total number of entries in the POCBD_pps[i] and DeltaPOCBD_pps[i] lists may be given by the value NumberOfPicturesInBD_pps[i]. Furthermore, the number of entries in POCBD_pps[i] and POC_CYCLE_pps[i] is the same.

应当注意的是,AHG21中给出的句法未充分地支持固定的长期参考。以下列表(1)阐述了ad-hoc组21的候选工作草案文本(AHG21) 所需的比特流句法修改的一个示例。在列表(1)中用粗体文本给出由于现有方案的改变。It should be noted that the syntax given in AHG21 does not fully support fixed long-term references. The following list (1) illustrates an example of the bitstream syntax modifications required for the candidate working draft text of ad-hoc group 21 (AHG21). Changes due to existing solutions are given in bold text in list (1).

列表(1)List (1)

positive_pictures_in_buffer_descriptions_flag指定是否存在具有正deltaPOC的任意缓存描述画面。 bits_for_temporal_id_in_buffer_descriptions指定用于 temporal_id_negative_pps[i][j]、temporal_id_positive_pps[i][j]、 temporal_id_poc_pps[i][j]、temporal_id_negative[i]和 temporal_id_positive[i]的比特的数量。number_of_bds指定画面参数集合中的缓存描述的数量。number_of_negative_pictures_pps[i]指定列表 DeltaPOCBD_pps[i]中具有负值的条目的数量。 number_of_negative_pictures_pps[i]将OffsetBD[i]的值定义为 OffsetBD[i]=number_of_negative_pictures_pps[i]。 number_of_negative_pictures_pps[i]的值应当在0至max_num_ref_frames的范围中(包含端点)。 negative_delta_poc_minus_one_pps[i][j]指定POC值的绝对距离。 max_num_ref_frames指定可以由解码过程针对序列中的任意画面的帧间预测所使用的参考帧、补充参考字段对和非配对参考字段的最大数量。这里,参考字段表示参考帧的一部分。例如,在使用交错式视频的应用中,参考帧可以由两个参考字段构成。第一参考字段可以包含参考帧中的数据的第一子集,而第二参考字段可以包含参考帧中的数据的第二子集,其中,第一子集和第二子集对应于不同数据。positive_pictures_in_buffer_descriptions_flag specifies whether there are any buffer description pictures with a positive deltaPOC. bits_for_temporal_id_in_buffer_descriptions specifies the number of bits used for temporal_id_negative_pps[i][j], temporal_id_positive_pps[i][j], temporal_id_poc_pps[i][j], temporal_id_negative[i], and temporal_id_positive[i]. number_of_bds specifies the number of buffer descriptions in the picture parameter set. number_of_negative_pictures_pps[i] specifies the number of entries with negative values in the list DeltaPOCBD_pps[i]. number_of_negative_pictures_pps[i] defines the value of OffsetBD[i] as OffsetBD[i] = number_of_negative_pictures_pps[i]. The value of number_of_negative_pictures_pps[i] should be in the range of 0 to max_num_ref_frames, inclusive. negative_delta_poc_minus_one_pps[i][j] specifies the absolute distance of the POC values. max_num_ref_frames specifies the maximum number of reference frames, supplementary reference field pairs, and unpaired reference fields that can be used by the decoding process for inter-frame prediction of any picture in the sequence. Here, a reference field represents a portion of a reference frame. For example, in an application using interlaced video, a reference frame may consist of two reference fields. The first reference field may contain a first subset of data in the reference frame, and the second reference field may contain a second subset of data in the reference frame, where the first subset and the second subset correspond to different data.

negative_delta_poc_minus_one_pps[i][j]将变量 DeltaPOCBD_pps[i][j]的值定义为 DeltaPOCBD_pps[i][j]=-(negative_delta_poc_minus_one_pps[i][j]+1) (如果j等于0)。此外,negative_delta_poc_minus_one_pps[i][j]将变量 DeltaPOCBD_pps[i][j]的值定义为 DeltaPOCBD_pps[i][j]=DeltaPOCBD_pps[i][j-1]-(negative_delta_poc_m inus_one_pps[i][j]+1)(如果j>0)。DeltaPOCBD_pps[i][j]应当在-1至 -MaxPOC/2的范围中。negative_delta_poc_minus_one_pps[i][j] defines the value of the variable DeltaPOCBD_pps[i][j] as DeltaPOCBD_pps[i][j] = -(negative_delta_poc_minus_one_pps[i][j] + 1) if j is equal to 0. Additionally, negative_delta_poc_minus_one_pps[i][j] defines the value of the variable DeltaPOCBD_pps[i][j] as DeltaPOCBD_pps[i][j] = DeltaPOCBD_pps[i][j] = DeltaPOCBD_pps[i][j - 1] - (negative_delta_poc_minus_one_pps[i][j] + 1) if j > 0. DeltaPOCBD_pps[i][j] should be in the range of -1 to -MaxPOC/2.

temporal_id_negative_pps[i][j]指定时间标识符,并应当由 bits_for_temporal_id_in_buffer_descriptions个比特表示。 temporal_id_negative_pps[i][j]被添加到列表TemporalIDBD_pps[i]中。在以上一个配置中,添加操作是附加操作。在另一配置中,附加操作是以预定义顺序替换列表中的项目的操作。 temporal_id_negative_pps[i][j]应当在0至max_temporal_layers_minus1 的范围中(包括端点)。max_temporal_layers_minus1+1指定序列中存在的时间层的最大数量。temporal_id_negative_pps[i][j] specifies a temporal identifier and should be represented by bits_for_temporal_id_in_buffer_descriptions bits. temporal_id_negative_pps[i][j] is added to the list TemporalIDBD_pps[i]. In one configuration, the add operation is an append operation. In another configuration, the append operation is an operation that replaces the items in the list in a predefined order. temporal_id_negative_pps[i][j] should be in the range of 0 to max_temporal_layers_minus1 (inclusive). max_temporal_layers_minus1+1 specifies the maximum number of temporal layers present in the sequence.

number_of_positive_pictures_in_bd_pps[i]指定列表 DeltaPOCBD_pps[i]中具有正值的条目的数量。 number_of_positive_pictures_in_bd_pps[i]的值应当在0至max_num_ref_frames-OffsetBD[i]的范围中(包含端点)。当 number_of_positive_pictures_in_bd_pps[i]句法要素不存在时, number_of_positive_pictures_in_bd_pps[i]的值应当被推断为等于0。number_of_positive_pictures_in_bd_pps[i] specifies the number of entries with positive values in the list DeltaPOCBD_pps[i]. The value of number_of_positive_pictures_in_bd_pps[i] shall be in the range of 0 to max_num_ref_frames-OffsetBD[i] (inclusive). When the number_of_positive_pictures_in_bd_pps[i] syntax element is not present, the value of number_of_positive_pictures_in_bd_pps[i] shall be inferred to be equal to 0.

delta_poc_minus_one_pps[i][j]指定POC值的绝对距离。 delta_poc_minus_one_pps[i][j]将变量DeltaPOCBD_pps[i][j+OffsetBD[i]] 的值定义为 DeltaPOCBD_pps[i][j+OffsetBD[i]]=delta_poc_minus_one_pps[i][j]+1 (如果j等于0),并且定义为DeltaPOCBD_pps[i][j+OffsetBD[i]]=DeltaPOCBD_pps[i][j-1+OffsetBD[ i]]+delta_poc_minus_one_pps[i][j]+1(如果j>0)。 DeltaPOCBD_pps[i][j+OffsetBD[i]]应当在1至MaxPOC/2-1的范围中。delta_poc_minus_one_pps[i][j] specifies the absolute distance of the POC value. delta_poc_minus_one_pps[i][j] defines the value of the variable DeltaPOCBD_pps[i][j+OffsetBD[i]] as DeltaPOCBD_pps[i][j+OffsetBD[i]]=delta_poc_minus_one_pps[i][j]+1 if j is 0, and as DeltaPOCBD_pps[i][j+OffsetBD[i]]=DeltaPOCBD_pps[i][j-1+OffsetBD[i]]+delta_poc_minus_one_pps[i][j]+1 if j>0. DeltaPOCBD_pps[i][j+OffsetBD[i]] should be in the range of 1 to MaxPOC/2-1.

temporal_id_positive_pps[i][j]指定时间标识符,并应当由 bits_for_temporal_id_in_buffer_descriptions个比特表示。 temporal_id_positive_pps[i][j]将变量TemporalIDBD_pps[i][j]的值定义为TemporalIDBD_pps[i][j+OffsetBD[i]]=temporal_id_positive_pps[i][j]。 temporal_id_positive_pps[i][j]应当在0至max_temporal_layers_minus1的范围中(包括端点)。temporal_id_positive_pps[i][j] specifies the temporal identifier and shall be represented by bits_for_temporal_id_in_buffer_descriptions bits. temporal_id_positive_pps[i][j] defines the value of the variable TemporalIDBD_pps[i][j] as TemporalIDBD_pps[i][j+OffsetBD[i]]=temporal_id_positive_pps[i][j]. temporal_id_positive_pps[i][j] shall be in the range of 0 to max_temporal_layers_minus1, inclusive.

以下给出列表(1)中的参数的描述的示例。 number_of_longterm_pictures_pps[i]指定列表POCBD_pps[i]和 POC_CYCLE_BD_pps[i]中的条目的数量。 number_of_longterm_pictures_pps[i]的值应当在0至 max_num_ref_frames的范围中(包含端点)。max_num_ref_frames指定短期参考帧和长期参考帧的最大数量。poc_pps[i][j]指定POC值,并将要添加到列表POCBD_pps[i]的值定义为POCBD[i][j]=poc[j]。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc_pps[i][j]应当在0至 MaxPOC-1的范围中。An example of a description of the parameters in List (1) is given below. number_of_longterm_pictures_pps[i] specifies the number of entries in the lists POCBD_pps[i] and POC_CYCLE_BD_pps[i]. The value of number_of_longterm_pictures_pps[i] should be in the range of 0 to max_num_ref_frames (inclusive). max_num_ref_frames specifies the maximum number of short-term reference frames and long-term reference frames. poc_pps[i][j] specifies the POC value and defines the value to be added to the list POCBD_pps[i] as POCBD[i][j]=poc[j]. In one configuration above, the add operation is an append operation. In another configuration, the append (or add) operation is an operation of replacing items in a list in a predefined order. poc_pps[i][j] should be in the range of 0 to MaxPOC-1.

poc_cycle_pps[i][j]指定poc_cycle(例如循环参数)值,并定义要添加到列表POC_CYCLE_BD_pps[i]的值。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。在一些配置中,poc_cycle_pps[i][j](例如循环参数)可以小于或等于零。在这种情况下,有符号整数可以用于表示循环参数。在其他配置中,无符号整数可以用于表示循环参数。poc_cycle_pps[i][j] specifies the poc_cycle (e.g., cycle parameter) value and defines the value to be added to the list POC_CYCLE_BD_pps[i]. In one configuration, the add operation is an append operation. In another configuration, the append (or add) operation is an operation that replaces items in a list in a predefined order. In some configurations, poc_cycle_pps[i][j] (e.g., cycle parameter) can be less than or equal to zero. In this case, a signed integer can be used to represent the cycle parameter. In other configurations, an unsigned integer can be used to represent the cycle parameter.

temporal_id_poc_pps[i][j]指定时间标识符,并且如果 bits_for_temporal_id_in_buffer_descriptions>0,则 temporal_id_poc_pps[i][j]应当存在。temporal_id_poc_pps[i][j]定义列表 TemporalIDBD_pps[i]中的条目的值。temporal_id_poc_pps[i][j]被添加到列表TemporalIDBD_pps[i]中。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。temporal_id_poc_pps[i][j]应当在0至 max_temporal_layers_minus1的范围中(包括端点)。 max_temporal_layers_minus1+1指定序列中存在的时间层的最大数量。应当注意的是,可以按number_of_negative_pictures_pps[i]+number_of_positive_pictures_pps[i ]+number_of_longterm_pictures_pps[i]来计算变量 NumberOfPicturesInBD_pps[i]。temporal_id_poc_pps[i][j] specifies a temporal identifier and should be present if bits_for_temporal_id_in_buffer_descriptions > 0. temporal_id_poc_pps[i][j] defines the value of an entry in the list TemporalIDBD_pps[i]. temporal_id_poc_pps[i][j] is added to the list TemporalIDBD_pps[i]. In one configuration, the append operation is an append operation. In another configuration, the append (or add) operation is an operation that replaces items in a list in a predefined order. temporal_id_poc_pps[i][j] should be in the range of 0 to max_temporal_layers_minus1 (inclusive). max_temporal_layers_minus1+1 specifies the maximum number of temporal layers present in the sequence. It should be noted that the variable NumberOfPicturesInBD_pps[i] can be calculated as number_of_negative_pictures_pps[i]+number_of_positive_pictures_pps[i]+number_of_longterm_pictures_pps[i].

针对在第i个画面参数集合的缓存描述中传输的针对参考画面的负deltaPOC值和正deltaPOC值被添加到列表DeltaPOCBD_pps[i]中。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。The negative deltaPOC value and the positive deltaPOC value for the reference picture transmitted in the buffer description of the i-th picture parameter set are added to the list DeltaPOCBD_pps[i]. In one configuration above, the adding operation is an appending operation. In another configuration, the appending (or adding) operation is an operation of replacing items in the list in a predefined order.

以下列表(2)示出了备选的示例性配置,其中,可以使用以下句法用不同循环参数(例如poc_cycle)在PPS中创建多个缓存描述。在列表(2)中用粗体文本给出由于现有方案的改变。The following Listing (2) shows an alternative exemplary configuration, where multiple cache descriptions can be created in the PPS using the following syntax with different cycle parameters (eg, poc_cycle). Changes due to existing solutions are given in bold text in Listing (2).

列表(2)List (2)

在列表(2)中,以下给出了其他参数的描述的示例。当被设置为1时,poc_cycle_steps_flag指定应当为除了poc_cycle计数之外与信号通知的缓存描述模型完全相同的信号通知的缓存描述模型,生成附加缓存描述。poc_cycle_steps_flag应当默认是0。此外,poc_cycle_steps指定应当为信号通知的缓存描述模型生成的附加缓存描述的数量。除了poc_cycle计数应当递减之外,附加缓存描述应当与信号通知的缓存描述相同。在一个配置中,所生成的附加缓存描述具有poc_cycle_pps[i][j] 值-1、-2、-3、...、-(poc_cycle_steps)。In Listing (2), examples of descriptions of other parameters are given below. When set to 1, the poc_cycle_steps_flag specifies that additional cache descriptions should be generated for a signaled cache description model that is identical to the signaled cache description model except for the poc_cycle count. The poc_cycle_steps_flag should default to 0. In addition, the poc_cycle_steps specifies the number of additional cache descriptions that should be generated for the signaled cache description model. The additional cache descriptions should be identical to the signaled cache description except that the poc_cycle count should be decremented. In one configuration, the generated additional cache descriptions have poc_cycle_pps[i][j] values -1, -2, -3, ..., -(poc_cycle_steps).

在一些配置中,可以在比特流中启用分辨率切换。在这些配置中,参考画面的分辨率可以与当前画面的分辨率不同。因此,知道可以使用哪种机制来将参考画面缩放至正确的分辨率可能是有益的。信号通知该机制的一种方式是与缓存描述一起显式地信号通知该机制。例如,编码器108(例如开销信令模块112)可以向解码器102信号通知缩放参数s。因此,可以在表格(2)中示出备选缓存描述。In some configurations, resolution switching can be enabled in the bitstream. In these configurations, the resolution of the reference picture can be different from the resolution of the current picture. Therefore, it may be beneficial to know which mechanism can be used to scale the reference picture to the correct resolution. One way to signal this mechanism is to explicitly signal it along with the buffer description. For example, the encoder 108 (e.g., the overhead signaling module 112) can signal the scaling parameter s to the decoder 102. Therefore, the alternative buffer descriptions can be shown in Table (2).

备选缓存描述Alternative cache description

表格(2)Table (2)

在表格(2)中,前两个条目具有与当前画面的分辨率匹配的分辨率。然而,其余三个条目具有不同的分辨率,并可以分别使用缩放参数s0,s1,s2。可以选择性地信号通知缩放参数。例如,可以仅当当前画面和参考画面具有不同分辨率时,才信号通知缩放参数。在另一配置中,可以始终信号通知缩放参数。在另一配置中,可以例如通过使用由当前画面特性(例如分辨率)和参考画面特性(例如分辨率)作为索引的查找表,(由解码器)隐式地推断缩放参数。In table (2), the first two entries have resolutions that match the resolution of the current picture. However, the remaining three entries have different resolutions and may use scaling parameters s 0 , s 1 , s 2 , respectively. The scaling parameters may be signaled selectively. For example, the scaling parameters may be signaled only when the current picture and the reference picture have different resolutions. In another configuration, the scaling parameters may be signaled at all times. In another configuration, the scaling parameters may be inferred implicitly (by the decoder), for example, by using a lookup table indexed by the current picture characteristics (e.g., resolution) and the reference picture characteristics (e.g., resolution).

在另一配置中,可以针对缓存描述中所定义的画面的任意子集,信号通知缩放参数。例如,可以针对使用正deltaPOC值信号通知的参考画面的子集、使用负deltaPOC值信号通知的参考画面的子集、使用 POC和poc_cycle信号通知的画面的子集,信号通知缩放参数。在一个配置中,子集可以包含整个列表。以下表格(3)中阐述了一个示例,其中,negativeDeltaPOC0和negativeDeltaPOC1是负增量POC值, positiveDeltaPOC2是正增量POC值,而s0、s1、s2、s3和s4是分别针对第一条目、第二条目、第三条目、第四条目和第五条目的缩放参数。In another configuration, scaling parameters may be signaled for any subset of the pictures defined in the buffer description. For example, scaling parameters may be signaled for a subset of reference pictures signaled using positive deltaPOC values, a subset of reference pictures signaled using negative deltaPOC values, a subset of pictures signaled using POC and poc_cycle. In one configuration, the subset may include the entire list. An example is illustrated in the following table (3), where negativeDeltaPOC 0 and negativeDeltaPOC 1 are negative deltaPOC values, positiveDeltaPOC 2 is a positive deltaPOC value, and s 0 , s 1 , s 2 , s 3 , and s 4 are scaling parameters for the first, second, third, fourth, and fifth entries, respectively.

备选缓存描述Alternative cache description

表格(3)Table (3)

在另一配置中,缩放参数可以指示要保存在解码画面缓存中的参考画面的一个或更多个分辨率。在另一配置中,缩放参数可以用于信号通知要用于运动补偿过程的参考画面的分辨率。在另一配置中,如果参考画面与正在解码的画面的分辨率不相同,则缩放参数指示要使用的运动补偿过程以生成预测。In another configuration, the scaling parameters may indicate one or more resolutions of reference pictures to be stored in the decoded picture buffer. In another configuration, the scaling parameters may be used to signal the resolution of the reference pictures to be used for the motion compensation process. In another configuration, if the reference pictures are not of the same resolution as the picture being decoded, the scaling parameters indicate the motion compensation process to be used to generate the prediction.

在一个配置中,缩放参数信号通知(例如指示)水平和/或垂直分辨率的改变(以象素为单位)。在一个配置中,缩放参数信号通知(例如指示)期望的水平和/或垂直分辨率与原始水平和/或垂直分辨率之间的比例。在一个配置中,缩放参数是二元组,其中,第一值标识水平分辨率的缩放比例,而第二值标识垂直分辨率的缩放比例。In one configuration, the scaling parameter signals (e.g., indicates) a change in horizontal and/or vertical resolution (in pixels). In one configuration, the scaling parameter signals (e.g., indicates) a ratio between a desired horizontal and/or vertical resolution and an original horizontal and/or vertical resolution. In one configuration, the scaling parameter is a two-tuple where a first value identifies a scaling ratio for the horizontal resolution and a second value identifies a scaling ratio for the vertical resolution.

在一些配置中,可以基于缩放参数处理参考画面的变换系数,以获得期望的分辨率。这可能对通过在对参考画面进行编码时仅允许比特定阈值大的块大小来能够实现更好分辨率自适应有益。In some configurations, the transform coefficients of the reference picture may be processed based on the scaling parameters to obtain the desired resolution. This may be beneficial to enable better resolution adaptation by only allowing block sizes larger than a certain threshold when encoding the reference picture.

在另一配置中,可以基于缩放参数来处理参考画面的重构象素,以获得期望的分辨率。应当注意的是,这些配置可以应用于本文所公开的所有参考画面索引方案。In another configuration, the reconstructed pixels of the reference picture may be processed based on the scaling parameters to obtain a desired resolution.It should be noted that these configurations may be applied to all reference picture indexing schemes disclosed herein.

列表(3)阐述了来自AHG21的针对PPS的句法修改的另一示例。具体而言,列表(3)阐述了AHG21中所概述的用在片首部中的缓存描述句法的一个示例。然而,在列表(3)中以粗体文本表示根据本文所公开的系统和方法的对AHG21中所给出的句法的修改。Listing (3) illustrates another example of syntax modifications from AHG21 for PPS. Specifically, Listing (3) illustrates an example of the cache description syntax outlined in AHG21 for use in a slice header. However, the modifications to the syntax given in AHG21 according to the systems and methods disclosed herein are indicated in bold text in Listing (3).

列表(3)List (3)

以下给出列表(3)中的参数的描述的示例。number_of_negative_pictures指定负增量POC条目的数量。 number_of_negative_pictures将Offset(偏移)的值定义为 Offset=number_of_negative_pictures。number_of_negative_pictures的值应当在0至max_num_ref_frames的范围中(包含端点)。The following gives an example of the description of the parameters in Listing (3). number_of_negative_pictures specifies the number of negative delta POC entries. number_of_negative_pictures defines the value of Offset as Offset = number_of_negative_pictures. The value of number_of_negative_pictures shall be in the range of 0 to max_num_ref_frames (inclusive).

negative_delta_poc_minus_one[i]指定POC值的绝对距离。 negative_delta_poc_minus_one[i]将变量POCBD[i]的值定义为POCBD[i] =(pic_order_cnt+MaxPOC-(negative_delta_poc_minus_one[i]+ 1))%MaxPOC(如果i等于0),并定义为POCBD[i]=(POCBD[i-1]+ MaxPOC-(negative_delta_poc_minus_one[i]+1))%MaxPOC(如果i> 0)。这里,pic_order_cnt是如在片首部中信号通知的当前画面的POC。 negative_delta_poc_minus_one[i]的值应当在0至MaxPOC-1的范围中 (包含端点)。POCBD[i]的值应当是使得DiffPOC(currPic,refPic)的值在-1至-MaxPOC/2的范围中。这里,refPic是pic_order_cnt等于POCBD[i] 的参考画面。negative_delta_poc_minus_one[i] specifies the absolute distance of the POC value. negative_delta_poc_minus_one[i] defines the value of the variable POCBD[i] as POCBD[i] = (pic_order_cnt + MaxPOC - (negative_delta_poc_minus_one[i] + 1)) % MaxPOC if i is 0, and as POCBD[i] = (POCBD[i-1] + MaxPOC - (negative_delta_poc_minus_one[i] + 1)) % MaxPOC if i > 0. Here, pic_order_cnt is the POC of the current picture as signaled in the slice header. The value of negative_delta_poc_minus_one[i] should be in the range of 0 to MaxPOC-1, inclusive. The value of POCBD[i] should be such that the value of DiffPOC(currPic, refPic) is in the range of -1 to -MaxPOC/2. Here, refPic is the reference picture whose pic_order_cnt is equal to POCBD[i].

按如下方式规定DiffPOC(picA,picB):DiffPOC(picA, picB) is defined as follows:

按照下式规定函数POC(picX):POC(picX)=picX的pic_order_cnt。将POC_CYCLE_BD[i]设置为第i个负deltaPOC参考画面的poc_cycle。第i个负deltaPOC参考画面的poc_cycle是基于选定画面来计算的。The function POC(picX) is defined as follows: POC(picX) = pic_order_cnt of picX. POC_CYCLE_BD[i] is set to the poc_cycle of the i-th negative deltaPOC reference picture. The poc_cycle of the i-th negative deltaPOC reference picture is calculated based on the selected picture.

temporal_id_negative[i]指定时间标识符,并应当由 bits_for_temporal_id_in_buffer_descriptions个比特表示,其中 bits_for_temporal_id_in_buffer_descriptions是来自由当前画面所使用的画面参数集合的句法要素。temporal_id_negative[i]将变量 TemporalIDBD[i]的值定义为 TemporalIDBD[i]=temporal_id_negative[i]。temporal_id_negative[i]应当在0至max_temporal_layers_minus1的范围中(包括端点)。限制 TemporalIDBD[i]的值,使得TemporalIDBD[i]必须等于在pic_order_cnt 等于POCBD[i]的参考画面的NAL-首部中信号通知的temporal_id。temporal_id_negative[i] specifies the temporal identifier and shall be represented by bits_for_temporal_id_in_buffer_descriptions bits, where bits_for_temporal_id_in_buffer_descriptions is a syntax element from the picture parameter set used by the current picture. temporal_id_negative[i] defines the value of the variable TemporalIDBD[i] as TemporalIDBD[i] = temporal_id_negative[i]. temporal_id_negative[i] shall be in the range of 0 to max_temporal_layers_minus1, inclusive. The value of TemporalIDBD[i] is constrained so that TemporalIDBD[i] must be equal to the temporal_id signaled in the NAL-header of the reference picture whose pic_order_cnt is equal to POCBD[i].

number_of_positive_pictures指定列表DeltaPOCBD_pps[i]中具有正值的条目的数量。number_of_positive_pictures的值应当在0至 max_num_ref_frames-Offset的范围中(包含端点)。当 number_of_positive_pictures句法要素不存在时, number_of_positive_pictures的值应当推断为等于0。number_of_positive_pictures specifies the number of entries with positive values in the list DeltaPOCBD_pps[i]. The value of number_of_positive_pictures shall be in the range of 0 to max_num_ref_frames-Offset (inclusive). When the number_of_positive_pictures syntax element is not present, the value of number_of_positive_pictures shall be inferred to be equal to 0.

delta_poc_minus_one[i]指定POC值的绝对距离。 delta_poc_minus_one[i]将变量POCBD[i+Offset]的值定义为 POCBD[i+Offset]=(pic_order_cnt+(delta_poc_minus_one[i]+1))% MaxPOC(如果i等于0),并定义为POCBD[i+Offset]= (POCBD[i-1+Offset]+(delta_poc_minus_one[i]+1))%MaxPOC(如果 i>0)。这里,pic_order_cnt是如在片首部中信号通知的当前画面的 POC。delta_poc_minus_one[i]的值应当在0至MaxPOC-1的范围中(包含端点)。POCBD[i+Offset]的值应当是使得DiffPOC(currPic,refPic)的值在1至MaxPOC/2-1的范围中,其中refPic是pic_order_cnt等于 POCBD[i+Offset]的参考画面。将POC_CYCLE_BD[i+Offset]设置为第i 个正deltaPOC参考画面的poc_cycle。第i个正deltaPOC参考画面的 poc_cycle是基于选定画面来计算的。delta_poc_minus_one[i] specifies the absolute distance between the POC values. delta_poc_minus_one[i] defines the value of the variable POCBD[i+Offset] as POCBD[i+Offset] = (pic_order_cnt + (delta_poc_minus_one[i]+1))% MaxPOC if i is 0, and as POCBD[i+Offset] = (POCBD[i-1+Offset] + (delta_poc_minus_one[i]+1))% MaxPOC if i > 0. Here, pic_order_cnt is the POC of the current picture as signaled in the slice header. The value of delta_poc_minus_one[i] should be in the range of 0 to MaxPOC-1, inclusive. The value of POCBD[i+Offset] should be such that the value of DiffPOC(currPic, refPic) is in the range of 1 to MaxPOC/2-1, where refPic is the reference picture with pic_order_cnt equal to POCBD[i+Offset]. POC_CYCLE_BD[i+Offset] is set to the poc_cycle of the i-th positive deltaPOC reference picture. The poc_cycle of the i-th positive deltaPOC reference picture is calculated based on the selected picture.

temporal_id_positive[i]指定时间标识符,并应当由 bits_for_temporal_id_in_buffer_descriptions个比特表示,其中 bits_for_temporal_id_in_buffer_descriptions是来自由当前画面所使用的画面参数集合的句法要素。temporal_id_positive[i]将变量 TemporalIDBD[i+Offset]的值定义为 TemporalIDBD[i+Offset]=temporal_id_positive[i]。temporal_id_positive[i] 应当在0至max_temporal_layers_minus1的范围中(包括端点)。限制 TemporalIDBD[i]的值,使得TemporalIDBD[i]必须等于在pic_order_cnt 等于POCBD[i]的参考画面的NAL-首部中信号通知的temporal_id。temporal_id_positive[i] specifies the temporal identifier and shall be represented by bits_for_temporal_id_in_buffer_descriptions bits, where bits_for_temporal_id_in_buffer_descriptions is a syntax element from the picture parameter set used by the current picture. temporal_id_positive[i] defines the value of the variable TemporalIDBD[i+Offset] as TemporalIDBD[i+Offset] = temporal_id_positive[i]. temporal_id_positive[i] shall be in the range of 0 to max_temporal_layers_minus1, inclusive. The value of TemporalIDBD[i] is constrained so that TemporalIDBD[i] must be equal to the temporal_id signaled in the NAL-header of the reference picture whose pic_order_cnt is equal to POCBD[i].

bd_poc_cycle_update_flag等于1指定应当针对当前画面重载参考缓存描述的POC_CYCLE_BD_pps[bd_idx][j]。在一些配置中,未来帧还可以重载poc_cycle信息。如果bd_poc_cycle_update_flag是0,则要使用参考缓存描述的原始POC_CYCLE_BD_pps[bd_idx][j]。 poc_cycle_pps_override[j]指定仅针对当前画面要用于重载 POC_CYCLE_BD_pps[bd_idx][j]中的值的值。在备选配置中, poc_cycle_pps_override[j]指定偏移。仅针对当前画面,可以使用 (POC_CYCLE_BD_pps[bd_idx][j]+poc_cycle_pps_override[j]),而不是POC_CYCLE_BD_pps[bd_idx][j]。bd_poc_cycle_update_flag equal to 1 specifies that POC_CYCLE_BD_pps[bd_idx][j] of the reference buffer description should be overridden for the current picture. In some configurations, future frames may also override the poc_cycle information. If bd_poc_cycle_update_flag is 0, the original POC_CYCLE_BD_pps[bd_idx][j] of the reference buffer description is used. poc_cycle_pps_override[j] specifies the value to be used to override the value in POC_CYCLE_BD_pps[bd_idx][j] for the current picture only. In an alternative configuration, poc_cycle_pps_override[j] specifies an offset. For the current picture only, (POC_CYCLE_BD_pps[bd_idx][j] + poc_cycle_pps_override[j]) may be used instead of POC_CYCLE_BD_pps[bd_idx][j].

poc_pps_override[j]指定仅针对当前画面要用于重载 POCBD_pps[bd_idx][j]中的值的值。在备选配置中,poc_pps_override[j] 指定偏移。仅针对当前画面,可以使用(POCBD_pps[bd_idx][j]+poc_pps_override[j]),而不是 POCBD_pps[bd_idx][j]。temporal_id_pps_override[j]指定仅针对当前画面要用于重载TemporalIDBD_pps[bd_idx][j]中的值的值。在备选配置中,temporal_id_pps_override[j]指定偏移。仅针对当前画面,可以使用(TemporalIDBD_pps[bd_idx][j]+temporal_id_pps_override[j]),而不是TemporalIDBD_pps[bd_idx][j]。poc_pps_override[j] specifies the value to be used to override the value in POCBD_pps[bd_idx][j] for the current picture only. In an alternative configuration, poc_pps_override[j] specifies an offset. For the current picture only, (POCBD_pps[bd_idx][j]+poc_pps_override[j]) can be used instead of POCBD_pps[bd_idx][j]. temporal_id_pps_override[j] specifies the value to be used to override the value in TemporalIDBD_pps[bd_idx][j] for the current picture only. In an alternative configuration, temporal_id_pps_override[j] specifies an offset. For the current picture only, (TemporalIDBD_pps[bd_idx][j]+temporal_id_pps_override[j]) can be used instead of TemporalIDBD_pps[bd_idx][j].

number_of_longterm_pictures指定列表POCBD和 POC_CYCLE_BD中的长期画面条目的数量。 number_of_longterm_pictures的值应当在0至max_num_ref_frames的范围中(包含端点)。max_num_ref_frames指定短期参考帧和长期参考帧的最大数量。poc[j]将要添加到列表POCBD中的POC值指定为 POCBD[bd_idx][j]=poc[j]。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc[j]应当在0至MaxPOC-1的范围中。number_of_longterm_pictures specifies the number of long-term picture entries in the lists POCBD and POC_CYCLE_BD. The value of number_of_longterm_pictures should be in the range of 0 to max_num_ref_frames (inclusive). max_num_ref_frames specifies the maximum number of short-term reference frames and long-term reference frames. poc[j] specifies the POC value to be added to the list POCBD as POCBD[bd_idx][j] = poc[j]. In one of the above configurations, the add operation is an append operation. In another configuration, the append (or add) operation is an operation that replaces items in a list in a predefined order. poc[j] should be in the range of 0 to MaxPOC-1.

poc_cycle[j](例如循环参数)指定poc_cycle的值,并定义要添加到列表POC_CYCLE_BD的值。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。poc_cycle[j]可以小于或等于零,或可以占据不同的数值范围。poc_cycle[j] (e.g., a cycle parameter) specifies the value of poc_cycle and defines the value to be added to the list POC_CYCLE_BD. In one configuration, the add operation is an append operation. In another configuration, the append (or add) operation is an operation that replaces items in the list in a predefined order. poc_cycle[j] can be less than or equal to zero, or can occupy a different range of values.

temporal_id_poc[j]指定时间标识符,并应当由 bits_for_temporal_id_in_buffer_descriptions个比特表示。 temporal_id_poc[j]定义要添加到列表TemporalIDBD中的值。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。temporal_id_poc[i][j]应当在0至max_temporal_layers_minusl的范围中(包括端点)。 max_temporal_layers_minus1+1指定序列中存在的时间层的最大数量。temporal_id_poc[j] specifies a temporal identifier and should be represented by bits_for_temporal_id_in_buffer_descriptions bits. temporal_id_poc[j] defines the value to be added to the list TemporalIDBD. In one configuration, the add operation is an append operation. In another configuration, the append (or add) operation is an operation that replaces items in a list in a predefined order. temporal_id_poc[i][j] should be in the range of 0 to max_temporal_layers_minus1 (inclusive). max_temporal_layers_minus1+1 specifies the maximum number of temporal layers present in the sequence.

在一些配置中,可以在列表(3)中所阐述的“for”循环之前发送number_of_longterm_pictures_pps[bd_idx],从而避免对片首部以及 PPS的依赖。备选地,bd_poc_cycle_update_flag可以替换为另一参数 num_longterm_poccycle_override_count。例如,可以用“If num_longterm_poccycle_override_count>0then For(j=0; j<num_longterm_poccycle_override_count;j++){....}”替换列表(3) 中的相关代码。In some configurations, number_of_longterm_pictures_pps[bd_idx] can be sent before the "for" loop described in Listing (3), thereby avoiding the reliance on the slice header and PPS. Alternatively, bd_poc_cycle_update_flag can be replaced with another parameter num_longterm_poccycle_override_count. For example, the relevant code in Listing (3) can be replaced with "If num_longterm_poccycle_override_count>0then For(j=0; j<num_longterm_poccycle_override_count; j++){....}".

bd_reference_flag等于1指定应当使用在片首部中未发送的句法要素来创建当前画面的缓存描述。在一个配置中,使用画面参数集合中的句法要素来创建针对当前画面的缓存描述。bd_reference_flag等于0 指定可以通过在片首部中发送的缓存描述和在片首部中未发送的缓存描述的组合来创建当前画面的缓存描述。在一个配置中,在画面参数集合中发送在片首部中未发送的缓存描述。bd_reference_flag equal to 1 specifies that the cache description for the current picture should be created using syntax elements not sent in the slice header. In one configuration, the cache description for the current picture is created using syntax elements in the picture parameter set. bd_reference_flag equal to 0 specifies that the cache description for the current picture can be created by a combination of the cache description sent in the slice header and the cache description not sent in the slice header. In one configuration, the cache description not sent in the slice header is sent in the picture parameter set.

bd_idx标识可用缓存描述集合中的缓存描述。在一个配置中, bd_idx指示应当用于当前画面的缓存描述的创建的列表POCBD_pps、 DeltaPOCBD_pps、POC_CYCLE_BD_pps和TemporalIDBD_pps中的索引。bd_idx identifies a cache description in the set of available cache descriptions. In one configuration, bd_idx indicates an index into the lists POCBD_pps, DeltaPOCBD_pps, POC_CYCLE_BD_pps and TemporalIDBD_pps that should be used for the creation of the cache description for the current picture.

(DeltaPOCBD_pps[bd_idx],TemporalIDBD_pps[bd_idx])中与 deltaPOC个参考画面相对应的值被转换为画面顺序计数(例如POC)、循环参数(例如poc_cycle)和时间标识符,并被添加到画面缓存描述列表POCBD、POC_CYCLE_BD和TemporalIDBD中。列表 (POCBD_pps[bd_idx],POC_CYCLE_BD_pps[bd_idx],TemporalIDBD_ pps[bd_idx])中与参考画面相对应的值被添加到画面缓存描述列表 POCBD、POC_CYCLE_BD和TemporalIDBD中。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。The values corresponding to the deltaPOC reference pictures in (DeltaPOCBD_pps[bd_idx], TemporalIDBD_pps[bd_idx]) are converted into a picture sequence count (e.g., POC), a cycle parameter (e.g., poc_cycle), and a temporal identifier, and are added to the picture cache description lists POCBD, POC_CYCLE_BD, and TemporalIDBD. The values corresponding to the reference pictures in the lists (POCBD_pps[bd_idx], POC_CYCLE_BD_pps[bd_idx], TemporalIDBD_pps[bd_idx]) are added to the picture cache description lists POCBD, POC_CYCLE_BD, and TemporalIDBD. In one configuration, the addition operation is an append operation. In another configuration, the append (or add) operation is an operation of replacing items in the lists in a predefined order.

combine_with_reference_flag等于1指定来自活动PPS的句法要素用于结合显式信令指派列表POCBD、POC_CYCLE_BD和 TemporalIDBD中的值。当combine_with_reference_flag句法要素不存在时,combine_with_reference_flag的值应当推断为等于0。combine_with_reference_flag equal to 1 specifies that the syntax elements from the active PPS are used to combine the values in the explicitly signaled assignment lists POCBD, POC_CYCLE_BD and TemporalIDBD. When the combine_with_reference_flag syntax element is not present, the value of combine_with_reference_flag shall be inferred to be equal to 0.

bd_combination_idx指定列表DeltaPOCBD_pps和 TemporalIDBD_pps中的索引,该索引应当用于结合显式信令创建当前画面的缓存描述。应当由ceil(log2(number_of_bds))个比特表示 bd_combination_idx。bd_combination_idx的值应当在0至 number_of_bds-1的范围中,其中number_of_bds是来自由当前画面所使用的画面参数集合的句法要素。然后,使用预定义机制将来自列表 DeltaPOCBD_pps[bd_idx]、POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]和TemporalIDBD_pps[bd_idx]的值添加到列表POCBD、POC_CYCLE_BD和TemporalIDBD中的当前画面中。在以上一个配置中,添加操作是附加操作。在另一配置中,附加(或添加)操作是以预定义顺序替换列表中的项目的操作。bd_combination_idx specifies the index into the lists DeltaPOCBD_pps and TemporalIDBD_pps that should be used to create the buffer description for the current picture in conjunction with explicit signaling. bd_combination_idx should be represented by ceil(log2(number_of_bds)) bits. The value of bd_combination_idx should be in the range 0 to number_of_bds-1, where number_of_bds is a syntax element from the picture parameter set used by the current picture. The values from the lists DeltaPOCBD_pps[bd_idx], POCBD_pps[bd_idx], POC_CYCLE_BD_pps[bd_idx], and TemporalIDBD_pps[bd_idx] are then added to the current picture in the lists POCBD, POC_CYCLE_BD, and TemporalIDBD using a predefined mechanism. In the above configuration, the add operation is an append operation. In another configuration, an append (or add) operation is an operation that replaces items in a list in a predefined order.

在下文中给出了可以应用本文所描述的系统和方法的方式的一些示例。假定POC=0的画面是由来自后续画面集合的POC=MaxPOC-1的画面和POC=0的画面所使用的长期(参考)画面。可以以不同方式指示长期(参考)画面。In the following, some examples of how the systems and methods described herein can be applied are given. Assume that a picture with POC=0 is a long-term (reference) picture used by a picture with POC=MaxPOC-1 and a picture with POC=0 from a subsequent picture set. A long-term (reference) picture can be indicated in different ways.

在第一种方式中,PPS中存在两个缓存描述,包括缓存描述A: {POC=0,poc_cycle=0,temporalID}和缓存描述B: {POC=0,poc_cycle=-1,temporalID}。POC=MaxPOC-1的画面将指向缓存描述A。来自后续画面集合的POC=0的画面将参考缓存描述B。In the first approach, there are two cache descriptions in the PPS, including cache description A: {POC=0, poc_cycle=0, temporalID} and cache description B: {POC=0, poc_cycle=-1, temporalID}. Pictures with POC=MaxPOC-1 will point to cache description A. Pictures with POC=0 from subsequent picture sets will reference cache description B.

在第二备选方式中,POC=MaxPOC-1的画面将指向缓存描述A。来自后续画面集合的POC=0的画面将参考缓存描述A。缓存描述A对应于{POC=0,poc_cycle=0,temporalID}。为了参考正确的画面,poc_cycle 应当被设置为-1,这是因为参考画面属于先前的[0,…,MaxPOC-1]画面集合。因此,可以通过在片首部中发送“-1”仅针对当前片重载(例如设置为不同的值)当前被设置为0的缓存描述A的poc_cycle值。在一些配置中,画面中的第一片可用于仅针对当前画面重载缓存描述中的 poc_cycle值。In the second alternative, a picture with POC = MaxPOC - 1 will point to cache description A. Pictures from subsequent picture sets with POC = 0 will reference cache description A. Cache description A corresponds to {POC = 0, poc_cycle = 0, temporalID}. To reference the correct picture, poc_cycle should be set to -1, since the reference picture belongs to the previous [0, ..., MaxPOC - 1] picture set. Therefore, the poc_cycle value of cache description A, currently set to 0, can be overridden (e.g., set to a different value) for only the current slice by sending "-1" in the slice header. In some configurations, the first slice in a picture can be used to override the poc_cycle value in the cache description for only the current picture.

在一些配置中,可以在更优级别修改在较高级别信号通知的参考画面列表。例如,可以在PPS中发送的缓存描述中信号通知(例如在较高级别信号通知)参考画面列表。然而,可以修改(例如在更优级别修改)PPS中发送的缓存描述。例如,可以通过删除现有条目来修改缓存描述。附加地或备选地,可以修改来自PPS的缓存描述信息以添加新条目或替换条目。例如如果没有可用的空槽位,则还可以修改来自PPS的缓存描述信息以使用预定义机制来添加新条目并替换当前条目。允许修改的益处是可以获得更高级别的控制。这可以替换使用来自PPS的没有修改的缓存描述,或者附加地或备选地仅替换前“n”个条目。In some configurations, the reference picture list signaled at a higher level may be modified at a finer level. For example, the reference picture list may be signaled (e.g., signaled at a higher level) in a cache description sent in the PPS. However, the cache description sent in the PPS may be modified (e.g., modified at a finer level). For example, the cache description may be modified by deleting existing entries. Additionally or alternatively, the cache description information from the PPS may be modified to add new entries or replace entries. For example, if no empty slots are available, the cache description information from the PPS may also be modified to use a predefined mechanism to add new entries and replace current entries. The benefit of allowing modifications is that a higher level of control may be obtained. This may alternatively use the unmodified cache description from the PPS, or additionally or alternatively replace only the first "n" entries.

在一些配置中,可以定义附加句法以替换槽位列表中的条目。在此情况下,将指定列表中所替换的索引、以及可以替换在该索引处的当前条目的条目。In some configurations, additional syntax may be defined to replace an entry in a slot list. In this case, the index to replace in the list and the entry that can replace the current entry at that index are specified.

附加地或备选地,如果槽位列表没有空缺,则可以定义附加句法以利用替换方式在列表中添加条目。在此情况下,可以使用先前在比特流中发送的一些信息,显式地信号通知(例如从编码器108或开销信令模块112)或隐式地推断(例如通过解码器102)列表中应当替换的索引。Additionally or alternatively, if the slot list is not empty, additional syntax can be defined to add entries to the list using replacement. In this case, the index in the list that should be replaced can be explicitly signaled (e.g., from the encoder 108 or overhead signaling module 112) or implicitly inferred (e.g., by the decoder 102) using some information previously sent in the bitstream.

列表(4)阐述了来自AHG21的针对PPS的句法修改的另一示例。具体而言,列表(4)阐述了AHG21中所概述的用在片首部中的缓存描述句法的另一示例。然而,在列表(4)中以粗体文本表示根据本文所公开的系统和方法的对AHG21中所给出的句法的修改。Listing (4) illustrates another example of syntax modifications from AHG21 for PPS. Specifically, Listing (4) illustrates another example of the cache description syntax outlined in AHG21 for use in a slice header. However, the modifications to the syntax given in AHG21 according to the systems and methods disclosed herein are indicated in bold text in Listing (4).

列表(4)List (4)

列表(4)包含许多与列表(3)的要素类似的要素。列表(4)还包含对片首部的句法修改,以允许参考画面的删除和/或添加。Listing (4) contains many elements similar to those of Listing (3). Listing (4) also contains syntax modifications to the slice header to allow for the deletion and/or addition of reference pictures.

以下给出列表(4)中参数的描述的示例。 bd_poc_cycle_delete_count指定针对当前画面(例如仅针对当前画面),要从列表POCBD_pps[bd_idx]、temporalIDBD_pps[bd_idx]和 POC_CYCLE_BD_pps[bd_idx]中删除的条目的数量。在一些配置中, bd_poc_cycle_delete_count可以大于或等于0。An example of the description of the parameters in List (4) is given below. bd_poc_cycle_delete_count specifies the number of entries to be deleted from the lists POCBD_pps[bd_idx], temporalIDBD_pps[bd_idx], and POC_CYCLE_BD_pps[bd_idx] for the current picture (e.g., only for the current picture). In some configurations, bd_poc_cycle_delete_count may be greater than or equal to 0.

bd_pps_delete_idx[j]指定针对当前画面,删除列表中的 POC_CYCLE_BD_pps[bd_idx][bd_pps_delete_idx[j]]条目、 temporalIDBD_pps[bd_idx][bd_pps_delete_idx[j]]条目、和POCBD_pps [bd_idx][bd_pps_delete_idx[j]]条目。在一些配置中,一旦删除画面,该画面就可能不再可供后续解码画面参考。在其他配置中,一旦所有删除完成,就可以将列表POCBD_pps[bd_idx]、 temporalIDBD_pps[bd_idx]和POC_CYCLE_BD_pps[bd_idx]中的剩余条目移向初始索引(例如第零个索引)以占据所空出的槽位。可以执行此过程使得在任意两个已占用槽位之间都不剩余空的槽位。这里,槽位对应于缓存描述中的条目。例如,如果列表是[Slot0=A][Slot1=空][Slot2=B][Slot3=C][Slot4=空][Slot5=D],则在删除之后,条目被移至Slot0,直到在任意两个已占用槽位之间都不剩余空的槽位为止。在本示例中,所得到的列表是[Slot0=A][Slot1=B][Slot2=C]Slot3=D] [Slot4=空][Slot5=空]。bd_pps_delete_idx[j] specifies that for the current picture, the entries POC_CYCLE_BD_pps[bd_idx][bd_pps_delete_idx[j]], temporalIDBD_pps[bd_idx][bd_pps_delete_idx[j]], and POCBD_pps[bd_idx][bd_pps_delete_idx[j]] in the lists are deleted. In some configurations, once a picture is deleted, it may no longer be referenced by subsequently decoded pictures. In other configurations, once all deletions are complete, the remaining entries in the lists POCBD_pps[bd_idx], temporalIDBD_pps[bd_idx], and POC_CYCLE_BD_pps[bd_idx] may be moved to the initial index (e.g., the zeroth index) to occupy the vacated slots. This process can be performed so that no empty slots remain between any two occupied slots. Here, a slot corresponds to an entry in the cache description. For example, if the list is [Slot0=A][Slot1=Empty][Slot2=B][Slot3=C][Slot4=Empty][Slot5=D], then after deletion, entries are moved to Slot0 until no empty slots remain between any two occupied slots. In this example, the resulting list is [Slot0=A][Slot1=B][Slot2=C][Slot3=D][Slot4=Empty][Slot5=Empty].

bd_poc_cycle_append_count指定针对当前画面,要向列表 POCBD_pps[bd_idx]、temporalIDBD_pps[bd_idx]和 POC_CYCLE_BD_pps[bd_idx]附加的条目的数量。在一些配置中, bd_poc_cycle_append_count可以大于或等于0。bd_poc_cycle_append_count specifies the number of entries to be appended to the lists POCBD_pps[bd_idx], temporalIDBD_pps[bd_idx], and POC_CYCLE_BD_pps[bd_idx] for the current picture. In some configurations, bd_poc_cycle_append_count may be greater than or equal to 0.

poc_pps_append[j]指定针对当前画面(例如仅针对当前画面),要附加到列表POCBD_pps[bd_idx]的POC值。在一些配置中,如果在列表中存在任何空槽位,从与零-索引最接近的空槽位开始然后以槽位索引递增的顺序执行添加。poc_pps_append[j] specifies the POC value to be appended to the list POCBD_pps[bd_idx] for the current picture (e.g., only the current picture). In some configurations, if there are any empty slots in the list, the addition is performed starting with the empty slot closest to the zero-index and then in increasing order of slot index.

poc_cycle_pps_append[j]指定针对当前画面(例如仅针对当前画面),要附加到列表POC_CYCLE_BD_pps[bd_idx]的poc_cycle值。在一些配置中,如果在列表中存在任何空槽位,则可以首先填充与零.索引最接近的空槽位。附加地,可以以槽位索引递增的顺序填充槽位。在一些配置中,以预定义顺序执行针对POCBD_pps[bd_idx]和 POC_CYCLE_BD_pps[bd_idx]重载条目、删除条目和添加条目这些操作。poc_cycle_pps_append[j] specifies the poc_cycle value to be appended to the list POC_CYCLE_BD_pps[bd_idx] for the current picture (e.g., only the current picture). In some configurations, if there are any empty slots in the list, the empty slot closest to the zero index may be filled first. Additionally, the slots may be filled in order of increasing slot index. In some configurations, operations such as reloading entries, deleting entries, and adding entries to POCBD_pps[bd_idx] and POC_CYCLE_BD_pps[bd_idx] are performed in a predefined order.

temporal_id_pps_append[j]指定针对当前画面(例如仅针对当前画面),要附加到列表TemporalIDBD_pps[bd_idx]的时间标识符值。在一些配置中,如果在列表中存在任何空槽位,从与零-索引最接近的空槽位开始然后以槽位索引递增的顺序执行添加。temporal_id_pps_append[j] specifies the temporal identifier value to be appended to the list TemporalIDBD_pps[bd_idx] for the current picture (e.g., only for the current picture). In some configurations, if there are any empty slots in the list, the addition is performed starting with the empty slot closest to the zero-index and then in increasing order of slot index.

在下文中给出了本文所公开的系统和方法的配置的一些示例。在一个配置中,可以用二元组(LTSlotIdx、temporalID)替换三元组(POC、 poc_cycle、temporalID)。LTSlotIndex可以是指向长期DPB中的位置的槽位索引。此方案的一个可能益处是减少比特率开销。Some examples of configurations of the systems and methods disclosed herein are given below. In one configuration, the triple (POC, poc_cycle, temporalID) can be replaced with a binary (LTSlotIdx, temporalID). LTSlotIndex can be a slot index pointing to a location in the long-term DPB. One possible benefit of this solution is reduced bitrate overhead.

在另一配置中,可以用(f(POC,poc_cycle)、temporalID)替换三元组(POC、poc_cycle、temporalID),其中f(POC,poc_cycle)是将二元组(POC、poc_cycle)映射到索引的函数(例如查找表)。在另一配置中,可以使用绝对POC值,而不是(POC、poc_cycle)。在一个示例中,此绝对POC值将与JCTVC-F493中的缓存描述中规定绝对POC的 longterm_poc[i]字段不同。具体而言,JCTVC-F493的longterm_poc[i] 字段仅能够信号通知范围0至MaxPOC中的值。然而,根据本文所公开的系统和方法,可以使用AVC的最高有效位(MSB)和最低有效位(LSB)方案来信号通知(并可能导出)绝对POC值,因此提供较大比特分辨率。备选地,可以使用比MaxPOC大的号空间来信号通知绝对POC值。In another configuration, the triplet (POC, poc_cycle, temporalID) may be replaced with (f(POC, poc_cycle), temporalID), where f(POC, poc_cycle) is a function (e.g., a lookup table) that maps the two-tuple (POC, poc_cycle) to an index. In another configuration, an absolute POC value may be used instead of (POC, poc_cycle). In one example, this absolute POC value will be different from the longterm_poc[i] field in the cache description in JCTVC-F493 that specifies the absolute POC. Specifically, the longterm_poc[i] field of JCTVC-F493 is only capable of signaling values in the range 0 to MaxPOC. However, according to the systems and methods disclosed herein, the absolute POC value may be signaled (and possibly derived) using the most significant bit (MSB) and least significant bit (LSB) scheme of AVC, thereby providing greater bit resolution. Alternatively, a larger number space than MaxPOC may be used to signal the absolute POC value.

在另一配置中,根据本文所公开的系统和方法的绝对POC可以用于参考所有参考画面(例如短期画面和长期画面)。在另一配置中,可以使用根据本文所公开的系统和方法的绝对POC,而不是deltaPOC信令。在一些配置中,可以用绝对POC值替换POC和poc_cycle,如以下示例所示(并且可以不限于以下示例):In another configuration, the absolute POC according to the systems and methods disclosed herein can be used to reference all reference pictures (e.g., short-term pictures and long-term pictures). In another configuration, the absolute POC according to the systems and methods disclosed herein can be used instead of deltaPOC signaling. In some configurations, the POC and poc_cycle can be replaced with absolute POC values, as shown in the following example (and may not be limited to the following example):

在本示例中,absolute_poc_pps[i][j]是针对PPS中第i个缓存描述中第j 个长期画面条目的绝对画面顺序计数。In this example, absolute_poc_pps[i][j] is the absolute picture order count for the j-th long-term picture entry in the i-th buffer description in the PPS.

在本示例中,absolute_poc[j]是针对缓存描述中的第j个长期画面条目的绝对画面顺序计数。In this example, absolute_poc[j] is the absolute picture order count for the j-th long-term picture entry in the cache description.

在一些配置中,可以附加地或备选地在自适应片参数集合或自适应参数集合(APS)中承载通常在PPS中和/或在缓存描述中包含的一些或所有信息。此信息包括以下各项中一个或更多个: number_of_longterm_pictures、poc[j]、poc_cycle[j]、temporal_id_poc[j]、 number_of_longterm_pictures_pps[i]、poc_pps[i][j]、poc_cycle_pps[i][j] 和temporal_id_poc_pps[i][j]。例如,自适应片参数集合或自适应参数集合(APS)可以包括以下各项中一个或更多个:参考画面的数量(例如number_of_longterm_pictures)、画面顺序计数(例如poc[j])、画面顺序计数循环参数(例如poc_cycle[j])、时间标识符画面顺序计数参数(例如temporal_id_poc[j])、参考画面的画面参数集合数量(例如number_of_longterm_pictures_pps[i])、画面参数集合画面顺序计数(例如poc_pps[i][j])、画面参数集合画面顺序计数循环参数(例如 poc_cycle_pps[i][j])和画面参数集合时间标识符画面顺序计数参数(例如temporal_id_poc_pps[i][j])。In some configurations, some or all of the information typically included in a PPS and/or in a buffer description may additionally or alternatively be carried in an adaptation slice parameter set or adaptation parameter set (APS). This information includes one or more of the following: number_of_longterm_pictures, poc[j], poc_cycle[j], temporal_id_poc[j], number_of_longterm_pictures_pps[i], poc_pps[i][j], poc_cycle_pps[i][j], and temporal_id_poc_pps[i][j]. For example, an adaptive slice parameter set or adaptation parameter set (APS) may include one or more of the following: the number of reference pictures (e.g., number_of_longterm_pictures), a picture order count (e.g., poc[j]), a picture order count cycle parameter (e.g., poc_cycle[j]), a temporal identifier picture order count parameter (e.g., temporal_id_poc[j]), a picture parameter set number of reference pictures (e.g., number_of_longterm_pictures_pps[i]), a picture parameter set picture order count (e.g., poc_pps[i][j]), a picture parameter set picture order count cycle parameter (e.g., poc_cycle_pps[i][j]), and a picture parameter set temporal identifier picture order count parameter (e.g., temporal_id_poc_pps[i][j]).

在一些配置中,如果信息poc_cycle[j]与0不同,则可以(例如从编码器108向解码器102、202)仅信号通知信息poc_cycle[j]。在此情况下,可以定义备选句法。In some configurations, the information poc_cycle[j] may only be signaled (eg, from the encoder 108 to the decoder 102, 202) if the information poc_cycle[j] is different from 0. In this case, an alternative syntax may be defined.

在另一配置中,可以附加地或备选地在片首部中与缓存描述信息分离地承载通常在PPS中和/或在缓存描述中包含的一些或所有信息。例如,片首部可以(与缓存描述容器分离地)承载以下各项中一个或更多个:参考画面的数量(例如number_of_longterm_pictures)、画面顺序计数(例如poc[j])、画面顺序计数循环参数(例如poc_cycle[j])、时间标识符画面顺序计数参数(例如temporal_id_poc[j])、参考画面的画面参数集合数量(例如number_of_longterm_pictures_pps[i])、画面参数集合画面顺序计数(例如poc_pps[i][j])、画面参数集合画面顺序计数循环参数(例如poc_cycle_pps[i][j])和画面参数集合时间标识符画面顺序计数参数(例如temporal_id_poc_pps[i][j])。In another configuration, some or all of the information typically included in the PPS and/or in the cache description may be carried in addition or alternatively in the slice header separately from the cache description information. For example, the slice header may carry (separately from the cache description container) one or more of the following: the number of reference pictures (e.g., number_of_longterm_pictures), the picture sequence count (e.g., poc[j]), the picture sequence count cycle parameter (e.g., poc_cycle[j]), the temporal identifier picture sequence count parameter (e.g., temporal_id_poc[j]), the number of picture parameter sets for reference pictures (e.g., number_of_longterm_pictures_pps[i]), the picture parameter set picture sequence count (e.g., poc_pps[i][j]), the picture parameter set picture sequence count cycle parameter (e.g., poc_cycle_pps[i][j]), and the picture parameter set temporal identifier picture sequence count parameter (e.g., temporal_id_poc_pps[i][j]).

在备选配置中,可以通过将长期(参考)画面编为x.y的索引来信号通知该长期(参考)画面,其中,x=poc[j]或poc_pps[i][j],而y是新信息子索引,该新信息子索引定义用于对长期(参考)画面编子索引的附加名称空间/号空间。在此情况下,可以在PPS和/或缓存描述(在片首部中)中发送针对每个长期(参考)画面的x条目和y条目。In an alternative configuration, a long-term (reference) picture may be signaled by indexing it as x.y, where x = poc[j] or poc_pps[i][j], and y is a new information sub-index that defines an additional namespace/number space for sub-indexing the long-term (reference) picture. In this case, the x and y entries for each long-term (reference) picture may be sent in the PPS and/or the buffer description (in the slice header).

在一些配置中,可以使用增量参考(使用例如deltaPOC和 temporalID)或绝对参考(使用例如POC、poc_cycle和temporalID)来参考所有(参考)画面(例如长期的和短期的)。例如,整个解码画面缓存(DPB)可以包含接收画面集合。这些接收画面的子集可以使用增量参考,而剩余的接收画面可以使用绝对参考。应当注意的是,现有方案未规定与根据本文所公开的系统和方法(例如使用POC和 poc_cycle)给出的绝对参考相同的绝对参考。应当注意的是,可以结合本文所描述的方法和/或方案中的一个或更多个来实现所描述的缓存描述和句法的配置中的一个或更多个。In some configurations, all (reference) pictures (e.g., long-term and short-term) may be referenced using incremental references (using, for example, deltaPOC and temporalID) or absolute references (using, for example, POC, poc_cycle, and temporalID). For example, the entire decoded picture buffer (DPB) may contain a set of received pictures. A subset of these received pictures may use incremental references, while the remaining received pictures may use absolute references. It should be noted that existing solutions do not provide for absolute references that are identical to those given according to the systems and methods disclosed herein (e.g., using POC and poc_cycle). It should be noted that one or more of the described configurations of cache descriptions and syntax may be implemented in conjunction with one or more of the methods and/or solutions described herein.

图3是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法300的一个配置的流程图。电子设备204(例如解码器202)可以接收302比特流。例如,解码器202可以接收302包括编码参考画面(以及例如其他编码画面)的比特流214。在一些配置中,比特流214还可以包括开销信息(例如PPS、缓存描述信息、参数、回绕指示符、参考画面指示或标识符等)。3 is a flow chart illustrating one configuration of a method 300 for tracking reference pictures using reduced overhead referencing based on a selected picture. An electronic device 204 (e.g., a decoder 202) may receive 302 a bitstream. For example, the decoder 202 may receive 302 a bitstream 214 that includes a coded reference picture (and, for example, other coded pictures). In some configurations, the bitstream 214 may also include overhead information (e.g., PPS, buffer description information, parameters, wrap indicators, reference picture indications or identifiers, etc.).

电子设备204可以对比特流214的一部分进行解码304,以产生解码参考画面。例如,解码器202可以对比特流214的一部分进行解码304,以产生解码参考画面,该解码参考画面被存储在帧存储器264中。应当注意的是,可以对比特流214的一个或更多个部分进行解码304,以产生一个或更多个解码参考画面。The electronic device 204 may decode 304 a portion of the bitstream 214 to generate a decoded reference picture. For example, the decoder 202 may decode 304 a portion of the bitstream 214 to generate a decoded reference picture, which is stored in the frame memory 264. It should be noted that one or more portions of the bitstream 214 may be decoded 304 to generate one or more decoded reference pictures.

电子设备204可以利用减少开销参考来跟踪306解码画面缓存 (DPB)中的解码参考画面。例如,电子设备204可以将循环参数与解码参考画面进行关联,并且如果接收到回绕指示符或如果确定了画面集合之间的转换,则修改(例如递减或递增)循环参数。其他方案可以用于跟踪306解码参考画面。以下给出更多细节。应当注意的是, DPB可以包括一个或更多个解码参考画面。The electronic device 204 can utilize reduced overhead referencing to track 306 decoded reference pictures in a decoded picture buffer (DPB). For example, the electronic device 204 can associate a loop parameter with the decoded reference picture and modify (e.g., decrement or increment) the loop parameter if a wrap indicator is received or if a transition between picture sets is determined. Other schemes can be used to track 306 decoded reference pictures. More details are provided below. It should be noted that a DPB can include one or more decoded reference pictures.

电子设备204可以基于一个或更多个解码参考画面对画面进行解码308。例如,可以基于参考画面对比特流214的一部分(不是解码304 用于产生解码参考画面的部分)进行解码308。例如,可以向运动补偿模块260提供(在DPB中已经跟踪的)解码参考画面,以基于帧间预测机制生成帧间预测信号268。然后,帧间预测信号268可以用于对画面进行解码308。在一些配置或实例中,可以对一个或更多个解码参考画面进行跟踪306,并将其用于对画面进行解码308。The electronic device 204 can decode 308 a picture based on one or more decoded reference pictures. For example, a portion of the bitstream 214 (not the portion used to generate the decoded reference pictures by decoding 304) can be decoded 308 based on the reference pictures. For example, the decoded reference pictures (already tracked in the DPB) can be provided to the motion compensation module 260 to generate an inter-frame prediction signal 268 based on an inter-frame prediction mechanism. The inter-frame prediction signal 268 can then be used to decode 308 the picture. In some configurations or instances, one or more decoded reference pictures can be tracked 306 and used to decode 308 the picture.

图4是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法400的更具体配置的流程图。此方法400可以是用于当POC被重用时跟踪哪个画面正在被参考的一个方案。电子设备204(例如解码器202)可以接收402比特流214。例如,解码器202可以接收402包括编码参考画面(以及例如其他编码画面)的比特流214。在一些配置中,比特流214可以包括开销信息(例如PPS、缓存描述信息、参数、回绕指示符、参考画面指示或标识符等)。FIG4 is a flow chart illustrating a more specific configuration of a method 400 for tracking reference pictures using reduced overhead referencing based on a selected picture. This method 400 can be one approach for tracking which picture is being referenced when a POC is reused. An electronic device 204 (e.g., a decoder 202) can receive 402 a bitstream 214. For example, the decoder 202 can receive 402 a bitstream 214 that includes a coded reference picture (and, for example, other coded pictures). In some configurations, the bitstream 214 can include overhead information (e.g., PPS, buffer description information, parameters, wrap indicators, reference picture indications or identifiers, etc.).

电子设备204可以对比特流214的一部分进行解码404,以产生解码参考画面。例如,解码器202可以对比特流214的一部分进行解码404,以产生解码参考画面,该解码参考画面被存储在帧存储器264中。应当注意的是,可以对比特流214的一个或更多个部分进行解码404,以产生一个或更多个解码参考画面。The electronic device 204 may decode 404 a portion of the bitstream 214 to generate a decoded reference picture. For example, the decoder 202 may decode 404 a portion of the bitstream 214 to generate a decoded reference picture, which is stored in the frame memory 264. It should be noted that one or more portions of the bitstream 214 may be decoded 404 to generate one or more decoded reference pictures.

电子设备204可以将循环参数与包括解码参考画面的解码画面集合进行关联406。例如,电子设备204可以将循环参数“poc_cycle”与包括解码参考画面的解码画面集合进行关联406。The electronic device 204 may associate 406 a cycle parameter with a decoded picture set including the decoded reference picture. For example, the electronic device 204 may associate 406 a cycle parameter "poc_cycle" with a decoded picture set including the decoded reference picture.

可以如下定义循环参数“poc_cycle”。当固定数量的比特用于表示范围[0,…,MaxPOC-1]中的画面的POC时,存在MaxPOC个唯一整数值。如果正在编码的画面的数量超过MaxPOC,则画面编号机制必须重用已经指派的POC值。在一个示例中,POC编号然后按如下方式进行:……、[0,…,MaxPOC-1]n-2、[0,…,MaxPOC-1]n-1、[0,…,MaxPOC-1]n、 [0,…,MaxPOC-1]n+1、……。本示例中的下标表示集合[0,…,MaxPOC-1]已经被重复的次数。此下标或集合[0,…,MaxPOC-1]已经被重复的次数可以表示为MaxPOCSetIndex。例如,POC=0且MaxPOCSetIndex=n的画面表示序列中的第(n*MaxPOC+1)个画面(假定例如画面集合编号从1开始)。以下结合图5给出关于循环参数“poc_cycle”的附加细节。The cycle parameter "poc_cycle" can be defined as follows. When a fixed number of bits is used to represent the POC of a picture in the range [0, ..., MaxPOC-1], there are MaxPOC unique integer values. If the number of pictures being encoded exceeds MaxPOC, the picture numbering mechanism must reuse already assigned POC values. In one example, the POC numbering then proceeds as follows: ..., [0, ..., MaxPOC-1] n-2 , [0, ..., MaxPOC-1] n-1 , [0, ..., MaxPOC-1] n , [0, ..., MaxPOC-1] n+1 , .... The subscript in this example indicates the number of times the set [0, ..., MaxPOC-1] has been repeated. This subscript or the number of times the set [0, ..., MaxPOC-1] has been repeated can be denoted as MaxPOCSetIndex. For example, a picture with POC=0 and MaxPOCSetIndex=n represents the (n*MaxPOC+1)th picture in the sequence (assuming, for example, that picture set numbering starts at 1). Additional details on the cycle parameter "poc_cycle" are given below in conjunction with FIG.

电子设备204可以确定408是否接收到回绕指示符。例如,每当编码器108或发送电子设备A 104a达到画面集合中的画面的预定最大数量时,编码器108或发送电子设备A104a可以发送由解码器102或接收电子设备B 104b接收的回绕指示符,以指示正在发送另一画面集合(例如POC正在重置或开始另一循环)。以下结合图12给出更多细节。The electronic device 204 may determine 408 whether a wrap indicator has been received. For example, whenever the encoder 108 or the transmitting electronic device A 104a reaches a predetermined maximum number of pictures in a picture set, the encoder 108 or the transmitting electronic device A 104a may transmit a wrap indicator that is received by the decoder 102 or the receiving electronic device B 104b to indicate that another picture set is being transmitted (e.g., the POC is being reset or another cycle is starting). More details are provided below in conjunction with FIG. 12 .

如果电子设备204确定408已经接收到回绕指示符,则电子设备204 可以修改410(例如递减)循环参数。例如,电子设备204递减针对DPB 中的每个画面或每个画面集合的循环参数。在另一示例中,电子设备 204可以递增循环参数。If the electronic device 204 determines 408 that a wrap indicator has been received, the electronic device 204 may modify 410 (e.g., decrement) the loop parameter. For example, the electronic device 204 decrements the loop parameter for each picture or each picture set in the DPB. In another example, the electronic device 204 may increment the loop parameter.

电子设备204可以基于解码参考画面对画面进行解码412。例如,可以基于参考画面对比特流214的一部分(不是解码404用于产生解码参考画面的部分)进行解码412。例如,可以向运动补偿模块260提供 (在DPB中已经跟踪的)解码参考画面,以基于帧间预测机制生成帧间预测信号268。然后,帧间预测信号268可以用于对画面进行解码412。在一些配置或实例中,一个或更多个解码参考画面可以用于对画面进行解码412。The electronic device 204 can decode 412 a picture based on a decoded reference picture. For example, a portion of the bitstream 214 (not the portion used by the decoder 404 to generate the decoded reference picture) can be decoded 412 based on the reference picture. For example, the decoded reference picture (already tracked in the DPB) can be provided to the motion compensation module 260 to generate an inter-frame prediction signal 268 based on an inter-frame prediction mechanism. The inter-frame prediction signal 268 can then be used to decode 412 the picture. In some configurations or instances, one or more decoded reference pictures can be used to decode 412 the picture.

图5是示出了循环参数所参考的多个画面集合的一个示例的示意图。更具体而言,图5示出了使用循环参数基于选定画面利用减少开销参考来跟踪参考画面的示例。具体而言,图5示出了与画面集合A 507a 相关联的循环参数(例如poc_cycle=-1)、与画面集合B507b相关联的循环参数(例如poc_cycle=0)和与画面集合C 507c相关联的循环参数 (例如poc_cycle=+1)。然而,应当注意的是,画面集合A 507a可以是或可以不是帧序列中的第一画面集合。例如,一个或更多个画面集合可以在画面集合A 507a之前。此外,应当注意的是,画面集合C 507c 可以是或可以不是帧序列中的最后一个画面集合。例如,一个或更多个画面集合可以在画面集合C 507c之后。FIG5 is a diagram illustrating an example of multiple picture sets referenced by cycle parameters. More specifically, FIG5 illustrates an example of using cycle parameters to track reference pictures based on a selected picture using reduced overhead referencing. Specifically, FIG5 illustrates cycle parameters associated with picture set A 507a (e.g., poc_cycle = -1), cycle parameters associated with picture set B 507b (e.g., poc_cycle = 0), and cycle parameters associated with picture set C 507c (e.g., poc_cycle = +1). However, it should be noted that picture set A 507a may or may not be the first picture set in a frame sequence. For example, one or more picture sets may precede picture set A 507a. Furthermore, it should be noted that picture set C 507c may or may not be the last picture set in a frame sequence. For example, one or more picture sets may follow picture set C 507c.

每个画面集合507a-c可以包括一个或更多个画面501a-n、503a-n、 505a-n。在本示例中,每个画面集合507a-c包括MaxPOC个画面501、503、 505。具体而言,每个画面501、503、505可以具有相应的画面顺序计数(POC),在图5中被表示为[0,1,2,…,MaxPOC-1]。Each picture set 507a-c may include one or more pictures 501a-n, 503a-n, 505a-n. In this example, each picture set 507a-c includes MaxPOC pictures 501, 503, 505. Specifically, each picture 501, 503, 505 may have a corresponding picture order count (POC), which is represented as [0, 1, 2, ..., MaxPOC-1] in FIG5.

在一个示例中,包含当前解码画面的画面集合的poc_cycle可以被设置为0,以用于计算其他画面的poc_cycle。在一些情况下,可以乱序地对画面进行解码。例如,解码器可以看见503b,然后看见505a,然后看见503c。在本示例中,假定当前正在被解码的画面是画面集合 B 507b中POC=1的画面503b。然后可以基于当前解码画面的poc_cycle 来计算另一画面(例如参考画面)的poc_cycle。In one example, the poc_cycle of the picture set containing the currently decoded picture can be set to 0 to be used to calculate the poc_cycle of other pictures. In some cases, the pictures can be decoded out of order. For example, the decoder may see 503b, then 505a, and then 503c. In this example, it is assumed that the picture currently being decoded is picture 503b with POC=1 in picture set B 507b. The poc_cycle of another picture (e.g., a reference picture) can then be calculated based on the poc_cycle of the currently decoded picture.

图6是示出了多个画面集合的另一示例的示意图。图6包含与以上结合图5所描述的画面集合507a-c类似的画面集合607a-c。每个画面集合607a-c中可以包括一个或更多个画面601a-c、603a-n、605a-n。画面集合607a-c可以包括MaxPOC个画面。此外,每个画面601a-c、603a-n、 605a-n可以具有相应的画面顺序计数(POC),画面顺序计数属于如图 6所示的集合[0,1,2,…,MaxPOC-1]。FIG6 is a schematic diagram illustrating another example of multiple picture sets. FIG6 includes picture sets 607a-c similar to the picture sets 507a-c described above in conjunction with FIG5 . Each picture set 607a-c may include one or more pictures 601a-c, 603a-n, 605a-n. Picture sets 607a-c may include MaxPOC pictures. Furthermore, each picture 601a-c, 603a-n, 605a-n may have a corresponding picture order count (POC) belonging to the set [0, 1, 2, ..., MaxPOC-1] as shown in FIG6 .

画面集合607可以包括一个或更多个画面。例如,画面集合B 607b 中的画面603a-n可以分组为画面集合。同样,画面集合C 607c中的画面605a-n可以一起分组为画面集合。画面集合可以包括当编码时相互毗邻的画面,或可以由分组在一起的随机画面构成。在另一示例中,画面集合可以组成由画面[0,1,2,…,MaxPOC-1]构成的poc_cycle。A picture set 607 may include one or more pictures. For example, pictures 603a-n in picture set B 607b may be grouped into a picture set. Similarly, pictures 605a-n in picture set C 607c may be grouped together into a picture set. A picture set may include pictures that are adjacent to each other when encoded, or may be composed of randomly grouped pictures. In another example, a picture set may be composed of a poc_cycle consisting of pictures [0, 1, 2, ..., MaxPOC-1].

在一些配置中,画面集合607a可以包括即时解码刷新(IDR)画面603a(例如IDR访问单元)。编码器可以在比特流中信号通知IDR画面603a。附加地或备选地,可以基于画面类型来识别IDR。在一些配置中,IDR画面603a可以向解码器202指示比特流214中没有后续画面将需要参考比特流214中的先前画面。In some configurations, the picture set 607a may include an Instantaneous Decoding Refresh (IDR) picture 603a (e.g., an IDR access unit). The encoder may signal the IDR picture 603a in the bitstream. Additionally or alternatively, an IDR picture may be identified based on the picture type. In some configurations, the IDR picture 603a may indicate to the decoder 202 that no subsequent pictures in the bitstream 214 will need to reference previous pictures in the bitstream 214.

当解码器202对IDR画面603a进行解码时,可以将POC重置回预定值。例如,在对画面集合A 607a进行解码之后,接收到或信号通知IDR 画面603a。至此,可以将POC重置回0,并开始新画面集合(画面集合 B 607b)。换句话说,IDR画面603a可以关于选定画面指定参考画面。发送IDR画面603a的一个益处可以是引入新参考画面。以下将结合图7 更详细地描述此益处。When decoder 202 decodes IDR picture 603a, the POC can be reset to a predetermined value. For example, after decoding picture set A 607a, IDR picture 603a is received or signaled. At this point, the POC can be reset to 0 and a new picture set (picture set B 607b) can be started. In other words, IDR picture 603a can specify a reference picture with respect to a selected picture. One benefit of transmitting IDR picture 603a can be the introduction of a new reference picture. This benefit is described in more detail below in conjunction with FIG. 7 .

图7是示出了循环参数所参考的多个画面集合的更具体的示例的示意图。图7示出了画面集合707a-d和画面701、703、705以及它们相关联的POC和poc_cycle,画面集合707a-d和画面701、703、705与以上结合图5所描述的组成部分507a-c、501、503、505类似。附加地,图7 示出了附加画面集合707d以及相关联的画面731a-n。FIG7 is a diagram illustrating a more specific example of multiple picture sets referenced by a cycle parameter. FIG7 illustrates picture sets 707a-d and pictures 701, 703, 705, and their associated POCs and poc_cycles. Picture sets 707a-d and pictures 701, 703, 705 are similar to components 507a-c, 501, 503, 505 described above in conjunction with FIG5 . Additionally, FIG7 illustrates an additional picture set 707d and associated pictures 731a-n.

图7还示出了选定画面703a。在一个配置中,针对选定画面的循环参数(例如poc_cycle)可以设置为0。例如,当画面集合中的第一画面(例如POC=0)是选定画面(例如IDR画面)时,则针对选定画面的poc_cycle可以等于0。可以参照循环参数被设置为0(例如 poc_cycle=0)的画面集合来计算后续画面集合的循环参数(例如 poc_cycle)。7 also shows a selected picture 703a. In one configuration, a cycle parameter (e.g., poc_cycle) for the selected picture may be set to 0. For example, when the first picture in a picture set (e.g., POC=0) is a selected picture (e.g., an IDR picture), then the poc_cycle for the selected picture may be equal to 0. Cycle parameters (e.g., poc_cycle) for subsequent picture sets may be calculated with reference to the picture set whose cycle parameter is set to 0 (e.g., poc_cycle=0).

选定画面的一个示例是与以上结合图6所描述的IDR画面603a相类似的IDR画面703a(例如IDR访问单元)。为了方便,选定画面703a 将被描述为IDR画面。然而,应当注意的是,选定画面703a可以是编码器利用比特流中的信令指示的或可以由解码器隐式地确定的任意画面。An example of a selected picture is an IDR picture 703a (e.g., an IDR access unit) similar to the IDR picture 603a described above in conjunction with FIG6 . For convenience, the selected picture 703a will be described as an IDR picture. However, it should be noted that the selected picture 703a can be any picture indicated by the encoder using signaling in the bitstream or can be implicitly determined by the decoder.

在一些配置中,编码器可以在比特流中发送指示IDR画面703a的信号。可以基于此信号确定POC计数器的值。例如,信号可以(向解码器)指示将针对IDR画面的POC设置为0(如果例如针对IDR画面的 POC不为0的话)。例如,IDR画面703a可以使解码器将POC计数器重置为初始值,例如0。poc_cycle还可以基于IDR画面703a。类似于POC,信号可以指示应当将poc_cycle重置为初始值。在另一示例中,信号可以指示不需要对POC或poc_cycle进行修改(如果针对IDR画面703a的 POC或poc_cycle处于初始值的话)。In some configurations, the encoder may send a signal in the bitstream indicating an IDR picture 703a. The value of the POC counter may be determined based on this signal. For example, the signal may indicate (to the decoder) that the POC for the IDR picture is set to 0 (if, for example, the POC for the IDR picture is not 0). For example, the IDR picture 703a may cause the decoder to reset the POC counter to an initial value, such as 0. The poc_cycle may also be based on the IDR picture 703a. Similar to the POC, the signal may indicate that the poc_cycle should be reset to the initial value. In another example, the signal may indicate that the POC or poc_cycle does not need to be modified (if the POC or poc_cycle for the IDR picture 703a is at the initial value).

IDR画面703a可以是用于设置或重置可以用于关于选定画面703a 跟踪参考画面的POC和poc_cycle(和/或例如其他循环参数)的指示。例如,解码器202可以对集合A 707a中的画面701a-c进行解码。画面集合A 707a可以具有与之相关联的循环参数poc_cycle=m。然后可以通过比特流214信号通知IDR画面703a。IDR画面703a可以指示新循环参数 (例如poc_cycle=0),并可以指示POC=0。然后,可以对画面集合707b-d 进行解码,并且可以从初始值递增它们相关联的循环参数(例如分别为poc_cycle=0、poc_cycle=+1、poc_cycle=+2)。在本示例中,参照新设置的循环参数和POC来计算后续画面集合707b-d。IDR picture 703a may be used to set or reset the POC and poc_cycle (and/or other cycle parameters, for example) that can be used to track reference pictures with respect to selected picture 703a. For example, decoder 202 may decode pictures 701a-c in set A 707a. Picture set A 707a may have cycle parameters associated with it, poc_cycle=m. IDR picture 703a may then be signaled via bitstream 214. IDR picture 703a may indicate new cycle parameters (e.g., poc_cycle=0) and may indicate POC=0. Picture sets 707b-d may then be decoded, and their associated cycle parameters may be incremented from their initial values (e.g., poc_cycle=0, poc_cycle=+1, poc_cycle=+2, respectively). In this example, subsequent picture sets 707b-d are calculated with reference to the newly set cycle parameters and POC.

如上所述,IDR画面703a可以向解码器202指示比特流中没有后续画面将需要参考比特流214中的画面之前的画面。然而,IDR画面703a 可以仅信号通知POC或循环参数的重置。例如,画面集合A可以具有循环参数poc_cycle=m,其中m=+5。当接收到IDR画面703a时,m可以改变为m=-1。因此,IDR画面703a可以关于选定画面来对参考画面进行poc_cycle计数。换句话说,IDR画面703a可以信号通知poc_cycle计数,以关于序列中的选定画面而不仅是当前画面来计算参考画面。As described above, IDR picture 703a can indicate to decoder 202 that no subsequent pictures in the bitstream will need to reference pictures before the picture in bitstream 214. However, IDR picture 703a can only signal a reset of the POC or cycle parameter. For example, picture set A can have a cycle parameter poc_cycle=m, where m=+5. When IDR picture 703a is received, m can be changed to m=-1. Therefore, IDR picture 703a can count the poc_cycle of reference pictures with respect to a selected picture. In other words, IDR picture 703a can signal a poc_cycle count to calculate reference pictures with respect to selected pictures in the sequence, not just the current picture.

图8是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法800的一个配置的流程图。电子设备204(例如解码器202)可以接收802比特流,并对比特流214的一部分进行解码804,以产生解码参考画面。这可以以与以上结合图3所描述的类似方式进行。FIG8 is a flow chart illustrating one configuration of a method 800 for tracking a reference picture using reduced overhead referencing based on a selected picture. An electronic device 204 (e.g., decoder 202) may receive 802 a bitstream and decode 804 a portion of the bitstream 214 to generate a decoded reference picture. This may be performed in a manner similar to that described above in conjunction with FIG3 .

电子设备204可以基于选定画面利用减少开销参考来跟踪解码画面缓存(DPB)中的解码参考画面。这可以按以下方式完成。电子设备204(例如解码器202)可以确定806选定画面。在一个配置中,电子设备204可以基于在比特流214中所接收的显式信令来作出此确定806。例如,比特流214可以包括对选定画面进行指定的指示符。在一个示例中,选定画面可以是由在比特流214中接收的(例如画面参数集合 (PPS)、缓存描述中等的)信令所指示的即时解码刷新(IDR)画面。The electronic device 204 may utilize reduced overhead referencing to track decoded reference pictures in a decoded picture buffer (DPB) based on the selected picture. This may be accomplished as follows. The electronic device 204 (e.g., the decoder 202) may determine 806 the selected picture. In one configuration, the electronic device 204 may make this determination 806 based on explicit signaling received in the bitstream 214. For example, the bitstream 214 may include an indicator designating the selected picture. In one example, the selected picture may be an Instantaneous Decoding Refresh (IDR) picture indicated by signaling received in the bitstream 214 (e.g., a Picture Parameter Set (PPS), a buffer description, etc.).

电子设备204可以基于选定画面来确定808画面顺序计数(POC)。例如,电子设备204可以设置或重置与选定画面相关联的POC。例如,与选定画面相关联的POC可以被设置为0。相应地,电子设备204可以基于选定画面来重置POC顺序。例如,可以基于与如图6所示的选定画面603a相关联的POC来对针对其他画面的POC进行编号。The electronic device 204 may determine 808 a picture order count (POC) based on the selected picture. For example, the electronic device 204 may set or reset the POC associated with the selected picture. For example, the POC associated with the selected picture may be set to 0. Accordingly, the electronic device 204 may reset the POC order based on the selected picture. For example, the POCs for other pictures may be numbered based on the POC associated with the selected picture 603a as shown in FIG.

电子设备204可以基于选定画面来确定810循环参数(例如 poc_cycle)。例如,与包括选定画面的画面集合相关联的循环参数可以被设置或重置为0。可以基于包括选定画面(例如IDR画面)的画面集合来确定(例如计算)针对其他画面集合的循环参数。结合图7示出并描述其一个示例。The electronic device 204 may determine 810 a cycle parameter (e.g., poc_cycle) based on the selected picture. For example, the cycle parameter associated with the picture set including the selected picture may be set or reset to 0. Cycle parameters for other picture sets may be determined (e.g., calculated) based on the picture set including the selected picture (e.g., an IDR picture). An example of this is shown and described in conjunction with FIG7 .

当基于选定画面来确定POC和循环参数(例如poc_cycle)时,可以在需要时更新解码参考画面的POC和循环参数。这能够实现解码画面缓存(DPB)中解码参考画面的跟踪。因此,可以基于选定画面(例如IDR画面)来跟踪解码参考画面。When the POC and cycle parameters (e.g., poc_cycle) are determined based on a selected picture, the POC and cycle parameters of the decoded reference pictures can be updated when needed. This enables tracking of decoded reference pictures in the decoded picture buffer (DPB). Therefore, decoded reference pictures can be tracked based on a selected picture (e.g., an IDR picture).

电子设备204可以从DPB获得812解码参考画面。例如,电子设备 204可以根据基于选定画面的POC和循环参数(例如poc_cycle)从DPB 取回解码参考画面。The electronic device 204 may obtain 812 a decoded reference picture from the DPB. For example, the electronic device 204 may retrieve the decoded reference picture from the DPB based on the POC and a cycle parameter (e.g., poc_cycle) based on the selected picture.

电子设备204可以基于解码参考画面来对画面进行解码814。这可以以与以上结合图3所描述的类似方式进行。应当注意的是,可以根据方法800跟踪具有一个或更多个解码参考画面的集合。The electronic device 204 may decode the picture based on the decoded reference picture 814. This may be done in a similar manner as described above in conjunction with FIG3. It should be noted that a set of one or more decoded reference pictures may be tracked according to the method 800.

图9是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法900的另一配置的流程图。如上所述,电子设备204可以接收 902比特流。电子设备204还可以对比特流的一个或更多个部分进行解码904,以产生参考画面集合。解码参考画面集合可以包括一个或更多个解码参考画面。FIG9 is a flow chart illustrating another configuration of a method 900 for tracking reference pictures using reduced overhead referencing based on a selected picture. As described above, the electronic device 204 may receive 902 a bitstream. The electronic device 204 may also decode 904 one or more portions of the bitstream to generate a reference picture set. The decoded reference picture set may include one or more decoded reference pictures.

电子设备204可以基于选定画面利用减少开销参考来跟踪906解码画面缓存(DPB)中的解码参考画面集合。这可以如上文结合图8所描述的来完成。如上所述,解码参考画面集合中的两个或更多个解码参考画面可以涉及相同或不同时刻(例如类似时刻)。The electronic device 204 may track 906 a decoded reference picture set in a decoded picture buffer (DPB) using reduced overhead referencing based on the selected picture. This may be done as described above in conjunction with FIG8. As described above, two or more decoded reference pictures in a decoded reference picture set may relate to the same or different time instants (e.g., similar time instants).

电子设备204可以可选择地确定908解码参考画面集合中的(用于对画面进行解码的)解码参考画面的分辨率是否与当前画面的分辨率不同。如果两个画面之间的分辨率不同,则电子设备204可以基于缩放参数来处理910解码参考画面的变换系数,以对画面进行解码。以上结合表格(2)给出了与缩放参数和分辨率切换有关的更详细描述。应当注意的是,缩放参数可以通过显式地接收缩放参数来确定或通过隐式地(例如使用查找表、画面分辨率特性等)确定缩放参数来确定。The electronic device 204 may optionally determine 908 whether a resolution of a decoded reference picture (used for decoding the picture) in the decoded reference picture set is different from a resolution of the current picture. If the resolutions between the two pictures are different, the electronic device 204 may process 910 transform coefficients of the decoded reference picture based on the scaling parameter to decode the picture. A more detailed description of scaling parameters and resolution switching is provided above in conjunction with Table (2). It should be noted that the scaling parameter can be determined by explicitly receiving the scaling parameter or by implicitly determining the scaling parameter (e.g., using a lookup table, picture resolution characteristics, etc.).

无论分辨率是相同的还是不同的,电子设备204可以基于解码参考画面集合(例如解码参考画面集合中的解码参考画面)对画面进行解码912。Regardless of whether the resolutions are the same or different, the electronic device 204 may decode 912 a picture based on a decoded reference picture set (eg, a decoded reference picture in a decoded reference picture set).

图10是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法1000的另一配置的流程图。电子设备204可以接收1002比特流,并对比特流的一部分进行解码1004以产生解码参考画面。电子设备204可以基于选定画面利用减少开销参考来跟踪1006解码画面缓存 (DPB)中的解码参考画面。这可以按上文完成。FIG10 is a flow chart illustrating another configuration of a method 1000 for tracking a reference picture using reduced overhead referencing based on a selected picture. An electronic device 204 may receive 1002 a bitstream and decode 1004 a portion of the bitstream to generate a decoded reference picture. The electronic device 204 may track 1006 a decoded reference picture in a decoded picture buffer (DPB) using reduced overhead referencing based on the selected picture. This may be accomplished as described above.

电子设备204还可以获得1008缓存描述。以上详细描述了缓存描述的一些示例。例如,以上表格(1)和表格(2)包含多种缓存描述的示例。解码器可以作为参数画面集合(PPS)的一部分,从编码器接收缓存描述。解码器还可以作为片首部的一部分,接收对合适缓存描述的索引。一旦获得1008缓存描述,电子设备204就可以确定1010是否修改缓存描述。如果缓存描述不需要修改,则电子设备204可以基于解码参考画面对画面进行解码1014。然而,如果缓存描述需要修改,则电子设备204可以修改1012一个或更多个条目。修改1012的示例可以包括:删除条目、添加条目或替换条目。可以在上文结合列表(4)的描述中找到删除、添加或替换条目的更详细的描述。一旦修改1012完成,则电子设备204就可以基于解码参考画面对画面进行解码1014。The electronic device 204 may also obtain 1008 a cache description. Some examples of cache descriptions are described in detail above. For example, Table (1) and Table (2) above contain examples of various cache descriptions. The decoder may receive the cache description from the encoder as part of a parameter picture set (PPS). The decoder may also receive an index to an appropriate cache description as part of a slice header. Once the cache description is obtained 1008, the electronic device 204 may determine 1010 whether to modify the cache description. If the cache description does not need to be modified, the electronic device 204 may decode the picture based on the decoded reference picture 1014. However, if the cache description needs to be modified, the electronic device 204 may modify 1012 one or more entries. Examples of modification 1012 may include: deleting an entry, adding an entry, or replacing an entry. A more detailed description of deleting, adding, or replacing entries can be found above in conjunction with the description of List (4). Once the modification 1012 is completed, the electronic device 204 may decode the picture based on the decoded reference picture 1014.

图11是示出了根据本文所公开的系统和方法信号通知回绕指示符的一个示例的示意图。在本示例中,示出了多个画面1101a-n、1103a。 POC=0的第一画面1101a是针对图11所示的剩余画面1101b-n、1103a的参考画面。具体而言,图11示出了参考画面1101a与其他画面1101b-n、 1103a之间的关联或对应关系1109。例如,POC=0的画面1101a可以是要保存在DPB中用于对其他画面1101b-n、1103a进行解码的长期参考画面1101a。FIG11 is a diagram illustrating an example of signaling a wrap indicator according to the systems and methods disclosed herein. In this example, multiple pictures 1101a-n, 1103a are shown. The first picture 1101a with POC=0 is a reference picture for the remaining pictures 1101b-n, 1103a shown in FIG11 . Specifically, FIG11 illustrates an association or correspondence 1109 between the reference picture 1101a and the other pictures 1101b-n, 1103a. For example, the picture 1101a with POC=0 may be a long-term reference picture 1101a to be stored in the DPB for decoding of the other pictures 1101b-n, 1103a.

如图11所示,POC号0至MaxPOC-1以及重用的0可以分别对应于画面1101a-n、1103a。第一画面集合1101a-n可以对应于POC号0至 MaxPOC-1。如上所述,(具有POC号0至MaxPOC-1的)每个画面集合可以对应于循环参数(例如poc_cycle)。As shown in FIG11 , POC numbers 0 to MaxPOC-1 and reuse 0 may correspond to pictures 1101a-n and 1103a, respectively. The first picture set 1101a-n may correspond to POC numbers 0 to MaxPOC-1. As described above, each picture set (having POC numbers 0 to MaxPOC-1) may correspond to a cycle parameter (e.g., poc_cycle).

在一个配置中,可以在一个画面集合和后续画面集合之间的第一转换时信号通知1133回绕指示符。例如,POC编号第一次从一个 [0,…,MaxPOC-1]集合转换到下一集合时,可以信号通知1133回绕指示符。在一些配置中,信号通知的回绕指示符可以是表示为“poc_wraparound”的受保护消息。如本文所使用的“信号通知”可以意味着在编码器和解码器之间传送。在一些配置中,“信号通知”还可以意味着在不同电子设备之间传送。In one configuration, a wrap indicator may be signaled 1133 upon the first transition between one picture set and a subsequent picture set. For example, the wrap indicator may be signaled 1133 upon the first transition of the POC number from one set [0, ..., MaxPOC-1] to the next. In some configurations, the signaled wrap indicator may be a protected message denoted as "poc_wraparound." As used herein, "signaling" may mean transmitting between an encoder and a decoder. In some configurations, "signaling" may also mean transmitting between different electronic devices.

受保护消息可以是电子设备204必须接收以维持期望功能(例如丢失画面的检测)的消息。用于发送作为受保护消息的消息的一种机制是当与其他信息消息进行比较时,向受保护消息指派较高优先级。然后,智能设备(例如网络拥塞控制代理)可以检查此优先级指派,并丢弃较低优先级消息以满足诸如可用网络带宽等的约束。Protected messages can be messages that the electronic device 204 must receive to maintain desired functionality (e.g., detection of lost images). One mechanism for sending messages as protected messages is to assign a higher priority to protected messages when compared to other information messages. An intelligent device (e.g., a network congestion control agent) can then examine this priority assignment and discard lower priority messages to meet constraints such as available network bandwidth.

在一些配置中,可以在画面参数集合(PPS)、片首部、自适应参数集合(APS)或比特流中任意合适位置中信号通知回绕指示符(例如poc_wraparound)消息。附加地或备选地,可以在带外(例如与画面比特流分离地)信号通知回绕指示符。每当解码器102接收到回绕指示符(例如poc_wraparound消息)时,针对DPB中的每个画面(例如每个画面集合)的循环参数(例如poc_cycle)可以递减(例如递减1)。In some configurations, a wrap indicator (e.g., poc_wraparound) message may be signaled in a picture parameter set (PPS), a slice header, an adaptation parameter set (APS), or any suitable location in the bitstream. Additionally or alternatively, the wrap indicator may be signaled out-of-band (e.g., separately from the picture bitstream). Whenever the decoder 102 receives a wrap indicator (e.g., poc_wraparound message), a cycle parameter (e.g., poc_cycle) for each picture (e.g., each picture set) in the DPB may be decremented (e.g., decremented by 1).

图12是示出了根据本文所公开的系统和方法信号通知回绕指示符 1133的一个示例的示意图。在本示例中,阐述了多个画面1137a-n、 1139a-n、1141a-n、1143a-n、1145a-n和画面集合1107a-e。具体而言,图12示出了随时间的参考缓存状态1135以及相应的当前帧和回绕指示符的定时1149。FIG12 is a diagram illustrating an example of signaling a wrap indicator 1133 according to the systems and methods disclosed herein. In this example, a plurality of pictures 1137a-n, 1139a-n, 1141a-n, 1143a-n, 1145a-n and picture sets 1107a-e are illustrated. Specifically, FIG12 illustrates the reference buffer status 1135 over time, along with the corresponding current frame and the timing 1149 of the wrap indicator.

在本示例中,假定poc_cycle=0的画面集合B 1107b中的画面B0 1139a是第一时刻的当前画面或帧。当转换A 1147a发生时,信号通知 1133a回绕指示符。在第二时刻,画面集合C 1107c中的画面C0 1141a 是当前画面或帧。假定画面C0 1141a是针对(例如画面集合D1107d和画面集合E1107e中的)所有后续画面的参考画面。例如,画面C0 1141a 是要保存在DPB中以用于对后续画面1141b-n、1143a-n、1l45a-n进行解码的长期参考画面。当转换B1147b发生时,信号通知1133b另一回绕指示符。如所述的,在信号通知1133回绕指示符时,更新poc_cycle 参数。根据本文所公开的系统和方法,此过程可以用于跟踪参考画面。此外,应当注意的是,可以如本文所描述的基于解码参考画面来重置或重新开始POC和poc_cycle。In this example, it is assumed that picture B0 1139a in picture set B 1107b with poc_cycle = 0 is the current picture or frame at a first moment in time. When transition A 1147a occurs, a wrap indicator is signaled 1133a. At a second moment in time, picture C0 1141a in picture set C 1107c is the current picture or frame. It is assumed that picture C0 1141a is a reference picture for all subsequent pictures (e.g., in picture set D 1107d and picture set E 1107e). For example, picture C0 1141a is a long-term reference picture to be stored in the DPB for use in decoding subsequent pictures 1141b-n, 1143a-n, and 1145a-n. When transition B 1147b occurs, another wrap indicator is signaled 1133b. As described, the poc_cycle parameter is updated when the wrap indicator is signaled 1133. This process may be used to track reference pictures according to the systems and methods disclosed herein. Additionally, it should be noted that the POC and poc_cycle may be reset or restarted based on a decoded reference picture as described herein.

如图12所述,POC号0至MaxPOC-1重复地对应于画面1137a-n、 1139a-n、1141a-n、1143a-n、1145a-n。如上所述,(具有POC号0至 MaxPOC-1的)每个画面集合1107a-e可以对应于循环参数(例如 poc_cycle)。12 , POC numbers 0 to MaxPOC-1 repeatedly correspond to pictures 1137a-n, 1139a-n, 1141a-n, 1143a-n, 1145a-n. As described above, each picture set 1107a-e (having POC numbers 0 to MaxPOC-1) may correspond to a cycle parameter (e.g., poc_cycle).

在一个配置中,可以在当前画面集合(例如画面集合B 1107b)与后续画面集合(例如画面集合C 1107c)之间的第一转换1147a时信号通知1133a回绕指示符。例如,POC号第一次从一个[0,…,MaxPOC-1]集合转换到下一集合时,可以信号通知1133回绕指示符。在一些配置中,当POC编号从一个[0,…,MaxPOC-1]集合转换到另一集合时,可以信号通知1133回绕指示符。备选地,poc_cycle编号第一次针对下一 [0,…,MaxPOC-1]画面集合转换时,可以信号通知1133回绕指示符。在一些配置中,当poc_cycle编号针对下一个[0,…,MaxPOC-1]画面集合转换时,可以信号通知1133回绕指示符。在一些配置中,信号通知的回绕指示符可以是表示为“poc_wraparound”的受保护消息。如本文所使用的“信号通知”可以意味着在编码器和解码器之间传送。在一些配置中,“信号通知”还可以意味着在不同电子设备之间传送。In one configuration, a wrap indicator may be signaled 1133a upon the first transition 1147a between a current picture set (e.g., picture set B 1107b) and a subsequent picture set (e.g., picture set C 1107c). For example, the wrap indicator may be signaled 1133 the first time a POC number transitions from one set [0, ..., MaxPOC-1] to the next. In some configurations, the wrap indicator may be signaled 1133 when a POC number transitions from one set [0, ..., MaxPOC-1] to another. Alternatively, the wrap indicator may be signaled 1133 the first time a poc_cycle number transitions for the next set [0, ..., MaxPOC-1]. In some configurations, the wrap indicator may be signaled 1133 when a poc_cycle number transitions for the next set [0, ..., MaxPOC-1]. In some configurations, the wrap indicator may be signaled 1133 when a poc_cycle number transitions for the next set [0, ..., MaxPOC-1]. In some configurations, the signaled wrap indicator may be a protected message denoted as "poc_wraparound." As used herein, "signaling" may mean transmitting between an encoder and a decoder. In some configurations, "signaling" may also mean transmitting between different electronic devices.

受保护消息可以是电子设备204必须接收以保持期望功能(例如丢失画面的检测)的消息。用于发送作为受保护消息的消息的一种机制是当与其他信息消息进行比较时,向受保护消息指派较高优先级。然后,智能设备(例如网络拥塞控制代理)可以检查此优先级指派,并丢弃较低优先级消息以满足诸如可用网络带宽等的约束。Protected messages can be messages that the electronic device 204 must receive to maintain desired functionality (e.g., detection of lost images). One mechanism for sending messages as protected messages is to assign a higher priority to protected messages when compared to other information messages. An intelligent device (e.g., a network congestion control agent) can then examine this priority assignment and discard lower priority messages to meet constraints such as available network bandwidth.

在一些配置中,可以在画面参数集合(PPS)、片首部、自适应参数集合(APS)或比特流中任意合适位置中信号通知回绕指示符(例如poc_wraparound)消息。附加地或备选地,可以在带外(例如与画面比特流分离地)信号通知回绕指示符。每当解码器102接收到回绕指示符(例如poc_wraparound消息)时,针对DPB中的每个画面(例如每个画面集合)的循环参数(例如poc_cycle)可以递减(例如递减1)。In some configurations, a wrap indicator (e.g., poc_wraparound) message may be signaled in a picture parameter set (PPS), a slice header, an adaptation parameter set (APS), or any suitable location in the bitstream. Additionally or alternatively, the wrap indicator may be signaled out-of-band (e.g., separately from the picture bitstream). Whenever the decoder 102 receives a wrap indicator (e.g., poc_wraparound message), a cycle parameter (e.g., poc_cycle) for each picture (e.g., each picture set) in the DPB may be decremented (e.g., decremented by 1).

以下列表(5)阐述了用于信号通知画面参数集合中的回绕指示符所需的比特流句法修改的一个示例:The following Listing (5) illustrates an example of the bitstream syntax modifications required to signal the wrap indicator in the picture parameter set:

列表(5)List (5)

wrap_indicator_flag等于1指定POC编号已经第一次从一个 [0,…,MaxPOC-1]画面集合转换到下一画面集合。wrap_indicator_flag 等于0指定除此之外的其他情况。在一些配置中,wrap_indicator_flag 等于1指定POC编号从一个[0,…,MaxPOC-1]画面集合转换到另一画面集合。wrap_indicator_flag等于0指定除此之外的其他情况。wrap_indicator_flag equal to 1 specifies that the POC number has transitioned from one [0, ..., MaxPOC-1] picture set to the next picture set for the first time. wrap_indicator_flag equal to 0 specifies otherwise. In some configurations, wrap_indicator_flag equal to 1 specifies that the POC number has transitioned from one [0, ..., MaxPOC-1] picture set to another picture set. wrap_indicator_flag equal to 0 specifies otherwise.

在一些配置中,wrap_indicator_flag等于1指定poc_cycle已经第一次针对下一[0,…,MaxPOC-1]画面集合转换。wrap_indicator_flag等于0 指定除此之外的其他情况。In some configurations, wrap_indicator_flag equal to 1 specifies that the poc_cycle has been switched for the first time for the next [0, ..., MaxPOC-1] picture set. wrap_indicator_flag equal to 0 specifies otherwise.

在一些配置中,wrap_indicator_flag等于1指定poc_cycle已经从一个[0,…,MaxPOC-1]画面集合转换到另一画面集合。 wrap_indicator_flag等于0指定除此之外的其他情况。In some configurations, wrap_indicator_flag equal to 1 specifies that the poc_cycle has transitioned from one [0, ..., MaxPOC-1] picture set to another picture set. wrap_indicator_flag equal to 0 specifies otherwise.

在一些配置中,wrap_indicator_flag可以使用多于一个比特来标识附加信息,例如,转换的方向。在另一配置中,可以信号通知 wrap_indicator_flag作为使用熵编码进行可变长度编码的无符号整数。在另一配置中,wrap_indicator_flag是使用熵编码进行可变长度编码的有符号整数。In some configurations, wrap_indicator_flag may use more than one bit to indicate additional information, such as the direction of the conversion. In another configuration, wrap_indicator_flag may be signaled as an unsigned integer that is variable-length encoded using entropy coding. In another configuration, wrap_indicator_flag is a signed integer that is variable-length encoded using entropy coding.

seq_parameter_set_id标识由画面参数集合引用的序列参数集合。 seq_parameter_set_id的值应当在0至31的范围中(包含端点)。seq_parameter_set_id identifies the sequence parameter set referenced by the picture parameter set.The value of seq_parameter_set_id should be in the range of 0 to 31 (inclusive).

pic_parameter_set_id标识在片首部中引用的画面参数集合。 pic_parameter_set_id的值应当在0至255的范围中(包含端点)。 entropy_coding_mode_flag选择要应用于句法要素的熵解码方法。pic_parameter_set_id identifies the picture parameter set referenced in the slice header.The value of pic_parameter_set_id shall be in the range of 0 to 255 (inclusive). entropy_coding_mode_flag selects the entropy decoding method to be applied to the syntax element.

num_temporal_layer_switching_point_flags指定存在多少时间切换点标记。如果temporal_id_nesting_flag等于1,则 num_temporal_layer_switching_point_flags应当等于0。num_temporal_layer_switching_point_flags specifies how many temporal switching point markers there are. If temporal_id_nesting_flag is equal to 1, then num_temporal_layer_switching_point_flags shall be equal to 0.

temporal_layer_switching_point_flag[i]指定当前访问点是否是允许在此访问单元之后的更高时间id层的解码的时间切换点。如果 temporal_id_nesting_flag等于1,则应当推断 temporal_layer_switching_point_flag[i]等于1。如果 temporal_id_nesting_flag等于0并且 num_temporal_layer_switching_point_flags小于i,则应当推断 temporal_layer_switching_point_flag[i]等于0。应当注意的是,当开始对更高时间层i进行解码时,可以紧跟在IDR或temporal_id值j小于i并且 temporal_switching_flag[j]等于1的画面之后确保所需参考画面的可用性。temporal_layer_switching_point_flag[i] specifies whether the current access point is a temporal switching point that allows decoding of higher temporal_id layers following this access unit. If temporal_id_nesting_flag is equal to 1, then temporal_layer_switching_point_flag[i] shall be inferred to be equal to 1. If temporal_id_nesting_flag is equal to 0 and num_temporal_layer_switching_point_flags is less than i, then temporal_layer_switching_point_flag[i] shall be inferred to be equal to 0. It should be noted that when starting decoding of a higher temporal layer i, the availability of the required reference picture can be ensured immediately following an IDR or a picture with temporal_id value j less than i and temporal_switching_flag[j] equal to 1.

num_ref_idx_10_default_active_minus1指定针对 num_ref_idx_active_override_flag等于0的P片和B片,如何推断 num_ref_idx_10_active_minus1。num_ref_idx_10_default_active_minus1 的值应当在0至31的范围中(包含端点)。num_ref_idx_10_default_active_minus1 specifies how num_ref_idx_10_active_minus1 is inferred for P slices and B slices with num_ref_idx_active_override_flag equal to 0. The value of num_ref_idx_10_default_active_minus1 should be in the range of 0 to 31, inclusive.

num_ref_idx_11_default_active_minus1指定针对 num_ref_idx_active_override_flag等于0的B片,如何推断 num_ref_idx_11_active_minus1。num_ref_idx_11_default_active_minus1 的值应当在0至31的范围中(包含端点)。num_ref_idx_11_default_active_minus1 specifies how num_ref_idx_11_active_minus1 is inferred for B slices with num_ref_idx_active_override_flag equal to 0. The value of num_ref_idx_11_default_active_minus1 should be in the range of 0 to 31 (inclusive).

pic_init_qp_minus26指定针对每个片,SliceQPY的初始值减去26。当对slice_qp_delta的非零值进行解码时,在片层处修改初始值,并且当在编码单元层处对cu_qp_delta的非零值进行解码时,进一步修改初始值。pic_init_qp_minus26的值应当在-(26+QpBdOffsetY)至+25的范围中(包含端点)。pic_init_qp_minus26 specifies that for each slice, the initial value of SliceQPY is subtracted by 26. The initial value is modified at the slice layer when a non-zero value of slice_qp_delta is decoded, and further modified when a non-zero value of cu_qp_delta is decoded at the coding unit layer. The value of pic_init_qp_minus26 should be in the range of -(26+QpBdOffsetY) to +25, inclusive.

constrained_intra_pred_flag等于0指定帧内预测允许使用利用帧间宏块预测模式进行编码的相邻宏块的残差数据和解码采样,用于使用帧内宏块预测模式进行编码的宏块的预测。constrained_intra_pred_flag 等于1指定受限帧内预测,在此情况下,使用帧内宏块预测模式进行编码的宏块的预测仅使用来自I宏块类型的残差数据和解码采样。constrained_intra_pred_flag equal to 0 specifies that intra prediction is allowed to use residual data and decoded samples from neighboring macroblocks coded using inter macroblock prediction mode for prediction of macroblocks coded using intra macroblock prediction mode. constrained_intra_pred_flag equal to 1 specifies constrained intra prediction, in which case prediction of macroblocks coded using intra macroblock prediction mode uses only residual data and decoded samples from I macroblock type.

slice_granularity指示画面中的片粒度。slice_granularity的值不应大于Min(Log2MaxCUSize-4,log2_diff_max_min_coding_block_size)。变量SliceGranularity设置为(slice_granularity<<1)的值。slice_granularity indicates the slice granularity in the picture. The value of slice_granularity should not be greater than Min(Log2MaxCUSize-4, log2_diff_max_min_coding_block_size). The variable SliceGranularity is set to the value of (slice_granularity<<1).

shared_pps_info_enabled_flag指定画面参数集合RBSP中的共享信息应当用于已参考的片。如果shared_pps_info_enabled_flag等于1,则画面参数集合RBSP中的alf_param()应当应用于已参考的片。否则,应当应用片首部中的alf_param()。shared_pps_info_enabled_flag specifies that the shared information in the picture parameter set RBSP should be used for the referenced slice. If shared_pps_info_enabled_flag is equal to 1, the alf_param() in the picture parameter set RBSP should be applied to the referenced slice. Otherwise, the alf_param() in the slice header should be applied.

max_cu_qp_delta_depth指定用于为编码单元指定QPY值的最大允许深度。max_cu_qp_delta_depth的值应当在0至15的范围中(包含端点)。max_cu_qp_delta_depth specifies the maximum allowed depth for specifying QPY values for a coding unit. The value of max_cu_qp_delta_depth should be in the range of 0 to 15, inclusive.

变量log2MinCUDQPSize按下式指定可以进一步修改QPY值的最小编码单元大小:log2MinCUDQPSize=Log2MaxCUSize- max_cu_qp_delta_depth。alf_param()是确定自适应环路滤波器参数句法的函数。rbsp_trailing_bits()是对应于停止比特(等于1)后接零比特直到实现字节对齐的函数。The variable log2MinCUDQPSize specifies the minimum coding unit size that can further modify the QPY value as follows: log2MinCUDQPSize = Log2MaxCUSize - max_cu_qp_delta_depth. alf_param() is a function that determines the syntax of the adaptive loop filter parameters. rbsp_trailing_bits() is a function that corresponds to a stop bit (equal to 1) followed by zero bits until byte alignment is achieved.

以下列表(6)阐述了用于信号通知片首部中的回绕指示符所需的比特流句法修改的一个示例:The following listing (6) illustrates an example of the bitstream syntax modifications required to signal the wrap indicator in the slice header:

列表(6)List (6)

lightweight_slice_flag等于1指定应当推断未出现的片首部句法要素的值等于前一片中的片首部句法要素的值。lightweight_slice_flag等于0指定在当前片首部中发送片首部句法要素的值。slice_type指定片 P、B或I的编码类型。lightweight_slice_flag equal to 1 specifies that the value of an absent slice header syntax element should be inferred to be equal to the value of the slice header syntax element in the previous slice. lightweight_slice_flag equal to 0 specifies that the value of the slice header syntax element is sent in the current slice header. slice_type specifies the coding type of the slice, P, B, or I.

idr_pic_id标识即时解码刷新(IDR)画面。IDR画面的所有片中的idr_pic_id值应当保持不变。当解码顺序中的两个连续访问单元都是 IDR访问单元时,第一个这种IDR访问单元的片中的idr_pic_id值应当与第二个这种IDR访问单元中的idr_pic_id值不同。idr_pic_id的值应当在0至65535的范围中(包含端点)。idr_pic_id identifies an Instantaneous Decoding Refresh (IDR) picture. The value of idr_pic_id shall remain constant in all slices of an IDR picture. When two consecutive access units in decoding order are both IDR access units, the value of idr_pic_id in the slices of the first such IDR access unit shall be different from the value of idr_pic_id in the slices of the second such IDR access unit. The value of idr_pic_id shall be in the range of 0 to 65535, inclusive.

pic_order_cnt指定编码画面的画面顺序计数,并用作缓存描述应用处理和参考画面列表创建处理中的标识符。pic_order_cnt句法要素应当由log2_max_pic_order_cnt_minus4+4个比特来表示。pic_order_cnt 的值应当在0至MaxPOC-1的范围中(包含端点)。pic_order_cnt specifies the picture order count of the coded picture and is used as an identifier in the cache description application process and the reference picture list creation process. The pic_order_cnt syntax element shall be represented by log2_max_pic_order_cnt_minus4+4 bits. The value of pic_order_cnt shall be in the range of 0 to MaxPOC-1 (inclusive).

num_ref_idx_active_override_flag等于1指定对于P片和B片,存在句法要素num_ref_idx_10_active_minus1,而对于B片,存在句法要素 num_ref_idx_11_active_minus1。num_ref_idx_active_override_flag等于0 指定句法要素num_ref_idx_10_active_minus1和 num_ref_idx_11_active_minusl不存在。num_ref_idx_active_override_flag equal to 1 specifies that for P slices and B slices, the syntax element num_ref_idx_10_active_minus1 is present, and for B slices, the syntax element num_ref_idx_11_active_minus1 is present. num_ref_idx_active_override_flag equal to 0 specifies that the syntax elements num_ref_idx_10_active_minus1 and num_ref_idx_11_active_minus1 are not present.

当当前片是P片或B片且field_pic_flag等于0且画面参数集合中的 num_ref_idx_10_default_active_minusl的值超过15时, num_ref_idx_active_override_flag应当等于1。当当前片是B片且 field_pic_flag等于0且画面参数集合中的 num_ref_idx_11_default_active_minus1的值超过15时, num_ref_idx_active_override_flag应当等于1。num_ref_idx_10_active_minus1指定应当用于对片进行解码的参考画面列表0的最大参考索引。When the current slice is a P slice or a B slice and field_pic_flag is equal to 0 and the value of num_ref_idx_10_default_active_minus1 in the picture parameter set exceeds 15, num_ref_idx_active_override_flag shall be equal to 1. When the current slice is a B slice and field_pic_flag is equal to 0 and the value of num_ref_idx_11_default_active_minus1 in the picture parameter set exceeds 15, num_ref_idx_active_override_flag shall be equal to 1. num_ref_idx_10_active_minus1 specifies the maximum reference index of reference picture list 0 that should be used for decoding the slice.

当当前片是P片或B片并且num_ref_idx_10_active_minus1不存在时,应当推断num_ref_idx_10_active_minus1等于 num_ref_idx_10_default_active_minus1。按照下式指定 num_ref_idx_10_active_minus1的范围。如果field_pic_flag等于0, num_ref_idx_10_active_minus1应当在0至15的范围中(包含端点)。当 MbaffFrameFlag等于1时,num_ref_idx_10_active_minus1是用于帧宏块的解码的最大索引值,并且2*num_ref_idx_10_active_minus1+1是用于字段宏块的解码的最大索引值。否则(当field_pic_flag等于1时), num_ref_idx_10_active_minus1应当在0至31的范围中(包含端点)。When the current slice is a P slice or a B slice and num_ref_idx_10_active_minus1 is not present, num_ref_idx_10_active_minus1 shall be inferred to be equal to num_ref_idx_10_default_active_minus1. The range of num_ref_idx_10_active_minus1 is specified as follows. If field_pic_flag is 0, num_ref_idx_10_active_minus1 shall be in the range of 0 to 15 (inclusive). When MbaffFrameFlag is 1, num_ref_idx_10_active_minus1 is the maximum index value for decoding of frame macroblocks, and 2*num_ref_idx_10_active_minus1+1 is the maximum index value for decoding of field macroblocks. Otherwise (when field_pic_flag is 1), num_ref_idx_10_active_minus1 shall be in the range of 0 to 31 (inclusive).

num_ref_idx_11_active_minus1指定应当用于对片进行解码的参考画面列表1的最大参考索引。当当前片是B片并且 num_ref_idx_11_active_minus1不存在时,应当推断num_ref_idx_11_active_minus1等于 num_ref_idx_11_default_active_minus1。如在用11和列表1分别替换10和列表0的num_ref_idx_10_active_minus1的句法中所指定的,num_ref_idx_11_active_minus1的范围受限。num_ref_idx_11_active_minus1 specifies the maximum reference index of reference picture list 1 that should be used for decoding the slice. When the current slice is a B slice and num_ref_idx_11_active_minus1 is not present, num_ref_idx_11_active_minus1 should be inferred to be equal to num_ref_idx_11_default_active_minus1. The range of num_ref_idx_11_active_minus1 is limited, as specified in the syntax of num_ref_idx_10_active_minus1, which replaces 10 and list 0 with 11 and list 1, respectively.

no_output_of_prior_pics_flag指定在IDR画面的解码之后,如何处理解码画面缓存中的先前解码画面。当IDR画面是比特流中的第一IDR 画面时,no_output_of_prior_pics_flag的值不对解码过程产生影响。当 IDR画面不是比特流中的第一IDR画面,并且从活动序列参数集合中导出的PicWidthInMbs、FrameHeightInMbs或max_dec_frame_buffering的值与从针对先前画面活动的序列参数集合导出的PicWidthInMbs、FrameHeightInMbs或max_dec_frame_buffering的值不同时,解码器可以(但不应当)推断no_output_of_prior_pics_flag等于1,而不管 no_output_of_prior_pics_flag的实际值如何。no_output_of_prior_pics_flag specifies how to handle previously decoded pictures in the decoded picture buffer after decoding of an IDR picture. When the IDR picture is the first IDR picture in the bitstream, the value of no_output_of_prior_pics_flag has no effect on the decoding process. When the IDR picture is not the first IDR picture in the bitstream and the values of PicWidthInMbs, FrameHeightInMbs, or max_dec_frame_buffering derived from the active sequence parameter set are different from the values of PicWidthInMbs, FrameHeightInMbs, or max_dec_frame_buffering derived from the active sequence parameter set for the previous picture, the decoder may (but should not) infer that no_output_of_prior_pics_flag is equal to 1, regardless of the actual value of no_output_of_prior_pics_flag.

cabac_init_idc指定用于确定初始化表格的索引,该初始化表格用在上下文变量的初始化过程中。cabac_init_idc的值应当在0至2的范围中(包含端点)。cabac_init_idc specifies the index used to determine the initialization table used in the initialization process of context variables. The value of cabac_init_idc should be in the range of 0 to 2 (inclusive).

first_slice_in_pic_flag指示片是否是画面的第一片。如果 first_slice_in_pic_flag等于1,则变量SliceAddress和LCUAddress均被设置为0,并且解码开始于画面中的第一最大编码单元(LCU)。first_slice_in_pic_flag indicates whether the slice is the first slice of the picture. If first_slice_in_pic_flag is equal to 1, the variables SliceAddress and LCUAddress are both set to 0, and decoding starts at the first largest coding unit (LCU) in the picture.

slice_address以片粒度分辨率指定片开始的地址,并应当由比特流中(Ceil(Log2(NumLCUsInPicture))+SliceGranularity)个比特表示,其中NumLCUsInPicture是画面中LCU的数量。变量LCUAddress被设置为(slice_address>>SliceGranularity),并表示具有逐行扫描顺序的片地址的LCU部分。变量GranularityAddress被设置为(slice_address- (LCUAddress<<SliceGranularity)),并表示以z-扫描顺序表示的片地址的子LCU部分。然后,变量SliceAddress被设置为(LCUAddress<< (log2_diff_max_min_coding_block_size<<1))+(GranularityAddress<< ((log2_diff_max_min_coding_block_size<<1)-SliceGranularity),并且片解码开始于可能在片起始坐标处的最大编码单元。The slice_address specifies the address of the start of the slice at slice granularity resolution and should be represented by (Ceil(Log2(NumLCUsInPicture))+SliceGranularity) bits in the bitstream, where NumLCUsInPicture is the number of LCUs in the picture. The variable LCUAddress is set to (slice_address>>SliceGranularity) and represents the LCU portion of the slice address with row-by-row scan order. The variable GranularityAddress is set to (slice_address-(LCUAddress<<SliceGranularity)) and represents the sub-LCU portion of the slice address expressed in z-scan order. Then, the variable SliceAddress is set to (LCUAddress<<(log2_diff_max_min_coding_block_size<<1))+(GranularityAddress<<((log2_diff_max_min_coding_block_size<<1)-SliceGranularity), and slice decoding starts at the largest coding unit possible at the slice start coordinates.

slice_qp_delta指定在被编码单元层中的cu_qp_delta值修改之前要用于片中所有宏块的亮度量化参数QPY的初始值。按照下式计算针对片的初始QPY量化参数: SliceQPY=26+pic_init_qp_minus26+slice_qp_delta。应当限制 slice_qp_delta的值,使得SliceQPY在-QpBdOffsetY至+51的范围中(包含端点)。“QpBdOffsetY=6*bit_depth_luma_minus8”指定亮度量化参数范围偏移值。“bit_depth_luma_minus8+8”指定亮度阵列的采样的比特深度。pic_init_qp_minus26指定针对每个片的SliceQPY的初始值减去26。slice_qp_delta specifies the initial value of the luma quantization parameter QPY to be used for all macroblocks in the slice before being modified by the cu_qp_delta value in the coding unit layer. The initial QPY quantization parameter for a slice is calculated as follows: SliceQPY = 26 + pic_init_qp_minus26 + slice_qp_delta. The value of slice_qp_delta should be constrained so that SliceQPY is in the range of -QpBdOffsetY to +51, inclusive. "QpBdOffsetY = 6*bit_depth_luma_minus8" specifies the luma quantization parameter range offset value. "bit_depth_luma_minus8+8" specifies the bit depth of samples for the luma array. pic_init_qp_minus26 specifies the initial value of SliceQPY for each slice, minus 26.

collocated_from_10_flag等于1指定应当从列表0导出包含协同水平切分(co-located partition)的画面,否则应当从列表1导出画面。 ref_pic_list_modification()是标识参考画面列表修改的句法的函数。 ref_pic_list_combination()是标识参考画面列表组合的句法的函数。 alf_cu_control_param()是标识自适应环路滤波器编码单元控制参数的句法的函数。sao_param()是标识采样自适应偏移参数的句法的函数。collocated_from_10_flag equal to 1 specifies that pictures containing co-located horizontal partitions should be derived from list 0, otherwise the pictures should be derived from list 1. ref_pic_list_modification() is a function that identifies the syntax for reference picture list modification. ref_pic_list_combination() is a function that identifies the syntax for reference picture list combination. alf_cu_control_param() is a function that identifies the syntax for adaptive loop filter coding unit control parameters. sao_param() is a function that identifies the syntax for sample adaptive offset parameters.

disable_deblocking_filter_idc等于1针对特定块边缘禁用去块滤波器的应用。disable_deblocking_filter_idc等于0针对特定块边缘启用去块滤波器的应用。去块过程是使用句法要素slice_alpha_c0_offset_div2 和slice_beta_offset_div2的值控制的。disable_deblocking_filter_idc equal to 1 disables the application of the deblocking filter for a particular block edge. disable_deblocking_filter_idc equal to 0 enables the application of the deblocking filter for a particular block edge. The deblocking process is controlled using the values of the syntax elements slice_alpha_c0_offset_div2 and slice_beta_offset_div2.

以下列表(7)阐述了用于信号通知自适应参数集合(APS)中的回绕指示符所需的比特流句法修改的示例:The following Listing (7) illustrates an example of the bitstream syntax modifications required to signal the wrap indicator in an Adaptation Parameter Set (APS):

列表(7)List (7)

aps_id标识在片首部中引用的自适应参数集合。 aps_sample_adaptive_offset_flag等于1指定对于引用当前APS的片, SAO是开启的。当aps_sample_adaptive_offset_flag等于0时,这指定对于引用当前APS的片,SAO是关闭的。如果不存在活动APS,则推断aps_sample_adaptive_offset_flag值为0。aps_id identifies the adaptation parameter set referenced in the slice header. aps_sample_adaptive_offset_flag equal to 1 specifies that SAO is on for slices referencing the current APS. When aps_sample_adaptive_offset_flag equal to 0, this specifies that SAO is off for slices referencing the current APS. If no active APS exists, the aps_sample_adaptive_offset_flag value is inferred to be 0.

aps_adaptive_loop_filter_flag等于1指定对于引用当前APS的片, ALF是开启的。当aps_sample_adaptive_offset_flag等于0时,这指定对于引用当前APS的片,ALF是关闭的。如果不存在活动APS,则推断 aps_adaptive_loop_filter_flag值为0。aps_adaptive_loop_filter_flag equal to 1 specifies that ALF is on for slices referencing the current APS. When aps_sample_adaptive_offset_flag is equal to 0, this specifies that ALF is off for slices referencing the current APS. If no active APS exists, the aps_adaptive_loop_filter_flag value is inferred to be 0.

aps_cabac_use_flag等于1指定当sao_param()存在时,CABAC解码过程应当用于sao_param(),并且当alf_param()存在时,CABAC解码过程应当用于alf_param()。当aps_cabac_use_flag等于0时,这指定当 sao_param()存在时,CAVLC解码过程应当用于sao_param(),并且当 alf_param()存在时,CAVLC解码过程应当用于alf_param()。aps_cabac_use_flag equal to 1 specifies that when sao_param() is present, the CABAC decoding process should be used for sao_param(), and when alf_param() is present, the CABAC decoding process should be used for alf_param(). When aps_cabac_use_flag is equal to 0, this specifies that when sao_param() is present, the CAVLC decoding process should be used for sao_param(), and when alf_param() is present, the CAVLC decoding process should be used for alf_param().

aps_cabac_init_idc指定用于确定初始化表格的索引,该初始化表格用在SAO和ALF的上下文变量的初始化过程中。cabac_init_idc的值应当在0至2的范围中(包含端点)。aps_cabac_init_qp_minus26指定量化参数减26,其中,量化参数用在SAO和ALF的上下文变量的初始化过程中。alf_data_byte_count指定字节数量。sao_data_byte_point指定字节数量。byte_align()将插入0至7个比特,直到达到对齐为止。aps_cabac_init_idc specifies the index used to determine the initialization table used during the initialization of context variables for SAO and ALF. The value of cabac_init_idc should be in the range of 0 to 2 (inclusive). aps_cabac_init_qp_minus26 specifies the quantization parameter minus 26, which is used during the initialization of context variables for SAO and ALF. alf_data_byte_count specifies the number of bytes. sao_data_byte_point specifies the number of bytes. byte_align() inserts 0 to 7 bits until alignment is achieved.

在一些配置中,画面参数集合可以包括仅与长期画面相对应的多个缓存描述。以下列表(8)阐述了用于信号通知仅与长期画面相对应的多个缓存描述的比特流句法修改的示例。In some configurations, a picture parameter set may include multiple buffer descriptions corresponding only to long-term pictures. Listing (8) below sets forth an example of a bitstream syntax modification for signaling multiple buffer descriptions corresponding only to long-term pictures.

列表(8)List (8)

longterm_pictures_only_flag_pps[i]等于1指示第i个缓存描述仅包含长期画面参考。longterm_pictures_only_flag_pps[i]等于0指示第i 个缓存描述包含deltaPOC和长期画面参考。longterm_pictures_only_flag_pps[i] equal to 1 indicates that the i-th buffer description contains only long-term picture references. longterm_pictures_only_flag_pps[i] equal to 0 indicates that the i-th buffer description contains deltaPOC and long-term picture references.

在一些配置中,缓存描述可以涉及不可用于参考的画面。不可用于参考的画面指代在当前画面之前还未被解码的画面。此外,不可用于参考的画面指代在当前画面之前已经被解码但被标识为不再可用于参考的画面。用于识别画面不再可用于参考的过程的一个示例是通过 IDR帧的使用。IDR帧表示IDR帧和随后接收的所有画面不参考在接收到IDR帧之前所接收的画面。因此,针对IDR帧和随后接收的帧,在IDR 帧之前接收的所有帧不再可用于参考。In some configurations, the cache description may refer to pictures that are unavailable for reference. A picture that is unavailable for reference refers to a picture that has not been decoded before the current picture. Furthermore, a picture that is unavailable for reference refers to a picture that has been decoded before the current picture but has been identified as no longer available for reference. One example of a process for identifying pictures that are no longer available for reference is through the use of IDR frames. An IDR frame indicates that the IDR frame and all subsequently received pictures do not reference pictures received before the IDR frame. Therefore, for the IDR frame and subsequently received frames, all frames received before the IDR frame are no longer available for reference.

在缓存描述涉及不可用于参考的画面的配置中,解码器不允许将不可用于参考的画面用在预测用于对当前帧进行解码的信息中。在一个配置中,这是通过不将帧包括在创建参考帧集合的过程中来完成的。因此,如果缓存描述涉及不可用于参考的画面,如果缓存描述不涉及不可用于参考的画面,和如果两个缓存描述所涉及的其他画面是相同的,则创建参考帧集合的过程的输出可能是相同的。在另一配置中,在创建参考帧集合的过程中包括不可用于参考的画面。因此,如果缓存描述涉及不可用于参考的画面和如果缓存描述不涉及不可用于参考的画面,则创建参考帧集合的过程的输出不相同。在此配置中,解码器不允许选择不可用于参考的画面来预测用于对当前帧进行解码的信息。In configurations where the cached description refers to a picture that is unavailable for reference, the decoder is prohibited from using the unavailable picture in predicting information used to decode the current frame. In one configuration, this is accomplished by not including the frame in the process of creating a reference frame set. Thus, the output of the process of creating a reference frame set may be the same if the cached description refers to a picture that is unavailable for reference and if the cached description does not refer to a picture that is unavailable for reference, and if the other pictures referred to by the two cached descriptions are the same. In another configuration, the process of creating a reference frame set includes the unavailable picture. Thus, the output of the process of creating a reference frame set is different if the cached description refers to a picture that is unavailable for reference and if the cached description does not refer to a picture that is unavailable for reference. In this configuration, the decoder is prohibited from selecting a picture that is unavailable for reference to predict information used to decode the current frame.

在一些配置中,基于参考画面在显示顺序方面关于(正在被解码的)当前画面是过去画面还是未来画面,来划分PPS中定义的第i个参考画面列表POCBD_pps[i]、temporalIDBD_pps[i]、 POC_CYCLE_BD_pps[i]以及列表POCBD、temporalIDBD和 POC_CYCLE_BD。应当注意的是,i可以取从0至number_of_bds-1的值。In some configurations, the i-th reference picture list POCBD_pps[i], temporalIDBD_pps[i], POC_CYCLE_BD_pps[i] and the lists POCBD, temporalIDBD, and POC_CYCLE_BD defined in the PPS are divided based on whether the reference picture is in the past or future in display order relative to the current picture (being decoded). It should be noted that i can take values from 0 to number_of_bds-1.

在一些配置中,可以用信号通知或指示(正在被解码的)当前画面是否使用相应的参考画面的标记,替换时间标识符。因此,包含以上标记的列表usedByCurPicBD和usedByCurPicBD_pps[i]分别替换 temporalID列表temporalIDBBD和PPS中第i个temporalID列表 temporalIDBD_pps[i]。在一些配置中,标记的值可以用于将PPS中定义的第i个参考画面列表POCBD_pps[i]、usedByCurPicBD_pps[i]、 POC_CYCLE_BD_pps[i]以及列表POCBD、usedByCurPicBD、POC_CYCLE_BD划分为一个或更多个列表。在一个配置中,将针对标记具有零值的条目指派给一个列表,并且将具有非零值(例如1)的那些条目指派给另一列表。应当注意的是,i可以取从0至 number_of_bds-1的值。In some configurations, the temporal identifier can be replaced by a flag that signals or indicates whether the current picture (being decoded) uses the corresponding reference picture. Thus, the lists usedByCurPicBD and usedByCurPicBD_pps[i] containing the above flag replace the temporalID list temporalIDBBD and the i-th temporalID list temporalIDBD_pps[i] in the PPS, respectively. In some configurations, the value of the flag can be used to divide the i-th reference picture list POCBD_pps[i], usedByCurPicBD_pps[i], POC_CYCLE_BD_pps[i] and the lists POCBD, usedByCurPicBD, POC_CYCLE_BD defined in the PPS into one or more lists. In one configuration, entries with a zero value for the flag are assigned to one list, and those with a non-zero value (e.g., 1) are assigned to another list. It should be noted that i can take values from 0 to number_of_bds-1.

列表(9)阐述了来自AHG21的针对PPS的句法修改的另一示例。具体而言,列表(9)阐述了AHG21工作草案中所概述的用在片首部中的缓存描述句法的另一示例。然而,在列表(9)中以粗体文本表示根据本文所公开的系统和方法的对AHG21工作草案中所给出的句法的修改。Listing (9) illustrates another example of syntax modifications from AHG21 for PPS. Specifically, Listing (9) illustrates another example of the cache description syntax used in the slice header as outlined in the AHG21 working draft. However, the modifications to the syntax given in the AHG21 working draft according to the systems and methods disclosed herein are indicated in bold text in Listing (9).

列表(9)List (9)

列表(9)包含许多与列表(4)的要素类似的要素。列表(9)还包含对片首部的句法修改,以允许选择性地替换参考画面。Listing (9) contains many elements similar to those of Listing (4). Listing (9) also contains syntax modifications to the slice header to allow for selective replacement of reference pictures.

bd_poc_cycle_replace_count指定在列表POCBD_pps[bd_idx]、 POC_CYCLE_BD_pps[bd_idx]和temporalIDBD_pps[bd_idx]中要选择性地替换的条目的数量。在一些配置中,bd_poc_cycle_replace_count 可以大于或等于0。bd_pps_replace_idx[j]标识在列表POCBD_pps[bd_idx]、POC_CYCLE_BD_pps[bd_idx]和 temporalIDBD_pps[bd_idx]中要替换的条目的索引。bd_poc_cycle_replace_count specifies the number of entries to be selectively replaced in the lists POCBD_pps[bd_idx], POC_CYCLE_BD_pps[bd_idx], and temporalIDBD_pps[bd_idx]. In some configurations, bd_poc_cycle_replace_count may be greater than or equal to 0. bd_pps_replace_idx[j] identifies the index of the entry to be replaced in the lists POCBD_pps[bd_idx], POC_CYCLE_BD_pps[bd_idx], and temporalIDBD_pps[bd_idx].

针对当前画面,应当替换所参考的缓存描述的 POC_CYCLE_BD_pps[bd_idx][bd_pps_replace_idx[j]]。在一些配置中,未来帧还可以重载poc_cycle信息。poc_cycle_pps_replace[j]指定仅针对当前画面,要用于替换POC_CYCLE_BD_pps[bd_idx] [bd_pps_replace_idx[j]]中的值的值。The referenced cache description POC_CYCLE_BD_pps[bd_idx][bd_pps_replace_idx[j]] shall be replaced for the current picture. In some configurations, future frames may also overwrite the poc_cycle information. poc_cycle_pps_replace[j] specifies the value to be used to replace the value in POC_CYCLE_BD_pps[bd_idx][bd_pps_replace_idx[j]] for the current picture only.

poc_pps_replace[j]指定仅针对当前画面,要用于替换 POCBD_pps[bd_idx][bd_pps_replace_idx[j]]中的值的值。 temporal_id_pps_replace[j]指定仅针对当前画面,要用于替换 TemporalIDBD_pps[bd_idx][bd_pps_replace_idx[j]]中的值的值。poc_pps_replace[j] specifies the value to be used to replace the value in POCBD_pps[bd_idx][bd_pps_replace_idx[j]] for the current picture only. temporal_id_pps_replace[j] specifies the value to be used to replace the value in TemporalIDBD_pps[bd_idx][bd_pps_replace_idx[j]] for the current picture only.

在一些配置中,如果划分了PPS中定义的第i个参考画面列表 POCBD_pps[i]、usedByCurPicBD_pps[i]、POC_CYCLE_BD_pps[i],则首先对使用划分列表所生成的导出列表执行选择性的替换、重载、删除和附加操作。在操作的全部或子集完成之后,可以将导出列表中的条目划分回(例如恢复)根据其导出该导出列表的原始列表。应当注意的是,i可以取从0至number_of_bds-1的值。In some configurations, if the i-th reference picture list POCBD_pps[i], usedByCurPicBD_pps[i], POC_CYCLE_BD_pps[i] defined in the PPS is partitioned, then selective replace, reload, delete, and append operations are first performed on the derived list generated using the partitioned list. After all or a subset of the operations are completed, the entries in the derived list can be partitioned back (e.g., restored) to the original list from which the derived list was derived. It should be noted that i can take values from 0 to number_of_bds-1.

在一些配置中,针对属于PPS中的缓存描述的每个列表集合(例如(负deltaPOC列表、负deltaPOC usedByCurPicBD列表)集合、(正 deltaPOC列表、正deltaPOCusedByCurPicBD列表)集合和(poc列表、 poc_cycle列表、poc和poc_cycleusedByCurPicBD列表)集合),分离地信号通知选择性的替换、重载、删除和附加操作。在另一配置中,在每个列表集合中都可以存在缩放参数列表。In some configurations, selective replace, overload, delete, and append operations are signaled separately for each list set belonging to the cache description in the PPS (e.g., the (negative deltaPOC list, negative deltaPOC usedByCurPicBD list) set, the (positive deltaPOC list, positive deltaPOC usedByCurPicBD list) set, and the (poc list, poc_cycle list, poc and poc_cycleusedByCurPicBD list) set). In another configuration, a scaling parameter list may exist in each list set.

在一些配置中,如果比特流包含具有第一分辨率的第一画面和具有第二分辨率的第二画面,如果第一分辨率和第二分辨率不相等,并且如果第二画面不是IDR画面或在第一画面之后和在第二画面之前未接收到序列参数集合(SPS),则解码画面缓存可以包含具有不同分辨率的画面。然后,编码器可以向解码器信号通知对解码画面缓存(DPB) 中的参考画面进行修改,使得参考画面包括以下选项之一:In some configurations, if the bitstream contains a first picture having a first resolution and a second picture having a second resolution, if the first resolution and the second resolution are not equal, and if the second picture is not an IDR picture or a sequence parameter set (SPS) is not received after the first picture and before the second picture, then the decoded picture buffer may contain pictures with different resolutions. The encoder may then signal to the decoder to modify the reference pictures in the decoded picture buffer (DPB) such that the reference pictures include one of the following options:

(a)第一分辨率,(a) first resolution,

(b)第二分辨率,或(b) a second resolution, or

(c)第一分辨率和第二分辨率(c) First resolution and second resolution

以下给出了一些示例性使用情况。如果参考画面将仅用于以较低分辨率的运动预测,则选项(a)是有用的。如图17中所示的第一示例 1653a给出了选项(a)的示例。Some example use cases are given below. Option (a) is useful if the reference picture will only be used for motion prediction at a lower resolution. The first example 1653a shown in FIG17 gives an example of option (a).

当比特流包含在第二画面之后的第三画面时,选项(b)是有用的,其中,第三画面是处于第一分辨率,并且DPB中所存储的长期画面可以用于运动预测。如图17中所示的第二示例1653b给出了选项(b)的示例。Option (b) is useful when the bitstream contains a third picture after the second picture, where the third picture is at the first resolution and the long-term pictures stored in the DPB can be used for motion prediction. The second example 1653b shown in Figure 17 gives an example of option (b).

当参考画面的较低分辨率版本用在针对较低分辨率画面的运动预测中时,选项(c)是有用的。此外,当对第二画面之后的第三画面进行解码时参考画面的较高分辨率版本用于运动预测,其中,第三画面是处于第一分辨率。如图17中所示的第三示例1653c给出了选项(c) 的示例。Option (c) is useful when a lower-resolution version of the reference picture is used in motion prediction for the lower-resolution picture. Furthermore, a higher-resolution version of the reference picture is used for motion prediction when decoding a third picture following the second picture, where the third picture is at the first resolution. Option (c) is exemplified by the third example 1653c shown in FIG17 .

可以使用如以下列表(10)所示的句法修改信号通知分辨率切换。以下以粗体文本表示根据本文所描述的系统和方法的修改。Resolution switching may be signaled using syntax modifications as shown in Listing (10) below. Modifications according to the systems and methods described herein are indicated below in bold text.

列表(10)List (10)

如果adaptive_res_coding_flag等于0,则序列不进行分辨率切换。如果adaptive_res_coding_flag等于1,则序列进行分辨率切换。If adaptive_res_coding_flag is equal to 0, the sequence does not perform resolution switching. If adaptive_res_coding_flag is equal to 1, the sequence performs resolution switching.

refPicS0Height[i]和refPicS0Width[i]表示与负deltaPOC相对应的第 i个参考画面的原始高度和宽度。refPicS1Height[i]和refPicS1Width[i] 表示与正deltaPOC相对应的第i个参考画面的原始高度和宽度。 curPicHeight和curPicWidth表示正在被解码的当前画面的高度和宽度。refPicS0Height[i] and refPicS0Width[i] represent the original height and width of the i-th reference picture corresponding to the negative deltaPOC. refPicS1Height[i] and refPicS1Width[i] represent the original height and width of the i-th reference picture corresponding to the positive deltaPOC. curPicHeight and curPicWidth represent the height and width of the current picture being decoded.

num_negative_pics指定以下delta_poc_s0_minus1[i]和 used_by_curr_pic_s0_flag[i]句法要素的数量。num_positive_pics指定以下delta_poc_s1_minus1[i]和used_by_curr_pic_s1_flag1[i]句法要素的数量。num_negative_pics specifies the number of the following delta_poc_s0_minus1[i] and used_by_curr_pic_s0_flag[i] syntax elements. num_positive_pics specifies the number of the following delta_poc_s1_minus1[i] and used_by_curr_pic_s1_flag1[i] syntax elements.

delta_poc_s0_minus1[i]加1指定两个画面顺序计数值之间的绝对差值。delta_poc_s0_minus1[i]的值应当在0至215-1的范围中(包含端点)。delta_poc_s0_minus1[i]对应于负deltaPOC值。delta_poc_s0_minus1[i] plus 1 specifies the absolute difference between two picture order count values. The value of delta_poc_s0_minus1[i] should be in the range of 0 to 215-1, inclusive. delta_poc_s0_minus1[i] corresponds to a negative deltaPOC value.

used_by_curr_pic_s0_flag[i]等于0指定具有比当前画面的画面顺序计数小的画面顺序计数的第i个参考画面不用于供当前画面参考。 delta_poc_s1_minus1[i]加1指定两个画面顺序计数值之间的绝对差值。delta_poc_s1_minus1[i]的值应当在0至215-1的范围中(包含端点)。delta_poc_s1_minus1[i]对应于正deltaPOC值。used_by_curr_pic_s0_flag[i] equal to 0 specifies that the i-th reference picture with a picture order count smaller than the picture order count of the current picture is not used for reference by the current picture. delta_poc_s1_minus1[i] plus 1 specifies the absolute difference between the two picture order count values. The value of delta_poc_s1_minus1[i] should be in the range of 0 to 215-1, inclusive. delta_poc_s1_minus1[i] corresponds to positive deltaPOC values.

used_by_curr_pic_s1_flag[i]等于0指定具有比当前画面的画面顺序计数大的画面顺序计数的第i个参考画面不用于供当前画面参考。used_by_curr_pic_s1_flag[i] equal to 0 specifies that the i-th reference picture having a picture order count greater than the picture order count of the current picture is not used for reference by the current picture.

used_by_curr_pic_longterm_flag[i]等于0指定第i个长期参考画面不用于供当前画面参考。used_by_curr_pic_longterm_flag[i] equal to 0 specifies that the i-th long-term reference picture is not used for reference by the current picture.

ref_pic_s0_resolution_idx[i]等于0指定对参考画面进行缩放,以使其分辨率与正在被解码的当前画面的分辨率相匹配。 ref_pic_s0_resolution_idx[i]等于1指定以参考画面的原始分辨率保存参考画面。ref_pic_s0_resolution_idx[i]等于2指定以参考画面的原始分辨率并以当前画面的分辨率两者维持参考画面的分辨率。当 ref_pic_s0_resolution_idx[i]不存在时推断ref_pic_s0_resolution_idx[i] 为0。ref_pic_s0_resolution_idx[i] equal to 0 specifies that the reference picture is scaled to match the resolution of the current picture being decoded. ref_pic_s0_resolution_idx[i] equal to 1 specifies that the reference picture is preserved at its original resolution. ref_pic_s0_resolution_idx[i] equal to 2 specifies that the resolution of the reference picture is maintained at both its original resolution and the resolution of the current picture. ref_pic_s0_resolution_idx[i] is inferred to be 0 when ref_pic_s0_resolution_idx[i] is not present.

ref_pic_s1_resolution_idx[i]等于0指定对参考画面进行缩放,以使其分辨率与正在被解码的当前画面的分辨率相匹配。 ref_pic_s1_resolution_idx[i]等于1指定以参考画面的原始分辨率保存参考画面。ref_pic_s1_resolution_idx[i]等于2指定以参考画面的原始分辨率并以当前画面的分辨率两者维持参考画面的分辨率。当 ref_pic_s1_resolution_idx[i]不存在时推断ref_pic_s1_resolution_idx[i] 为0。ref_pic_s1_resolution_idx[i] equal to 0 specifies that the reference picture is scaled to match the resolution of the current picture being decoded. ref_pic_s1_resolution_idx[i] equal to 1 specifies that the reference picture is preserved at its original resolution. ref_pic_s1_resolution_idx[i] equal to 2 specifies that the resolution of the reference picture is maintained both at its original resolution and at the resolution of the current picture. ref_pic_s1_resolution_idx[i] is inferred to be 0 when ref_pic_s1_resolution_idx[i] is not present.

在一个配置中,如果比特流包含具有第一分辨率的第一画面和具有第二分辨率的第二画面和第四画面,其中第一分辨率和第二分辨率不相等,并且第二画面不是IDR画面或在第一画面之后和在第二画面之前未接收到序列参数集合(SPS),则第二画面可以仅参考具有第一分辨率的一个参考画面。在第二配置中,如果比特流包含具有第一分辨率的第一画面和具有第二分辨率的第二画面,其中第一分辨率和第二分辨率不相等,并且第二画面不是IDR画面或在第一画面之后且在第二画面之前未接收到序列参数集合(SPS),则第四画面可以仅参考具有第二分辨率的其他画面未参考的具有第一分辨率的一个参考画面。In one configuration, if a bitstream includes a first picture having a first resolution and a second picture and a fourth picture having a second resolution, wherein the first resolution and the second resolution are not equal, and the second picture is not an IDR picture or a sequence parameter set (SPS) is not received after the first picture and before the second picture, then the second picture may refer to only one reference picture having the first resolution. In a second configuration, if a bitstream includes a first picture having a first resolution and a second picture having a second resolution, wherein the first resolution and the second resolution are not equal, and the second picture is not an IDR picture or a sequence parameter set (SPS) is not received after the first picture and before the second picture, then the fourth picture may refer to only one reference picture having the first resolution that is not referenced by other pictures having the second resolution.

例如,如果具有相同分辨率的其他画面在第四画面之前,则除了在第四画面之前的具有相同分辨率的画面所使用的参考画面之外,第四画面还可以参考具有第一分辨率的一个参考画面。换句话说,当对具有第二分辨率的画面进行解码时,仅具有第一分辨率的一个参考画面可以用于当对画面进行解码时的参考。一旦具有第一分辨率的画面用于当对具有第二分辨率的画面进行解码时的参考,则认为用于参考的具有第一分辨率的画面具有用于对后续画面进行解码的第二分辨率的分辨率。For example, if another picture of the same resolution precedes the fourth picture, the fourth picture may reference a reference picture of the first resolution in addition to the reference pictures used by the pictures of the same resolution preceding the fourth picture. In other words, when decoding a picture of the second resolution, only one reference picture of the first resolution may be used for reference when decoding the picture. Once a picture of the first resolution is used for reference when decoding a picture of the second resolution, the picture of the first resolution used for reference is considered to have the resolution of the second resolution used for decoding subsequent pictures.

图13是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法1200的另一更具体配置的流程图。此方法1200可以是用于当重用POC时跟踪哪个画面正在被参考的另一方案。电子设备204(例如解码器202)可以接收1202比特流。例如,解码器202可以接收1202包括编码参考画面的比特流214。在一些配置中,比特流214还可以包括开销信息(例如PPS、缓存描述信息、参数、参考画面指示或标识符等)。FIG13 is a flow chart illustrating another more specific configuration of a method 1200 for tracking reference pictures using reduced overhead referencing based on a selected picture. This method 1200 may be another approach for tracking which picture is being referenced when reusing a POC. An electronic device 204 (e.g., a decoder 202) may receive 1202 a bitstream. For example, the decoder 202 may receive 1202 a bitstream 214 including coded reference pictures. In some configurations, the bitstream 214 may also include overhead information (e.g., PPS, buffer description information, parameters, reference picture indications or identifiers, etc.).

电子设备204可以对比特流的一部分进行解码1204,以产生解码参考画面。例如,解码器202可以对比特流214的一部分进行解码1204,以产生解码参考画面,该解码参考画面被存储在帧存储器264中。应当注意的是,可以对比特流214的一个或更多个部分进行解码404,以产生一个或更多个解码参考画面。The electronic device 204 may decode 1204 a portion of the bitstream to generate a decoded reference picture. For example, the decoder 202 may decode 1204 a portion of the bitstream 214 to generate a decoded reference picture, which is stored in the frame memory 264. It should be noted that one or more portions of the bitstream 214 may be decoded 404 to generate one or more decoded reference pictures.

电子设备204可以将循环参数与包括解码参考画面的解码画面集合进行关联1206。例如,电子设备204可以将循环参数“poc_cycle”与包括解码参考画面的解码画面集合或解码画面集合中的每个画面进行关联1206。在下文中更详细地描述循环参数“poc_cycle”。The electronic device 204 may associate a cycle parameter with a decoded picture set including a decoded reference picture 1206. For example, the electronic device 204 may associate a cycle parameter "poc_cycle" with a decoded picture set including a decoded reference picture or each picture in a decoded picture set 1206. The cycle parameter "poc_cycle" is described in more detail below.

电子设备204可以确定1208在画面集合之间是否已经发生转换。例如,可以通过检查正在被解码的当前画面的POC(例如CurPOC)并将其与上一解码画面的POC(例如LastPOC)进行比较,来确定1208转换。例如,如果正在被解码的当前画面的POC(例如CurPOC)小于上一解码画面的POC(例如LastPOC),并且LastPOC-CurPOC大于阈值 TH_FWD,则可以确定1208从先前画面集合到后续画面集合的转换。然而,如果正在被解码的当前画面的POC(例如CurPOC)大于上一解码画面的POC(例如LastPOC),并且CurPOC-LastPOC大于阈值 TH_BCKWD,则可以确定1208从后续画面集合到先前画面集合的转换。针对所有其他情况,可以确定1208未发生转换。在一些配置中,阈值可以取值TH_FWD=TH_BCKWD=MaxPOC/2。The electronic device 204 may determine 1208 whether a transition has occurred between picture sets. For example, the transition may be determined 1208 by examining the POC of the current picture being decoded (e.g., CurPOC) and comparing it to the POC of the last decoded picture (e.g., LastPOC). For example, if the POC of the current picture being decoded (e.g., CurPOC) is less than the POC of the last decoded picture (e.g., LastPOC), and LastPOC minus CurPOC is greater than a threshold value TH_FWD, then a transition from the previous picture set to the subsequent picture set may be determined 1208. However, if the POC of the current picture being decoded (e.g., CurPOC) is greater than the POC of the last decoded picture (e.g., LastPOC), and CurPOC minus LastPOC is greater than a threshold value TH_BCKWD, then a transition from the subsequent picture set to the previous picture set may be determined 1208. For all other cases, it may be determined 1208 that no transition has occurred. In some configurations, the threshold may take the value TH_FWD=TH_BCKWD=MaxPOC/2.

如果电子设备204确定1208在两个画面集合之间已经发生转换,则电子设备204可以修改1210循环参数。例如,当转换是从先前画面集合进行的时,电子设备204可以递减针对DPB中的每个画面或每个画面集合的循环参数。在另一示例中,当转换是从后续画面集合进行的时,电子设备204可以递增针对DPB中的每个画面或每个画面集合的循环参数。因此,可以关于正在被解码的画面对所有参考画面循环参数进行更新。可以针对正在被解码的每个画面执行一次此更新过程(例如,确定1208在画面集合之间是否已经发生转换,并可能修改1210循环参数)。If the electronic device 204 determines 1208 that a conversion has occurred between two picture sets, the electronic device 204 may modify 1210 the loop parameters. For example, when the conversion is from the previous picture set, the electronic device 204 may decrement the loop parameters for each picture or each picture set in the DPB. In another example, when the conversion is from the subsequent picture set, the electronic device 204 may increment the loop parameters for each picture or each picture set in the DPB. Thus, all reference picture loop parameters may be updated for the picture being decoded. This update process (e.g., determining 1208 whether a conversion has occurred between picture sets and possibly modifying 1210 the loop parameters) may be performed once for each picture being decoded.

循环参数“poc_cycle”的一个备选定义可以是(当前)正在被解码的画面的poc_cycle是0。因此,包括当前正在被解码的画面的画面集合可以是0。An alternative definition of the cycle parameter "poc_cycle" may be that the poc_cycle of the picture being (currently) decoded is 0. Therefore, the picture set including the picture currently being decoded may be zero.

可以按参考画面的MaxPOCSetIndex减去正在被解码的画面的 MaxPOCSetIndex来计算任意其他画面(例如参考画面)的poc_cycle。例如,如果正在被解码的画面的MaxPOCSetIndex是n并且参考画面的 MaxPOCSetIndex是n-1,则参考画面的poc_cycle可以是(n-1)-n=-1。The poc_cycle of any other picture (e.g., a reference picture) can be calculated by subtracting the MaxPOCSetIndex of the picture being decoded from the MaxPOCSetIndex of the reference picture. For example, if the MaxPOCSetIndex of the picture being decoded is n and the MaxPOCSetIndex of the reference picture is n-1, the poc_cycle of the reference picture can be (n-1)-n=-1.

应当注意的是,针对参考画面的poc_cycle可以取决于参考画面与正在被解码的画面之间的MaxPOCSetIndex距离。这可以隐式地通过在编码器108和解码器102二者处跟踪一个画面集合[0,…,MaxPOC-1]与另一画面集合[0,…,MaxPOC-1]之间的转换(例如确定1208转换是否已经发生)来确定。It should be noted that the poc_cycle for a reference picture may depend on the MaxPOCSetIndex distance between the reference picture and the picture being decoded. This may be determined implicitly by tracking the transitions between one picture set [0, ..., MaxPOC-1] and another picture set [0, ..., MaxPOC-1] at both the encoder 108 and the decoder 102 (e.g., determining 1208 whether a transition has occurred).

电子设备204可以基于解码参考画面来对画面进行解码1212。例如,可以基于解码参考画面对比特流214的一部分(不是解码1204用于产生解码参考画面的部分)进行解码1212。例如,可以向运动补偿模块260提供(在DPB中已经跟踪的)解码参考画面,以基于帧间预测机制来生成帧间预测信号268。然后,帧间预测信号268可以用于对画面进行解码1212。在一些配置或实例中,一个或更多个解码参考画面可以用于对画面进行解码1212。The electronic device 204 may decode the picture based on the decoded reference picture 1212. For example, a portion of the bitstream 214 (not the portion used by the decoder 1204 to generate the decoded reference picture) may be decoded 1212 based on the decoded reference picture. For example, the decoded reference picture (already tracked in the DPB) may be provided to the motion compensation module 260 to generate an inter-frame prediction signal 268 based on an inter-frame prediction mechanism. The inter-frame prediction signal 268 may then be used to decode the picture 1212. In some configurations or instances, one or more decoded reference pictures may be used to decode the picture 1212.

图14是示出了用于确定在画面集合之间是否已经发生转换的方法 1300的一个配置的流程图。例如,图14提供了确定1208在如图13所示的画面集合之间是否已经发生转换的一个示例。电子设备204可以确定 1302正在被解码的当前画面的POC(例如表示为“CurPOC”)是否小于上一解码画面的POC(例如表示为“LastPOC”)。例如,电子设备204 可以将正在被解码的当前画面的POC(例如CurPOC)与上一解码画面的POC(例如LastPOC)进行比较,以作出此确定1302。FIG14 is a flow chart illustrating one configuration of a method 1300 for determining whether a transition has occurred between picture sets. For example, FIG14 provides an example of determining 1208 whether a transition has occurred between picture sets as shown in FIG13. The electronic device 204 may determine 1302 whether the POC of a current picture being decoded (e.g., denoted as "CurPOC") is less than the POC of a last decoded picture (e.g., denoted as "LastPOC"). For example, the electronic device 204 may compare the POC of the current picture being decoded (e.g., CurPOC) with the POC of a last decoded picture (e.g., LastPOC) to make this determination 1302.

如果CurPOC<LastPOC,则电子设备204可以确定1308 LastPOC-CurPOC是否大于阈值TH_FWD。如果LastPOC-CurPOC大于阈值TH_FWD,则电子设备204可以确定1308从先前画面集合到后续画面集合的转换已经发生。然而,如果LastPOC-CurPOC不大于TH_FWD,则电子设备204可以确定1308未发生转换。If CurPOC < LastPOC, the electronic device 204 may determine 1308 whether LastPOC - CurPOC is greater than a threshold value TH_FWD. If LastPOC - CurPOC is greater than the threshold value TH_FWD, the electronic device 204 may determine 1308 that a transition from the previous picture set to the subsequent picture set has occurred. However, if LastPOC - CurPOC is not greater than TH_FWD, the electronic device 204 may determine 1308 that no transition has occurred.

如果CurPOC不小于LastPOC,则电子设备204可以确定1304CurPOC 是否大于LastPOC。如果电子设备204确定1304CurPOC大于LastPOC,则电子设备204可以确定1306CurPOC-LastPOC是否大于阈值 TH_BCKWD。如果电子设备确定1306CurPOC-LastPOC大于阈值 TH_BCKWD,则电子设备204可以确定1306从后续画面集合到先前画面集合的转换已经发生。如果电子设备确定1306CurPOC-LastPOC不大于阈值TH_BCKWD,则电子设备204可以确定1306未发生转换。If CurPOC is not less than LastPOC, the electronic device 204 may determine 1304 whether CurPOC is greater than LastPOC. If the electronic device 204 determines 1304 that CurPOC is greater than LastPOC, the electronic device 204 may determine 1306 whether CurPOC minus LastPOC is greater than a threshold value TH_BCKWD. If the electronic device determines 1306 that CurPOC minus LastPOC is greater than the threshold value TH_BCKWD, the electronic device 204 may determine 1306 that a transition from a subsequent picture set to a previous picture set has occurred. If the electronic device determines 1306 that CurPOC minus LastPOC is not greater than the threshold value TH_BCKWD, the electronic device 204 may determine 1306 that no transition has occurred.

如果电子设备204确定1304CurPOC不大于阈值LastPOC,则电子设备可以确定1304未发生转换。在一些配置中,阈值可以取值 TH_FWD=TH_BCKWD=MaxPOC/2。If the electronic device 204 determines 1304 that CurPOC is not greater than the threshold LastPOC, the electronic device may determine that no transition occurred 1304. In some configurations, the threshold may take the value TH_FWD = TH_BCKWD = MaxPOC/2.

图15是示出了用于基于选定画面利用减少开销参考来跟踪参考画面的方法1400的另一更具体配置的流程图。此方法1400可以是用于当重用POC时跟踪哪个画面正在被参考的一个方案。电子设备204(例如解码器202)可以接收1402比特流214。例如,解码器202可以接收1402 包括编码参考画面(以及例如其他编码画面)的比特流214。在一些配置中,比特流214还可以包括开销信息(例如PPS、缓存描述信息、参数、参考画面指示或标识符等)。FIG15 is a flow chart illustrating another more specific configuration of a method 1400 for tracking reference pictures using reduced overhead referencing based on a selected picture. This method 1400 can be one approach for tracking which picture is being referenced when reusing a POC. An electronic device 204 (e.g., a decoder 202) can receive 1402 a bitstream 214. For example, the decoder 202 can receive 1402 a bitstream 214 that includes coded reference pictures (and, for example, other coded pictures). In some configurations, the bitstream 214 can also include overhead information (e.g., PPS, buffer description information, parameters, reference picture indicators or identifiers, etc.).

电子设备204可以对比特流214的一部分进行解码1404,以产生解码参考画面。例如,解码器202可以对比特流214的一部分进行解码 1404,以产生解码参考画面,该解码参考画面被存储在帧存储器264 中。应当注意的是,可以对比特流214的一个或更多个部分进行解码 1404,以产生一个或更多个解码参考画面。The electronic device 204 may decode 1404 a portion of the bitstream 214 to generate a decoded reference picture. For example, the decoder 202 may decode 1404 a portion of the bitstream 214 to generate a decoded reference picture, which is stored in the frame memory 264. It should be noted that one or more portions of the bitstream 214 may be decoded 1404 to generate one or more decoded reference pictures.

电子设备204可以将循环参数与包括解码参考画面的解码画面集合进行关联1406。例如,电子设备204可以将循环参数“poc_cycle”与包括解码参考画面的解码画面集合进行关联1406。The electronic device 204 may associate 1406 a cycle parameter with a decoded picture set including the decoded reference picture. For example, the electronic device 204 may associate 1406 a cycle parameter "poc_cycle" with a decoded picture set including the decoded reference picture.

电子设备204可以确定1408在画面集合之间是否已经发生转换。例如,每当解码器102对画面集合中的预定数量的画面进行解码时,解码器102或电子设备B 104b可以确定1408在两个画面集合之间已经发生了转换。在另一示例中,每当解码器102检测到POC循环(例如从最大值至最小值重新开始)时,解码器102或电子设备B 104b可以确定1408 在两个画面集合之间已经发生了转换。The electronic device 204 may determine 1408 whether a transition has occurred between picture sets. For example, each time the decoder 102 decodes a predetermined number of pictures in a picture set, the decoder 102 or the electronic device B 104 b may determine 1408 that a transition has occurred between two picture sets. In another example, each time the decoder 102 detects a POC loop (e.g., restarting from a maximum value to a minimum value), the decoder 102 or the electronic device B 104 b may determine 1408 that a transition has occurred between two picture sets.

如果电子设备204确定1408在画面集合之间已经发生转换,则电子设备204可以修改1410(例如递减)循环参数。例如,电子设备204递减针对DPB中的每个画面或每个画面集合的循环参数。在另一示例中,电子设备204可以递增循环参数。If the electronic device 204 determines 1408 that a transition has occurred between picture sets, the electronic device 204 may modify 1410 (e.g., decrement) the loop parameter. For example, the electronic device 204 decrements the loop parameter for each picture or each picture set in the DPB. In another example, the electronic device 204 may increment the loop parameter.

电子设备204可以基于解码参考画面来对画面进行解码1412。例如,可以基于参考画面对比特流214的一部分(不是解码1404用于产生解码参考画面的部分)进行解码1412。例如,可以向运动补偿模块260 提供(在DPB中已经跟踪的)解码参考画面,以基于帧间预测机制生成帧间预测信号268。然后,帧间预测信号268可以用于对画面进行解码1412。在一些配置或实例中,一个或更多个解码参考画面可以用于对画面进行解码1412。The electronic device 204 may decode the picture based on the decoded reference picture 1412. For example, a portion of the bitstream 214 (not the portion used by the decoder 1404 to generate the decoded reference picture) may be decoded 1412 based on the reference picture. For example, the decoded reference picture (already tracked in the DPB) may be provided to the motion compensation module 260 to generate an inter-frame prediction signal 268 based on an inter-frame prediction mechanism. The inter-frame prediction signal 268 may then be used to decode the picture 1412. In some configurations or instances, one or more decoded reference pictures may be used to decode the picture 1412.

图16示出了可以在电子设备1504中利用的各种组件。电子设备 1504可以实现为先前所描述的电子设备中的一个或更多个电子设备 (例如电子设备104、204)。16 illustrates various components that may be utilized in an electronic device 1504. The electronic device 1504 may be implemented as one or more of the previously described electronic devices (e.g., electronic devices 104, 204).

电子设备1504包括控制电子设备1504的操作的处理器1517。处理器1517还可以被称为CPU。存储器1511(可以包括只读存储器(ROM)、随机存取存储器(RAM)或可以存储信息的任意类型的设备)向处理器1517提供指令1513a(例如可执行指令)和数据1515a。存储器1511 中的一部分还可以包括非易失性随机存取存储器(NVRAM)。存储器 1511可以与处理器1517进行电子通信。Electronic device 1504 includes a processor 1517 that controls the operation of electronic device 1504. Processor 1517 may also be referred to as a CPU. Memory 1511 (which may include read-only memory (ROM), random access memory (RAM), or any other type of device capable of storing information) provides instructions 1513a (e.g., executable instructions) and data 1515a to processor 1517. A portion of memory 1511 may also include non-volatile random access memory (NVRAM). Memory 1511 may be in electronic communication with processor 1517.

指令1513b和数据1515b还可以驻留在处理器1517中。装载到处理器1517中的指令1513b和/或数据1515b还可以包括装载用于由处理器 1517执行或处理的来自存储器1511的指令1513a和/或数据1515a。指令 1513b可以由处理器1517执行,以实现本文所公开的系统和方法。Instructions 1513b and data 1515b may also reside in processor 1517. Instructions 1513b and/or data 1515b loaded into processor 1517 may also include instructions 1513a and/or data 1515a loaded from memory 1511 for execution or processing by processor 1517. Instructions 1513b may be executed by processor 1517 to implement the systems and methods disclosed herein.

电子设备1504可以包括用于与其他电子设备进行通信的一个或更多个通信接口1519。通信接口1519可以基于有线通信技术、无线通信技术或两者。通信接口1519的示例包括:串行端口、并行端口、通用串行总线(USB)、以太网适配器、IEEE 1394总线接口、小型计算机系统接口(SCSI)总线接口、红外(IR)通信端口、蓝牙无线通信适配器、符合第三代合作伙伴计划(3GPP)规范的无线收发机等。The electronic device 1504 may include one or more communication interfaces 1519 for communicating with other electronic devices. The communication interface 1519 may be based on wired communication technology, wireless communication technology, or both. Examples of the communication interface 1519 include a serial port, a parallel port, a universal serial bus (USB), an Ethernet adapter, an IEEE 1394 bus interface, a small computer system interface (SCSI) bus interface, an infrared (IR) communication port, a Bluetooth wireless communication adapter, a wireless transceiver compliant with the Third Generation Partnership Project (3GPP) specification, and the like.

电子设备1504可以包括一个或更多个输出设备1523和一个或更多个输入设备1521。输出设备1523的示例包括扬声器、打印机等。可以包括在电子设备1504中的一种类型的输出设备是显示设备1525。与本文所公开的配置一起进行使用的显示设备1525可以利用任意合适图像投影技术,例如阴极射线管(CRT)、液晶显示器(LCD)、发光二级管(LED)、气体等离子、电致发光等。可以提供显示控制器1527,用于将存储器1511中存储的数据转化为在显示器1525上示出的文本、图形和/或移动图像(在合适时)。输入设备1521的示例包括键盘、鼠标、麦克风、移动控制设备、按钮、操纵杆、轨迹球、触摸板、触摸屏、光笔等。The electronic device 1504 may include one or more output devices 1523 and one or more input devices 1521. Examples of output devices 1523 include speakers, printers, and the like. One type of output device that may be included in the electronic device 1504 is a display device 1525. The display device 1525 used with the configurations disclosed herein may utilize any suitable image projection technology, such as a cathode ray tube (CRT), liquid crystal display (LCD), light emitting diode (LED), gas plasma, electroluminescence, and the like. A display controller 1527 may be provided for converting data stored in the memory 1511 into text, graphics, and/or moving images (as appropriate) displayed on the display 1525. Examples of input devices 1521 include a keyboard, a mouse, a microphone, a mobile control device, buttons, a joystick, a trackball, a touchpad, a touch screen, a light pen, and the like.

电子设备1504的各种组件可以通过总线系统1529耦合在一起,除了数据总线之外,总线系统1529还可以包括电源总线、控制信号总线和状态信号总线。然而,为了清楚,各种总线在图16被示为总线系统 1529。图16中所示的电子设备1504是功能框图,而不是特定组件的列表。The various components of electronic device 1504 can be coupled together via bus system 1529. In addition to the data bus, bus system 1529 may also include a power bus, a control signal bus, and a status signal bus. However, for clarity, the various buses are shown as bus system 1529 in FIG16 . The electronic device 1504 shown in FIG16 is a functional block diagram rather than a listing of specific components.

图17是示出了根据本文所公开的系统和方法的使用情况的示例的示意图。具体而言,示出了如上所述的三个示例1653a-c。如果比特流包含具有第一分辨率的第一画面和具有第二分辨率的第二画面,如果第一分辨率和第二分辨率不相等,并且如果第二画面不是IDR画面或在第一画面之后且在第二画面之前未接收到序列参数集合(SPS),则这三个示例可能发生。FIG17 is a diagram illustrating an example of a use case according to the systems and methods disclosed herein. Specifically, three examples 1653a-c as described above are shown. These three examples may occur if the bitstream contains a first picture having a first resolution and a second picture having a second resolution, if the first resolution and the second resolution are not equal, and if the second picture is not an IDR picture or a sequence parameter set (SPS) is not received after the first picture and before the second picture.

第一示例1653a示出了在解码画面缓存中存储的具有第一分辨率的画面1655a和具有第二分辨率的画面1657a。在第一示例1653a中,编码器可以向解码器信号通知对解码画面缓存(DPB)中的参考画面进行修改,使得参考画面处于第一分辨率。如果参考画面将仅用于以较低分辨率的运动预测,则这可能是有用的。A first example 1653a shows a picture 1655a at a first resolution and a picture 1657a at a second resolution stored in a decoded picture buffer. In the first example 1653a, the encoder can signal to the decoder that the reference picture in the decoded picture buffer (DPB) is modified so that the reference picture is at the first resolution. This may be useful if the reference picture will only be used for motion prediction at a lower resolution.

第二示例1653b示出了在解码画面缓存中存储的具有第一分辨率的画面1655b和具有第二分辨率的画面1657b。在第二示例1653b中,编码器可以向解码器信号通知对解码画面缓存(DPB)中的参考画面进行修改,使得参考画面处于第二分辨率。当比特流包含在第二画面之后的第三画面时,这可能是有用的,其中,第三画面处于第一分辨率,并且DPB中所存储的长期画面可以用于运动预测。A second example 1653b shows a picture 1655b at a first resolution and a picture 1657b at a second resolution stored in a decoded picture buffer. In the second example 1653b, the encoder can signal to the decoder that the reference picture in the decoded picture buffer (DPB) is modified so that the reference picture is at the second resolution. This can be useful when the bitstream contains a third picture after the second picture, where the third picture is at the first resolution and the long-term pictures stored in the DPB can be used for motion prediction.

第三示例1653c示出了在解码画面缓存中存储的具有第一分辨率的画面1655c和具有第二分辨率的画面1657c。在第三示例1653c中,编码器可以向解码器信号通知对解码画面缓存(DPB)中的参考画面进行修改,使得参考画面具有第一分辨率和第二分辨率两者。当对第二画面之后的第三画面进行解码时参考画面的较高分辨率版本用于运动预测时,这可能是有用的,其中,第三画面是处于第一分辨率。A third example 1653c shows a picture 1655c having a first resolution and a picture 1657c having a second resolution stored in a decoded picture buffer. In the third example 1653c, the encoder can signal to the decoder that a reference picture in the decoded picture buffer (DPB) is modified so that the reference picture has both the first resolution and the second resolution. This can be useful when a higher resolution version of the reference picture is used for motion prediction when decoding a third picture subsequent to the second picture, where the third picture is at the first resolution.

术语“计算机可读介质”指代可以由计算机或处理器访问的任意可用介质。本文所使用的术语“计算机可读介质”可以表示非瞬时和有形的计算机可读介质和/或处理器可读介质。通过示例方式而非限制,计算机可读介质或处理器可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储设备、磁盘存储设备或其他磁存储设备、或可以用于以指令或数据结构的形式承载或存储期望程序代码并可由计算机或处理器访问的任意其他介质。本文所使用的磁盘和光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和光盘,磁盘通常磁性地复制数据,而光盘利用激光光学地复制数据。The term "computer-readable medium" refers to any available medium that can be accessed by a computer or processor. The term "computer-readable medium" as used herein may refer to a non-transient and tangible computer-readable medium and/or a processor-readable medium. By way of example and not limitation, a computer-readable medium or a processor-readable medium may include a RAM, a ROM, an EEPROM, a CD-ROM or other optical disk storage device, a magnetic disk storage device or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer or processor. Disks and optical disks as used herein include compact discs (CDs), laser discs, optical discs, digital versatile discs (DVDs), floppy disks, and optical discs, with disks typically reproducing data magnetically and optical discs reproducing data optically using lasers.

应当注意的是,本文所描述的方法中的一个或更多个方法可以使用硬件来实施和/或执行。例如,本文所描述的方法中的一个或更多个方法可以使用芯片集、专用集成电路(ASIC)、大规模集成电路(LSI) 或集成电路等来实施和/或实现。It should be noted that one or more of the methods described herein may be implemented and/or executed using hardware. For example, one or more of the methods described herein may be implemented and/or realized using a chipset, an application specific integrated circuit (ASIC), a large scale integrated circuit (LSI), or an integrated circuit.

本文所公开的方法中的每一个方法包括用于实现所述方法的一个或更多个步骤或动作。在不脱离权利要求的范围的前提下,方法步骤和/或动作可以相互互换和/或组合为单个步骤。换句话说,除非描述的方法的合适操作需要步骤或动作的特定顺序,否则在不脱离权利要求的范围的前提下,可以修改特定步骤和/或动作的顺序和/或使用。Each of the methods disclosed herein includes one or more steps or actions for implementing the method. Method steps and/or actions may be interchanged with one another and/or combined into a single step without departing from the scope of the claims. In other words, unless proper operation of the described method requires a specific order of steps or actions, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the claims.

应当理解的是,权利要求不限于准确的上述配置和组件。在不脱离权利要求的范围的前提下,可以在本文所描述的系统、方法和装置的布置、操作和细节中作出各种修改、改变和变形。It should be understood that the claims are not limited to the precise configuration and components described above, and that various modifications, changes, and variations may be made in the arrangement, operation, and details of the systems, methods, and apparatus described herein without departing from the scope of the claims.

Claims (7)

1.一种用于对视频比特流进行解码的方法,包括:1. A method for decoding a video bitstream, comprising: 接收包括熵编码的量化变换系数的比特流;Receive a bitstream including entropy-encoded quantization transform coefficients; 从所述比特流接收对解码参考画面的参考描述;Receive a reference description of the decoded reference frame from the bitstream; 确定用于解码的当前画面的画面顺序计数POC,其中每个解码参考画面与画面顺序计数POC相关联,将解码参考画面的画面顺序计数POC在多个集合中排序,每个集合具有[0,…MaxPOC-1]的POC值范围,MaxPOCSetIndex的具体值对应于[0,…MaxPOC-1]的具体集合;Determine the frame sequence count (POC) for the current frame to be decoded, where each decoding reference frame is associated with a frame sequence count (POC). Sort the frame sequence count (POC) of the decoding reference frames in multiple sets, each set having a POC value range of [0,…MaxPOC-1]. The specific value of MaxPOCSetIndex corresponds to the specific set of [0,…MaxPOC-1]. 其中所述参考描述包括长期参考画面的修改参数,The reference description mentioned therein includes modification parameters for the long-term reference frame. 其中所述长期参考画面的修改参数是解码参考画面的MaxPOCSetIndex和当前画面的MaxPOCSetIndex之间的差;The modification parameter of the long-term reference frame is the difference between the MaxPOCSetIndex of the decoded reference frame and the MaxPOCSetIndex of the current frame. 基于所述画面顺序计数和所述参考描述,从解码画面缓存中识别所述当前画面的所述解码参考画面;Based on the frame sequence count and the reference description, the decoded reference frame of the current frame is identified from the decoded frame buffer; 基于所述解码参考画面,使用帧间预测来对所述当前画面进行解码;以及Based on the aforementioned decoding reference frame, inter-frame prediction is used to decode the current frame; and 将所解码的画面缓存到所述解码画面缓存中以用于未来预测。The decoded images are cached in the decoded image cache for future prediction. 2.根据权利要求1所述的方法,其中,所述修改参数是POC循环参数。2. The method according to claim 1, wherein the modified parameter is a POC loop parameter. 3.根据权利要求1所述的方法,其中,所述修改参数是用于开始另一POC循环的指示符。3. The method of claim 1, wherein the modified parameter is an indicator for starting another POC cycle. 4.根据权利要求1至3中任一项所述的方法,其中,所述参考描述包括所述解码参考画面的画面顺序计数。4. The method according to any one of claims 1 to 3, wherein the reference description includes a frame sequence count of the decoded reference frame. 5.根据权利要求2所述的方法,其中,所述POC循环参数位于片首部中。5. The method according to claim 2, wherein the POC cycle parameter is located in the chip header. 6.一种用于对视频流进行编码的方法,包括:6. A method for encoding a video stream, comprising: 确定正在被编码的当前画面的画面顺序计数POC;Determine the frame sequence count (POC) of the current frame being encoded; 从解码画面缓存中识别所述当前画面的参考画面;Identify a reference frame for the current frame from the decoded frame buffer; 基于参考画面使用帧间预测来对所述当前画面进行编码,其中每个参考画面与画面顺序计数POC相关联,将参考画面的画面顺序计数POC在多个集合中排序,每个集合具有[0,…MaxPOC-1]的POC值范围,MaxPOCSetIndex的具体值对应于[0,…MaxPOC-1]的具体集合;The current frame is encoded using inter-frame prediction based on reference frames, wherein each reference frame is associated with a frame sequence count (POC), and the frame sequence count (POC) of the reference frames is sorted in multiple sets, each set having a POC value range of [0,…MaxPOC-1], and the specific value of MaxPOCSetIndex corresponds to the specific set of [0,…MaxPOC-1]. 确定对参考画面的参考描述;Determine the reference description for the reference image; 发送包括编码画面和对参考画面的参考描述在内的比特流;Send a bitstream including the encoded screen and a reference description of the reference screen; 其中所述比特流包括熵编码的量化变换系数,The bitstream mentioned therein includes entropy-encoded quantization transform coefficients. 其中所述参考描述包括长期参考画面的修改参数,The reference description mentioned therein includes modification parameters for the long-term reference frame. 其中长期参考画面的修改参数是用于对所述当前画面进行编码的参考画面的MaxPOCSetIndex和所述当前画面的MaxPOCSetIndex之间的差;The modification parameter for the long-term reference frame is the difference between the MaxPOCSetIndex of the reference frame used to encode the current frame and the MaxPOCSetIndex of the current frame. 基于用于对所述当前画面进行编码的参考画面使用帧间预测来对所述当前画面进行解码;以及Inter-frame prediction is used to decode the current frame based on a reference frame used for encoding the current frame; and 将所解码的画面缓存到所述解码画面缓存中以用于未来预测。The decoded images are cached in the decoded image cache for future prediction. 7.一种用于对视频比特流进行解码的装置,包括:7. An apparatus for decoding a video bitstream, comprising: 处理器;以及Processor; and 与处理器电通信的数据存储器,其中指令存储在所述数据存储器上;A data memory that is in electrical communication with the processor, wherein instructions are stored in the data memory; 其中所述处理器可执行所述指令以执行权利要求1的方法。The processor thereon can execute the instructions to perform the method of claim 1.
HK18101320.9A 2011-10-13 2018-01-26 Method for encoding/decoding video stream and device for decoding video stream HK1242091B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/273,191 2011-10-13
US13/287,015 2011-11-01
US13/291,961 2011-11-08
US13/294,996 2011-11-11

Publications (2)

Publication Number Publication Date
HK1242091A1 HK1242091A1 (en) 2018-06-15
HK1242091B true HK1242091B (en) 2020-10-09

Family

ID=

Similar Documents

Publication Publication Date Title
CN103918266B (en) Tracking a reference frame based on a selected frame on an electronic device
CN104412588B (en) Means for signaling long-term reference pictures in a parameter set
US8787688B2 (en) Tracking a reference picture based on a designated picture on an electronic device
WO2013153822A1 (en) Devices for sending and receiving a long-term reference picture indicator
HK1242091B (en) Method for encoding/decoding video stream and device for decoding video stream
HK1237563B (en) Method for encoding / decoding video stream and device for decoding video stream
HK1237562B (en) Method for decoding video stream and method for encoding video stream
HK1237564B (en) Tracking a reference picture based on a designated picture on an electronic device
HK1237565B (en) Method for encoding / decoding video stream and device for encoding video stream
HK40042397B (en) Tracking a reference picture based on a designated picture on an electronic device
HK40042397A (en) Tracking a reference picture based on a designated picture on an electronic device
HK1238041A1 (en) Tracking a reference picture based on a designated picture on an electronic device
HK1242091A1 (en) Method for encoding/decoding video stream and device for decoding video stream
HK1237562A1 (en) Method for decoding video stream and method for encoding video stream
HK1238041B (en) Tracking a reference picture based on a designated picture on an electronic device
HK1237563A1 (en) Method for encoding / decoding video stream and device for decoding video stream
HK1237565A1 (en) Method for encoding / decoding video stream and device for encoding video stream
HK1237564A1 (en) Tracking a reference picture based on a designated picture on an electronic device