CN104350750B - 用于简化视频随机访问的约束和单元类型的方法 - Google Patents

用于简化视频随机访问的约束和单元类型的方法 Download PDF

Info

Publication number
CN104350750B
CN104350750B CN201380031429.0A CN201380031429A CN104350750B CN 104350750 B CN104350750 B CN 104350750B CN 201380031429 A CN201380031429 A CN 201380031429A CN 104350750 B CN104350750 B CN 104350750B
Authority
CN
China
Prior art keywords
picture
pictures
leading
bit stream
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201380031429.0A
Other languages
English (en)
Other versions
CN104350750A (zh
Inventor
G.J.萨利文
S.卡努穆里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN104350750A publication Critical patent/CN104350750A/zh
Application granted granted Critical
Publication of CN104350750B publication Critical patent/CN104350750B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream

Landscapes

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

Abstract

本文所公开的是对于具有完全随机访问(CRA)图片和/或其它类型的随机访问点(RAP)图片的比特流的创新。对于RAP图片类型的新的类型定义和策略约束可以简化基本视频流数据的单元到容器格式的映射。这样的创新可有助于改进视频编码系统的能力,以便更灵活地执行自适应视频递送、制作编辑、商业插入等等。

Description

用于简化视频随机访问的约束和单元类型的方法
背景技术
本申请涉及视频编码和解码,并且特别地涉及与随机访问点图片(picture)有关的改进。
工程师使用压缩(也称为源编码)来减小数字视频的比特率。压缩通过将信息转换成较低比特率形式来降低存储和传输视频信息的成本。解压缩(也称为解码)从压缩形式重建原始信息版本。“编解码器”是编码器/解码器系统。
在过去的二十年里,已经采用各种视频编解码器标准,包括H.261、H.262(MPEG-2或者ISO/IEC 13818-2)、H.263和H.264(AVC或者ISO/IEC 14496-10)标准和MPEG-1(ISO/IEC 11172-2)、MPEG-4视觉(ISO/IEC 14496-2)和SMPTE 421M标准。最近,HEVC标准正处于开发中。视频编解码器标准典型地定义了用于编码的视频比特流的语法的选项,当在编码和解码中使用特定特征时在该比特流中详述参数。在许多情况下,视频编解码器标准也提供关于解码器应该执行的解码操作的细节,以在解码中达到正确的结果。
在广播和流播应用中,让解码器随机访问已编码比特流中的点并对来自随机访问点的图片进行解码的能力是令人想要的特性。例如当观看者在广播或者流之间切换时、或者当执行比特流拼接(splice)时,发生这样的随机访问。
发明内容
概括而言,详细说明介绍了对于具有完全随机访问(CRA,clean random access)图片和/或其它类型随机访问点(RAP)图片的比特流的创新。对于RAP图片的类型的新类型定义和策略约束可以简化基本视频流数据的单元到容器格式的映射。这样的创新可有助于改进视频编码系统的能力,以便更灵活地执行自适应视频递送、制作编辑、商业插入等等。
本文描述的创新包括,但不受限于,允许处在比特流中间而不仅仅是在比特流开始处的CRA图片具有一个或者多个潜在地不可解码的图片,其在比特流中在CRA图片后出现。在一些使用中,这些潜在地不可解码的图片在以下的意义上是相关于CRA图片的前导图片(leading picture),即:虽然在比特流中它们是在CRA图片之后出现,但是它们具有先于CRA图片的显示输出顺序的被识别的显示输出顺序。换言之,除了允许在比特流开始处的CRA图片具有不可解码的前导图片之外,也允许比特流具有这样的CRA图片,即:其不在比特流开始处,且其具有在比特流中跟随在它之后的潜在不可解码的图片。关于这一点,前导图片是按比特流顺序(也称为编码顺序、解码顺序等等)跟随在某个CRA图片之后、但按显示顺序(也称为输出顺序)先于该CRA图片的图片。允许在作为比特流开始部分的CRA图片后面(按比特流顺序)跟随由于缺失之前的参考图片而不能被解码的前导图片。现在,也允许在比特流中在落入比特流中间的CRA图片后面跟随这样的不可解码的图片。按照本公开技术的实施例,已经移除了针对在比特流中部CRA图片之后不可解码前导图片的存在的约束。
在某些示例性实现中,添加标记或者其它指示符(例如,作为条带(slice)头中的图片级的信息等等),其指示这样的对于CRA图片的不可解码前导图片的潜在存在。指示符可以被使用来(例如通过解码器)确定如何处理前导图片(例如,解码器是否应该对前导图片进行解码)。例如,当使用本文描述的断链(broken link)功能性时,不同的网络抽象层(NAL)单元类型被用来指示前导图片是否存在以及存在什么类型的前导图片。进一步地,这些NAL单元类型不同于用于CRA的常规NAL单元类型。同样,在某些示例性实现中,添加标记或者其它指示符(例如,作为在图片级用于潜在不可解码的图片的语法元素、作为对于潜在不可解码的图片而用信号告知的NAL单元类型等等)以明确地标识潜在不可解码的图片,而不是使用图片分成前导图片的分类作为识别潜在不可解码的图片的规则。
本文描述的其它创新包括但不受限于:(a)用于RAP图片的单元类型的新定义,其简化视频基本流数据的单元到容器格式的映射,(b)对RAP图片的策略约束,其简化了这样的映射操作,以及(c)冗余单元类型的移除。
本文引进的新CRA图片类型和它们相关联的标记或者其它指示符的实施例有时被称作“断链访问”(BLA)图片。对这样的BLA图片和它们相关联的指示符的使用可以使解码器可以从其开始解码的访问点的数量增加,从而改进视频编码系统可用以执行多种多样的操作的速度和无缝性,所述操作是诸如快进操作、倒回操作、扫描操作、拼接操作、或者在视频流之间的切换操作。此外,对这样的BLA图片和它们相关联的指示符的使用可以允许视频编码或者视频解码系统更灵活地执行自适应视频递送、制作编辑、商业插入等等。
从以下参考附图进行的详细说明中,本发明的前述的和其它的目的、特征和优点将变得更明显。
附图说明
图1是在其中可以实现一些所描述的实施例的示例性计算系统的图。
图2a和2b是在其中可以实现一些所描述的实施例的示例性网络环境的图。
图3是与其结合可以实现一些所描述的实施例的示例性编码器系统的图。
图4是与其结合可以实现一些所描述的实施例的示例性解码器系统的图。
图5是图示包括CRA图片的示例性已编码图片的序列的图。
图6是示出用于生成比特流的第一示范性方法的流程图。
图7是示出用于解码比特流的第一示范性方法的流程图。
图8是示出用于生成比特流的第二示范性方法的流程图。
图9是示出用于解码比特流的第二示范性方法的流程图。
图10是示出用于生成比特流的第三示范性方法的流程图。
图11是示出用于解码比特流的第三示范性方法的流程图。
图12是示出用于处理比特流部分的第一示范性方法的流程图。
图13是示出用于处理比特流部分的第二示范性方法的流程图。
图14是示出用于生成比特流的第四示范性方法的流程图。
图15是示出用于解码比特流的第四示范性方法的流程图。
具体实施方式
本详细说明介绍了用于编码和解码具有完全随机访问(CRA)图片和其它随机访问点(RAP)图片的比特流的创新。特别地,本详细说明描述了在其中允许比特流具有在比特流开始处的CRA图片、并且也允许比特流具有不在比特流开始处的CRA图片的实施例,其中允许这样的CRA图片的任一个具有一个或者多个不可解码的前导图片。这样的CRA图片在本文中有时被称作“断链访问”(BLA)图片。本详细说明进一步描述了如下的实施例,即其中用于RAP图片的单元类型的新定义和对于RAP图片的策略约束简化了视频基本流数据的单元到容器格式的映射,并且消除了冗余单元类型。
本文描述的创新中的一些是参考特定于HEVC标准的语法元素和操作来举例说明的。例如,参考HEVC标准的某些草案版本,包括HEVC标准的JCTVC-I1003-“High efficiencyvideo coding (HEVC) text specification draft 7”,JCTVC-11003_d5,9th meeting,日内瓦,2012年4月(下文称为“JCTVC-I1003_d5”)。本文所描述的创新也可以对于其它标准或者格式实现。
更一般而言,对于本文描述的示例的各种替换方案是可能的。例如,本文描述的方法的任一个可以通过改变所描述的方法动作的顺序、通过分割、重复或者省略某些方法动作等等而被更改。本公开技术的各个方面可以组合使用或者单独使用。不同的实施例使用所描述的创新中的一个或者多个。本文所描述的创新中的一些创新处理了背景技术中所提到的问题的一个或者多个。典型地,给定的技术/工具不能解决所有这样的问题。
I.示例性计算系统
图1图示适当的计算系统(100)的概括性示例,在其中可以实现所描述创新中的若干个创新。计算系统(100)不打算提出任何关于使用或者功能性的范围的限制,因为本创新可以在多种通用或专用计算系统中实现。
参考图1,计算系统(100)包括一个或者多个处理单元(110,115)和存储器(120,125)。在图1中,这个最基本配置(130)被包括在虚线中。处理单元(110,115)执行计算机可执行指令。处理单元可以是通用的中央处理单元(CPU)、专用集成电路(ASIC)中的处理器或者任何其它类型的处理器。在多处理器系统中,多个处理单元执行计算机可执行指令,以便增强处理能力。例如,图1示出中央处理单元(110)以及图形处理单元或者协处理单元(115)。有形存储器(120,125)可以是可被(一个或多个)处理单元访问的易失性存储器(例如,寄存器、高速缓存器、RAM)、非易失性存储器(例如,ROM、EEPROM、闪速存储器等等)、或者是这两者的一些组合。存储器(120,125)存储软件(180),所述软件(180)以适合通过(一个或多个)处理单元执行的计算机可执行指令的形式,通过简化到媒体容器格式的映射的单元类型和/或策略约束(参见V、VI和VII节),来实现用于编码或者解码RAP图片的一种或者多种创新。
计算系统可以具有附加的特征。例如,计算系统(100)包括存储装置(140)、一个或者多个输入设备(150)、一个或者多个输出设备(160)、以及一个或者多个通信连接(170)。诸如总线、控制器或者网络的互连机制(未示出)将计算系统(100)的组件互连。典型地,操作系统软件(未示出)为在计算系统(100)中执行的其它软件提供操作环境,并且协调计算系统(100)的组件的活动。
有形存储装置(140)可以是可拆卸的或者是不可拆卸的,并且包括磁盘、磁带或者卡型盒式磁带、CD-ROM、DVD、或者可被用来以非瞬时方式存储信息并可在计算系统(100)内被访问的任何其它介质。存储装置(140)存储用于软件(180)的指令,所述软件(180)通过简化到媒体容器格式的映射的单元类型和/或策略约束(参见V、VI和VII节),来实现用于编码或者解码RAP图片的一种或者多种创新。
(一个或多个)输入设备(150)可以是触摸式输入设备,诸如键盘、鼠标、笔、或者跟踪球、话音输入设备、扫描设备、或者将输入提供到计算系统(100)的其它设备。对于视频编码而言,(一个或多个)输入设备(150)可以是相机、视频卡、电视调谐器卡、或者以模拟或者数字形式接受视频输入的相似设备、或者将视频样本读入计算系统(100)的CD-ROM或者CD-RW。(一个或多个)输出设备(160)可以是显示器、打印机、扬声器、CD写入器、或者从计算系统(100)提供输出的其它设备。
(一个或多个)通信连接(170)使通信能够通过通信介质到达另一个计算实体。通信介质传递信息,诸如计算机可执行指令、音频或者视频输入或输出、或者具有调制的数据信号形式的其它数据。调制的数据信号是使它的特性中的一个或多个以如下方式设置或改变的信号,即:将信息编码在信号中。作为示例,而非限制,通信介质可以使用电、光、RF或者其它载体。
创新可以在计算机可读介质的一般上下文中被描述。计算机可读介质是任何可用的、在计算环境中可访问的有形介质。作为示例,而非限制,对于计算系统(100),计算机可读介质包括存储器(120,125)、存储装置(140)、以及上文中的任何项的组合。
创新可以在计算机可执行指令的一般上下文中被描述,计算机可执行指令诸如是被包括在程序模块中的、在目标真实或者虚拟的处理器上在计算系统中执行的那些。一般地,程序模块包括执行特定任务或者实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等等。程序模块的功能性可以在各种实施例中按所期望那样的在程序模块之间进行组合或者分割。用于程序模块的计算机可执行指令可以在本地或者在分布式计算系统中执行。
术语“系统”和“设备”在本文中被可互换地使用。除非上下文清楚地指明,否则,两个术语均不暗示对于计算系统或者计算设备的类型的任何限制。一般而言,计算系统或者计算设备可以是本地的或者是分布式的,并且可以包括具有实现本文所描述功能性的软件的专用硬件和/或通用硬件的任何组合。
本公开方法也可以使用被配置来执行本公开方法的任一个的专门计算硬件实现。例如,本公开方法可以由专门被设计或配置来实现本公开方法的任一个的集成电路(例如,专用集成电路(ASIC)(诸如ASIC数字信号处理单元(DSP)、图形处理单元(GPU)、或者诸如现场可编程门阵列(FGPA)的可编程逻辑器件(PLD))实现。
为了介绍,详细说明中使用如“确定”和“使用”这样的术语来描述计算系统中的计算机操作。这些术语是对于由计算机执行的操作的高级别抽象,且不应该与由人类执行的动作相混淆。对应于这些术语的实际计算机操作取决于实现而变化。
II.示例性网络环境
图2a和2b示出包括视频编码器(220)和视频解码器(270)的示例性网络环境(201,202)。编码器(220)和解码器(270)使用合适的通信协议通过网络(250)而连接。网络(250)可以包括互联网或者其它计算机网络。
在图2a所示出的网络环境(201)中,每个实时通信(“RTC”)工具(210)包括用于双向通信的编码器(220)和解码器(270)两者。给出的编码器(220)可以产生符合SMPTE 421M标准、ISO/IEC 14496-10标准(也被称为H.264或者AVC)、HEVC标准、其它标准或者专有格式的输出,有相对应的解码器(270)接受来自编码器(220)的已编码数据。双向通信可以是视频会议、视频电话呼叫或者其它双方通信情景的一部分。虽然在图2a中的网络环境(201)包括两个实时通信工具(210),但是网络环境(201)也可以改而包括三个或者更多个参与多方通信的实时通信工具(210)。
实时通信工具(210)通过编码器(220)管理编码。图3示出示例性编码器系统(300),其可以被包括在实时通信工具(210)中。替换地,实时通信工具(210)使用另外的编码器系统。实时通信工具(210)还通过解码器(270)管理解码。图4示出示例性解码器系统(400),其可以被包括在实时通信工具(210)中。替换地,实时通信工具(210)使用另外的解码器系统。
在图2b所示出的网络环境(202)中,编码工具(212)包括对用于递送到多个回放工具(214)的视频进行编码的编码器(220),其中回放工具(214)包括解码器(270)。可以提供单向通信,用于视频监控系统、web相机监视系统、远程桌面会议演示、视频分发系统(例如,流播的视频流分发系统)或者其中视频被编码并从一个位置发送到一个或者多个其它位置的其它情景。虽然图2b中的网络环境(202)包括两个回放工具(214),但是网络环境(202)可以包括更多或者更少的回放工具(214)。一般而言,回放工具(214)与编码工具(212)进行通信,以确定回放工具(214)要接收的视频流。回放工具(214)接收流,将接收的已编码数据缓冲达合适的时段,然后开始解码和回放。
图3示出示例性编码器系统(300),其可以被包括在编码工具(212)中。替换地,编码工具(212)使用另外的编码器系统。编码工具(212)也可以包括服务器侧的控制器逻辑,用于管理与一个或者多个回放工具(214)的连接。图4示出示例性解码器系统(400),其可以被包括在回放工具(214)中。替换地,回放工具(214)使用另外的解码器系统。回放工具(214)也可以包括客户侧的控制器逻辑,用于管理与编码工具(212)的连接。
III.示例性编码器系统
图3是示例性编码器系统(300)的框图,与其结合可以实现一些所描述的实施例。编码器系统(300)可以是能够在多个编码模式的任一个中操作的通用编码工具,编码模式诸如是用于实时通信的低等待时间编码模式、转码模式、和用于从文件或者流中的媒体回放的常规编码模式,或者编码器系统(300)可以是适于一种这样的编码模式的专用编码工具。编码器系统(300)可以被实现为操作系统模块、应用库的一部分或者独立的应用。总体上,编码器系统(300)接收来自视频源(310)的源视频帧(311)的序列,并且产生已编码数据作为到信道(390)的输出。输出到信道的已编码数据可以包括对于这样的RAP图片的已编码数据,即:所述RAP图片具有在V、VI和VII节中描述的策略限制和/或单元类型。
视频源(310)可以是相机、调谐器卡、存储介质或者其它数字视频源。视频源(310)以例如30帧每秒的帧速率产生视频帧序列。当在本文中使用时,术语“帧”一般指源、编码的或者重建的图像数据。对于逐行式视频,帧是逐行式视频帧。对于隔行式视频,在示例性实施例中,隔行式视频帧在编码之前被解除隔行(de-interlaced)。替换地,两个互补的隔行式视频场被编码为隔行式视频帧或者单独的场。除了指示逐行式视频帧之外,术语“帧”还可以指示单个不成对的视频场、视频场的互补对、代表在给定时间的视频对象的视频对象平面、或者较大图像中的感兴趣区域。视频对象平面或者区域可以是包括场景的多个对象或者区域的较大图像的一部分。
到达的源帧(311)被存储在源帧临时存储器存储区(320)中,所述源帧临时存储器存储区(320)包括多个帧缓冲存储区(321,322,…,32n)。在源帧存储区(320)中一个帧缓冲器(321,322等等)容纳一个源帧。在源帧(311)的一个或者多个已经被存储在帧缓冲器(321,322等等)中后,帧选择器(330)周期性地从源帧存储区(320)中选择单独的源帧。帧被帧选择器(330)选择来输入到编码器(340)的顺序可以与帧被视频源(310)产生的顺序不同,例如,帧可以在顺序上提前,以易于时间上的反向预测。在编码器(340)之前,编码器系统(300)可以包括预处理器(未示出),其在编码之前对所选择的帧(331)执行预处理(例如,滤波)。
编码器(340)编码所选择的帧(331),以产生编码的帧(341),并且还产生存储器管理控制操作(MMCO)信号(342)或者参考图片组(RPS)信息。如果当前帧不是已经被编码的第一帧,则当执行其编码过程时,编码器(340)可以使用一个或者多个已经存储在解码帧临时存储器存储区(360)中的之前编码/解码的帧(369)。这样的存储的解码帧(369)被用作为对当前源帧(331)的内容进行帧间预测(inter-frame prediction)的参考帧。一般地,编码器(340)包括多个执行编码任务的编码模块,编码任务是诸如运动估计和补偿、频率变换、量化和熵编码。由编码器(340)执行的确切操作可以取决于压缩格式而变化。输出的编码数据的格式可以是Windows Media Video格式、VC-1格式、MPEG-x格式(例如,MPEG-1、MPEG-2或者MPEG-4)、H.26x格式(例如,H.261、H.262、H.263、H.264)、HEVC格式或者其它格式。
例如,在编码器(340)中,经帧间编码的预测的帧根据从参考帧进行预测来表示。运动估计器估计宏块、块或者源帧(341)的其它样本组相对于一个或者多个参考帧(369)的运动。当使用多个参考帧时,多个参考帧可以来自不同的时间方向(temporal direction)或者相同的时间方向。运动估计器输出被熵编码的运动信息,诸如运动向量信息。运动补偿器将运动向量施加到参考帧,以确定经运动补偿的预测值。编码器确定块的经运动补偿的预测值与相对应的原始值之间的差(如果存在)。这些预测残值被使用频率变换、量化和熵编码来进一步编码。相似地,对于帧内预测而言,编码器(340)可以确定用于块的帧内预测值,确定预测残值,并且对预测残值编码。特别地,编码器(340)的熵编码器压缩量化的变换系数值以及某些辅助信息(例如,运动向量信息、量化参数值、模式判决、参数选择)。典型的熵编码技术包括Exp-Golomb编码、算术编码、差分编码、霍夫曼(Huffman)编码、游程长度编码、可变长度到可变长度(V2V)编码、可变长度到固定长度(V2F)编码、LZ编码、词典编码、概率区间划分熵编码(PIPE,probability interval partitioning entropy coding)和上述项的组合。熵编码器可以对不同种类的信息使用不同的编码技术,并且可以从特定编码技术内的多个码表当中进行选择。
编码的帧(341)和MMCO/RPS信息(342)被解码过程仿真器(350)处理。解码过程仿真器(350)实现解码器功能性中的一些功能性,例如,实施解码任务以重建在运动估计和补偿中被编码器(340)使用的参考帧。解码过程仿真器(350)使用MMCO/RPS信息(342)来确定给出的编码帧(341)是否需要被重建和存储,以便在要被编码的后续帧的帧间预测中用作为参考帧。如果MMCO/RPS信息(342)指示需要存储编码的帧(341),则解码过程仿真器(350)对由解码器实施的解码过程建模,所述解码器接收编码的帧(341)并且产生相对应的解码的帧(351)。这样做时,当编码器(340)已使用被存储在解码帧存储区(360)中的(一个或多个)解码的帧(369)时,解码过程仿真器(350)也使用来自存储区(360)的(一个或多个)解码的帧(369)作为解码过程的一部分。
解码帧临时存储器存储区(360)包括多个帧缓冲存储区(361,362,…,36n)。解码过程仿真器(350)使用MMCO/RPS信息(342)来管理存储区(360)的内容,以便识别具有不再被编码器(340)需要来用作参考帧的帧的任何帧缓冲器(361,362,等等)。在对解码过程建模之后,解码过程仿真器(350)将新解码的帧(351)存储在已经以这种方式识别过的帧缓冲器(361,362,等等)中。
编码的帧(341)和MMCO/RPS信息(342)也在临时编码数据区(370)中缓冲。聚集在编码数据区(370)中的已编码数据可以包含用于具有在V、VI和VII节中描述的策略约束和/或单元类型的RAP图片的已编码数据作为基本编码视频比特流的语法的一部分。在编码数据区(370)聚集的已编码数据也可以包括有关已编码视频数据的媒体元数据(例如,作为一个或者多个补充增强信息(SEI)消息或者视频可用性信息(VUI)消息中的一个或者多个参数)。
来自临时编码数据区(370)的聚集的数据(371)由信道编码器(380)处理。信道编码器(380)可以将聚集的数据分包(packetize),以便作为媒体流(例如,按照诸如ISO/IEC14496-12这样的媒体容器格式)进行传输,在这种情况下,信道编码器(380)可以添加语法元素来作为媒体传输流的语法的一部分。或者,信道编码器(380)可以对聚集的数据进行组织,以作为文件(例如,按照诸如ISO/IEC14496-12这样的媒体容器格式)存储,在这种情况下,信道编码器(380)可以添加语法元素来作为媒体存储文件的语法的一部分。或者更一般地,信道编码器(380)可以实施一个或者多个媒体系统复用协议或者传输协议,在这种情况下,信道编码器(380)可以添加语法元素来作为(一个或多个)协议的语法的一部分。信道编码器(380)提供到信道(390)的输出,信道(390)代表存储装置、通信连接或者另外的用于输出的信道。
IV.示例性解码器系统
图4是示例性解码器系统(400)的框图,与其结合可以实现一些所描述的实施例。解码器系统(400)可以是能够在多个解码模式的任一个中操作的通用解码工具,解码模式是诸如用于实时通信的低等待时间解码模式和用于从文件或者流中的媒体回放的常规解码模式,或者解码器系统(400)可以是适于一种这样的解码模式的专用解码工具。解码器系统(400)可以被实现为操作系统模块、应用库的一部分或者单独的应用。总体上,解码器系统(400)接收来自信道(410)的已编码数据,并且产生重建帧作为给输出目的地(490)的输出。已编码数据可以包括用于具有在V、VI和VII节中描述的策略约束和/或单元类型的RAP图片的已编码数据。
解码器系统(400)包括信道(410),其可以代表作为输入的存储装置、通信连接、或者用于已编码数据的其它信道。信道(410)产生已经被信道编码的已编码数据。信道解码器(420)可以处理已编码数据。例如,信道解码器(420)将已被聚集来作为媒体流(例如,按照诸如ISO/IEC14496-12的媒体容器格式)传输的数据拆包,在这种情况下,信道解码器(420)可以解析作为媒体传输流的语法的一部分而添加的语法元素。或者,信道解码器(420)将已被聚集来作为文件(例如,按照诸如ISO/IEC14496-12的媒体容器格式)存储的已编码视频数据分离,在这种情况下,信道解码器(420)可以解析作为媒体存储文件的语法的一部分而添加的语法元素。或者,更一般地,信道解码器(420)可以实施一个或者多个媒体系统解复用协议或者传输协议,在这种情况下,信道解码器(420)可以解析作为(一个或多个)协议的语法的一部分而添加的语法元素。
从信道解码器(420)输出的已编码数据(421)被存储在临时编码数据区(430)中,直到已经接收到足够数量的这样的数据为止。已编码数据(421)包括已编码帧(431)和MMCO/RPS信息(432)。在编码数据区(430)的已编码数据(421)可以包含作为基本编码视频比特流的语法的一部分的、用于具有在V、VI或者VII节中描述的策略约束和/或单元类型的RAP图片的已编码数据。在编码数据区(430)的已编码数据(421)也可以包括有关已编码视频数据的媒体元数据(例如,作为在一个或者多个SEI消息或者VUI消息中的一个或者多个参数)。一般而言,编码数据区(430)临时存储已编码数据(421),直到这样的已编码数据(421)被解码器(450)使用。这时,用于已编码帧(431)和MMCO/RPS信息(432)的已编码数据被从编码数据区(430)转移到解码器(450)中。随着解码的继续,新的已编码数据添加到编码数据区(430)中,而保留在编码数据区(430)中的最旧的已编码数据被转移到解码器(450)中。
解码器(450)周期性地对已编码帧(431)解码,以产生相对应的解码帧(451)。视情况而定,当执行其解码过程时,解码器(450)可以使用一个或者多个之前解码的帧(469)作为用于帧间预测的参考帧。解码器(450)从解码帧临时存储器存储区(460)中读取这样的之前解码的帧(469)。一般地,解码器(450)包括多个执行解码任务的解码模块,所述解码任务是诸如熵解码、逆量化、逆频率变换和运动补偿。由解码器(450)执行的确切操作可以取决于压缩格式而变化。
例如,解码器(450)接收用于已压缩帧或者帧序列的已编码数据,并且产生包括解码帧(451)的输出。在解码器(450)中,缓冲器接收用于已压缩帧的已编码数据,并且使所接收的已编码数据对熵解码器而言是可得到的。熵解码器典型地通过施加在编码器中执行的熵编码的逆过程,而对已熵编码的量化的数据以及已熵编码的辅助信息进行熵解码。V、VI和VII节描述了可以被解码器450解码的用于RAP图片、策略约束和/或单元类型的已编码数据的示例。运动补偿器将运动信息施加到一个或者多个参考帧,以形成正被重建的帧的子块、块和/或宏块(一般地,块)的运动补偿预测。帧内预测模块可以根据邻近的、之前重建的样本值而在空间上预测当前块的样本值。解码器(450)也重建了预测残差。逆量化器将已熵解码的数据逆量化。逆频率变换器将量化的频域数据转换成空间域信息。对于被预测的帧而言,解码器(450)将重建的预测残差与运动补偿预测相结合,以形成重建帧。解码器(450)可以相似地将预测残差与来自帧内预测的空间预测相结合。视频解码器(450)中的运动补偿回路包括自适应的去块效应(de-blocking)滤波器,用来平滑已解码帧(451)中跨块边界行和/或列两边的不连续性。
解码帧临时存储器存储区(460)包括多个帧缓冲存储区(461,462,…,46n)。解码帧存储区(460)是DPB的示例。解码器(450)使用MMCO/RPS信息(432)来识别它可以在其中存储已解码帧(451)的帧缓冲器(461,462,等等)。解码器(450)在该帧缓冲器中存储已解码帧(451)。
输出定序器(480)使用MMCO/RPS信息(432)来识别按输出顺序将被产生的下一帧何时在解码帧存储区(460)中可得到。当按输出顺序将被产生的下一帧(481)在解码帧存储区(460)中是可得到的时,其由输出定序器(480)读取,并且被输出到输出目的地(490)(例如,显示器)。一般而言,帧通过输出定序器(480)从解码帧存储区(460)输出的顺序可以与帧通过解码器(450)解码的顺序不同。
V. 对具有CRA图片的比特流的改进
本节描述用于对具有完全随机访问(CRA)图片的比特流进行编码和/或解码的若干变化。特别地,本节介绍其中允许具有CRA图片的比特流有处在比特流中部的、潜在具有一个或者多个不可解码的前导图片的CRA图片的示例。上文描述的任一编码器或者解码器可被适配成使用所公开的编码和解码技术。
按照JCTVC-I1003_d5,CRA图片是仅包含I条带(仅使用帧内预测来解码的条带)的已编码图片。进一步地,在解码顺序和输出顺序上都跟在CRA图片之后的所有已编码图片一定不使用根据任何在解码顺序或者输出顺序上处在CRA图片之前的图片的帧间预测;并且按解码顺序处在CRA图片之前的任何图片在输出顺序上也处在CRA图片之前。“前导图片”是按解码顺序跟在某个其它特定图片之后但按输出顺序处在它之前的已编码图片。当前导图片与CRA图片相关联时,它是按解码顺序跟在CRA图片之后但是按输出顺序处在CRA图片之前的已编码图片。与CRA图片相关联的前导图片具有的图片顺序计数小于CRA图片的图片顺序计数。
按照JCTVC-I1003_d5,“即时解码刷新图片”或者“IDR图片”是导致解码过程将所有参考图片标注为“未用于参考”的已编码图片。按解码顺序跟在IDR图片之后的所有已编码图片可以被解码,而无需根据按解码顺序处在IDR图片之前的任何图片进行帧间预测。按解码顺序的每个已编码视频序列的第一个图片是IDR图片或者CRA图片。
图5是图示一系列图片的方框图(500),所述的一系列图片包括三个CRA图片、多个包括双向预测条带的图片(“B”图片)、以及多个包括单向预测条带的图片(“P”图片)。图5中的箭头被用来举例说明为了运动补偿(例如,按照一个或者多个运动向量)的目的,B图片和P图片取决于哪些图片。图5还举例说明了图片的输出顺序和解码顺序。在图5所示的系列中,第一CRA图片按解码顺序处在比特流的开始处,而剩余的两个CRA图片处在比特流的中间(即,按解码顺序处在比特流的开始处之后)。对于第二CRA图片(按解码顺序的图片5)或者第三CRA图片(按解码顺序的图片11)而言,存在若干个按解码顺序跟在CRA图片之后、但按输出顺序处在它之前的前导图片。对于这些CRA图片的每一个,有一个标记指示有关可能跟在该CRA图片之后的前导图片的信息,如下文所解释的。
按照之前的HEVC提案JCTVC-H0496,允许比特流以不是IDR图片的CRA图片开始。例如,图5中所示的系列以CRA图片开始。进一步地,允许这样的CRA图片具有不可解码的前导图片(按解码顺序跟在CRA图片之后但在输出/显示顺序上处在它之前的、包含对比特流中实际上不存在的参考图片的参考的图片)。按照JCTVC-H0496,如果比特流以CRA图片开始,则与CRA图片相关联的前导图片,如果其存在于比特流中的话,被忽略(从比特流中移除或者丢弃)。(图5没有示出这样的在第一CRA图片之后的前导图片,第一CRA图片是按解码顺序的图片1)。
允许比特流以不是IDR图片的CRA图片开始是旨在增强编辑的灵活性。JCTVC-I1003_d5要求位于比特流中间的CRA拼接点是“可察觉的”。即,当解码器在早于当前CRA图片的某个IDR或者CRA处开始对比特流进行解码时,要求CRA图片的所有的前导图片都是可完全解码的。要求解码图片缓冲器(DPB)包含被通过前导图片的语法而参考的所有的图片(在DPB图片组描述语法中或者被参考以用于帧间预测)。因此,如果在比特流的开始之后的CRA图片具有前导图片,则所述图片被认为是可解码的。例如,在图5中,第三CRA图片(按解码顺序的第11个图片)按解码顺序后面跟有两个图片(按解码顺序的图片12和13),而这两个图片按输出顺序是处在它之前。这两个前导图片仅依赖于第三CRA图片。由于那个缘故,即便解码在作为随机访问点的第三CRA点处开始,它们也将是可解码的。然而,如果CRA图片的布置被约束成使得保证任何前导图片都是可解码的话,那么编码器可能在它可以在何处指定图片为CRA图片方面受到严格限制。
按照本公开技术的某些实施例,移除了关于CRA图片的前导图片的可解码性的要求,因为其是不必须和不合期望的。本公开技术的实施例附加地允许不在比特流开始处的CRA图片向解码器提供信息,指示与流中部的CRA图片相关联的前导图片的存在和类型。如下文中更完全地解释的,这样的CRA图片在本文中有时被称作BLA图片,并且可以具有多种断链访问图片类型中的一种。相应地,使用这样的实施例的编码器或者视频处理设备可以更灵活地在比特流中布置BLA类型的CRA图片,正如图5中所图示的。在图5中,第二CRA图片(按解码顺序的图片5)按解码顺序后面跟有两个前导图片(按解码顺序的图片6和7),而这两个前导图片按输出顺序处在该CRA图片之前(按输出顺序的图片5和6相对于按输出顺序的图片7)。在之前的方法中,比特流中部的CRA图片不能被用作为拼接点或者用作为开始解码(作为扫描、快进、倒回、或者比特流切换操作的一部分)的随机访问点,因为第二CRA具有这样的前导图片,即:所述前导图片在解码时带有对在CRA图片之前的参考图片的运动补偿依赖性,而这样的参考图片并不保证是可得到的。在图5中,例如,按解码顺序为第6和第7的前导图片依赖于按解码顺序为第2的图片。然而,使用本公开技术的实施例,当发生拼接操作或者随机访问操作或者比特流切换操作时,第二CRA图片可以被指定为BLA图片(例如,使用将该图片标识为BLA类型的CRA图片的标记或者语法元素(在本文中有时仅称为“BLA图片”))。这样的指示可以被解码器使用来恰当地处理任何与BLA相关联的不可解码的前导图片(例如,通过不对不可解码的前导图片进行解码、通过不将不可解码的前导图片输出、或者以其它方式丢掉不可解码的图片来进行)。此外,在一些实现中,并且如下文中更完全地解释的,可以规定多种类型的BLA图片,从而向解码器提供关于前导图片是否可以与BLA图片相关联以及什么类型的前导图片可以与BLA图片相关联的附加信息。这多种BLA类型提供了附加信息,使得解码器可以恰当地解码比特流,并且只输出可解码的图片。
在某些实现中,用于CRA图片的语法元素指示“断链”的潜在存在,因为用于CRA图片的前导图片可能正缺少解码那些前导图片所需要的参考图片。例如,用信号告知不可解码的前导图片是否潜在地存在的标记被添加到CRA图片的图片级信息中。该标记可以被添加到条带头或者添加到可以被建立的另一个语法位置中(例如,用于图片级信息的另一个合适位置,诸如APS)。在一个特定的实现中,当该标记等于“1”时,允许比特流包含CRA图片的由于缺少在前的参考图片而不可解码的前导图片(当前对于开始比特流的CRA图片的前导图片,就是这样)。因此,在解码期间,所述标记用信号告知解码器忽略或者丢弃与CRA图片相关联的前导图片(包括也许可解码的前导图片)。
在一个特定的实现中,具有等于“1”的断链标记的CRA图片本质上将与IDR图片相同方式地动作,除了下文的情况:
将允许前导图片跟在CRA图片之后(按比特流顺序),前导图片可以指在比特流中不存在的图片。CRA图片的前导图片将被解码器忽略和丢弃。例如,用于解码器的标准将规定解码器跳过用于CRA图片的所有前导图片的解码过程,并且不输出它们(对于CRA图片在比特流的开始处,已经就是这样)。因此断链标记向解码器指示:与CRA图片相关联的前导图片应该被忽略和丢弃,即便前导图片中的一个或者多个实际上也许是可解码的。
进一步地,将不要求CRA的图片顺序计数等于“0”。替代地,并且在一个示例性实现中,图片顺序计数MSB将被设置为“0”,而LSB将被设置为在CRA图片中发送的LSB值(如已经对于在比特流的开始处的CRA图片所规定的)。此外,在一些实现中,允许IDR图片的图片顺序计数是非零的。换言之,不要求IDR图片的图片顺序计数等于“0”。
在某些实现中,具有等于“1”的断链标记(例如,broken_link_flag)的CRA图片也包含no_output_of_prior_pics_flag和random_access_pic_id, no_output_of_prior_pics_flag以与对于IDR图片相同的方式动作,而random_access_pic_id以与IDR图片的idr_pic_id相同的方式动作。在一些实现中,当前idr_pic_id被重新命名为random_access_pic_id,并且使得其约束施加到CRA图片和IDR图片两者,而不只是施加到IDR图片。此外,类似于IDR图片,具有等于“1”的断链标记的CRA图片可以激活不同的SPS、改变图片尺寸等等。
在这个实现中,当对于CRA图片的断链标记值为“0”时,不允许比特流包含CRA图片的由于缺少在前参考图片而可能不是可解码的前导图片,除非那个CRA图片是比特流的(按解码顺序的)第一个图片。即,比特流不包含按解码顺序处在有“0”的断链标记的CRA图片之后的前导图片,除非当解码在按解码顺序的较早的CRA或者IDR处开始时这样的前导图片是完全可解码的。因此,在解码期间,标记用信号告知解码器去解码与CRA图片相关联的前导图片。然而,当CRA图片是比特流中的第一图片但是具有为“0”的断链标记时,则标记可以被忽略,并且该CRA图片可以被视为“好像”断链标记是“1”。
在图5示出的示例中,对于第二CRA图片(按解码顺序的图片5),标记值可以是“1”,因为一些前导图片可能在随机访问时缺少参考图片。这允许图5中的第二CRA图片被用于比之前所可能的更大的随机访问功能性。例如,第二CRA图片现在可以被用作为开始图片,作为扫描、快进、倒回操作或者比特流切换操作的一部分。此外,第二CRA图片可以被用作为拼接点,比特流在该处被剪切以在该第二个图片处开始,并且接着被添加到另一个比特流的结尾。因为第二个CRA图片被标识为BLA图片(断链标记值为“1”),所以作为结果的比特流可被恰当地解码并代表有效的比特流。此外,在某些实现中,视频编码器或者视频处理设备可以更改CRA图片的状态,使其变成BLA图片。例如,作为拼接操作的一部分,视频处理设备可以修改CRA图片的指定,以指示其为BLA图片,使得作为结果的拼接比特流将是有效的。对于第三CRA图片(按解码顺序的图片11),标记值将为“0”,因为在随机访问时,没有前导图片将会缺少参考图片。
虽然上文描述的实施例涉及用于用信号告知解码器是否应该跳过与CRA图片相关联的不可解码的前导图片的“标记”,但是也可以使用任何适当的指示符。例如,在一些实施例中,使用规定图片的各种特性的另外的图片级指示符或者语法元素。在一些实现中,用于这个目的的语法元素可以是与给定的CRA图片相关联的、被称为网络抽象层(“NAL”)单元类型(或者与比特流中的图片相关联的其它指示符)的语法指示符。例如,可以将一个NAL单元类型值使用于被指示具有潜在“断链”状态的CRA图片,而可以将另一个NAL单元类型值使用于被指示不具有这样的潜在“断链”状态的CRA图片。此外,虽然上文描述的实施例涉及“完全”随机访问图片,但是本文公开的创新可以与任何随机访问图片或者等同物(诸如恢复帧或者其它被潜在用于开始某个比特流的图片)相结合地使用。此外,在这样的替换的实施例中,指示符可以被用来用信号告知相关联的、任何类型的不可解码图片的可能性(不仅仅是基于时间输出顺序而识别的前导图片;例如,包括以一些其它方式识别的前导图片)。
虽然上文描述的实施例涉及通过确定图片是否是CRA图片的前导图片(即,通过识别是否按解码顺序跟在CRA图片之后的图片按输出顺序处在CRA图片之前)而对潜在不可解码的图片进行识别,但是可以使用其它的或者附加的分类规则或者指示符来识别潜在不可解码的图片。例如,“标记”或者语法元素值,或者与比特流中的图片相关联的其它指示符,可以与每个图片一起发送,以指示其是否是潜在不可解码的图片,而不管其相对于相关联的CRA图片的输出顺序位置的输出顺序位置。换言之,指示符是针对潜在不可解码的图片而被用信号告知的。在一些实现中,用于这个目的的语法元素可以是被称为NAL单元类型的语法指示符。例如,对于被指示为不是CRA图片的图片而言,当随机访问解码过程在CRA图片的位置处开始,或者已经指示“断链”CRA图片时,一个NAL单元类型值可以由将要作为潜在不可解码的图片而丢弃的图片使用,而另一个NAL单元类型值可以由被指示为可解码的图片使用。要作为潜在不可解码的图片而被丢弃的前导图片在本文中有时被称作(或者在比特流中被指示为)“标记用于丢弃”(TFD)图片或者随机访问跳过的前导(RASL)图片。可解码的前导图片在本文中有时被称作(或者在比特流中被指示为)随机访问可解码前导(RADL)图片(或者可解码前导图片(DLP))。
在一些实施例中,确定是否可以解码某个图片可能不但包括对图片的解码过程是否可能取决于一些按比特流顺序在CRA图片之前出现的图片的识别,而且也可能包括对图片的解码过程是否可能取决于一些按比特流顺序在一个以上CRA图片之前出现的图片的识别。例如,这种确定可以是有用的,因为典型地对于解码器而言,其必须能够在随机访问解码过程被发起之后识别跟在所遇到的一个以上的CRA图片之后的图片是否能够被解码。在这样的情景下,有用的可能是如下地约束参考图片选择:图片不应使用比特流中按解码顺序处在多于x个CRA图片之前的任何图片作为用于图片间预测的参考。例如,x为2。没有这样的约束,当由解码器执行随机访问时,可能无法保证恢复――即便是在已经遇到多个CRA图片之后。
在许多方面,如果明确地指示出在一些情况下将被丢弃的图片的话,则IDR图片的使用是不必要的。IDR图片可以按比特流顺序后面跟有(按输出顺序的)前导图片,这些前导图片在由解码器执行随机访问时要被解码和输出。如果图片是否要被解码的分类是通过明确的语法指示符(诸如NAL单元类型)来确定而不是通过图片顺序计数隐含地确定,那么CRA图片可以具有IDR图片的所有功能性。例如,在某些具体的实现中,与比特流中图片相关联的语法元素值或者其它指示符(诸如NAL单元类型值)可以被使用来标识至少下列四种类型的图片:
·将图片标识为没有“断链”的CRA图片的一种类型,
·将图片标识为具有“断链”的CRA图片的一种类型,
·将图片标识为当解码过程在按比特流顺序的任何在前CRA图片的位置处开始时总是要被解码的图片的一种类型,以及
·将图片标识为当随机访问已经在按比特流顺序的在前CRA图片的随机访问点处执行时,或者当按比特流顺序的在前CRA图片被指示为“断链”时不被解码的图片的一种类型。
VI. 用于RAP图片的策略约束和单元类型
在HEVC草案JCTVC-I1003_d5中,RAP(“随机访问点”)图片由NAL单元类型4到8代表。取决于RAP图片的特性,对于媒体容器格式的一些类型而言,单元类型可以被映射到下文描述的三种SAP(“流访问点”)类型之一,这三种SAP类型也在以下文档中被定义:ISO/IEC14496-12 4th Edition, “Information technology-Coding of audio-visualobjects—Part 12: ISO base media file format”, w12640, 100th MPEG meeting, 日内瓦, 2012年4月。虽然定义了总计6种SAP类型,但是RAP图片仅可以被映射到该文档的SAP类型中的三种。可用的SAP类型包括:类型 1、类型2和类型 3。
类型 1对应于“闭合GOP随机访问点”(其中按解码顺序从点ISAP开始的所有访问单元可以被正确地解码,导致没有间隙的、正确解码的访问单元的连续时间序列)的一些示例,对其而言,按解码顺序的访问单元也是按呈现顺序的第一访问单元。
类型 2对应于“闭合GOP随机访问点”的其它示例,对其而言,媒体流中按解码顺序的从点ISAU开始的第一访问单元不是按呈现顺序的第一访问单元。
类型 3对应于“开放GOP随机访问点”的示例,其中有按解码顺序跟在点ISAU之后的一些访问单元,其不能被正确地解码,并且具有比时间TSAP更短的呈现时间。
从系统的角度而言,合期望的是,使SAP映射尽可能简单,同时允许使用尽可能多的类型。在本公开技术的一些实施例中,RAP图片包括以下对许可的单元类型的调整和约束中的一个或多个。
在下文的示例中,可以取决于NAL单元类型,进一步将RAP图片分类成CRA图片、BLA(“断链访问”)图片或者IDR图片。在JCTVC-I1003_d5的HEVC设计中,CRA图片由NAL单元类型4和5代表,BLA图片由NAL单元类型6和7代表,而IDR图片由NAL单元类型8代表。仅当CRA或者BLA图片不具有任何相关联的TFD(“标记用于丢弃”)图片时,NAL单元类型5和7可以仅仅被分别用于CRA和BLA图片。
A. IDR图片的移除或者对IDR图片的约束
与上文V节中公开的某些实施例相一致,BLA图片的概念已经在来自提案JCTVC-I0404(G. J. Sullivan, "CRA pictures with broken links", JCTVC-I0404, 9thmeeting, 日内瓦, 2012年4月)的JCTVC-I1003_d5的HEVC设计中被采纳。该提案还指出,CRA/BLA图片可以达到IDR图片的功能性(及更多),并且因此推荐从HEVC设计中放弃IDR图片的概念,但是IDR图片保留在JCTVC-I1003_d5的HEVC设计中。
在本公开技术的某些实施例中,依然使用IDR图片,但是编码遵照另外的约束,其简化了IDR图片到SAP类型的映射。
在JCTVC-I1003的HEVC设计中,IDR图片可以映射到SAP类型1或者2。如果IDR图片具有前导图片(按解码顺序跟在当前图片之后但按输出顺序处在它之前的已编码(并且可解码的)图片),则它将被映射到SAP类型2。如果IDR图片不具有前导图片,则它将被映射到SAP类型1。所以,当系统遇到IDR图片时,系统必须检查是否存在前导图片,以便确定正确的到SAP类型的映射,这可能会不必要地消耗计算和存储资源来检查罕见的情况。
按照本公开技术的一个示范性实施例,IDR图片被约束成不具有前导图片。由于这个约束,IDR图片总是映射到类型1的SAP。
B. 用于CRA/BLA图片的NAL单元类型
在本公开技术的某些实现中,当不存在TFD图片时,CRA图片的功能性与BLA图片的功能性完全相同。因此,可以避免出于这个目的而定义两种NAL单元类型的必要性,并且单个类型值可以指示不具有相关联的TFD图片的CRA图片或者BLA图片。
而且,不具有相关联的TFD图片的CRA/BLA图片可以取决于它是否具有前导图片而被映射到SAP类型1或者2。在特定的实现中,冗余NAL单元类型中的一种可以被使用来指示这种情况:其中CRA/BLA图片直接映射到SAP类型1(当CRA/BLA图片不具有前导图片时这种情况会发生)。对于不具有前导图片的CRA/BLA的常见情况而言,这简化了到合适的SAP类型的映射。
一个具体的示范性实现包括如下文表1中所定义的NAL单元类型(在这个示例中, 为NAL单元类型4到7):
NAL单元类型 描述 可能的SAP类型
4 CRA图片 1,2,3
5 BLA图片 1,2,3
6 不具有相关联的TFD图片的CRA/BLA图片 1,2
7 不具有前导图片的CRA/BLA图片 1
表1。
另一个具体示范性实现包括下文所定义的NAL单元类型(在这个示例中,为NAL单 元类型16-21)。在这个示例中,TFD前导图片被称为随机访问跳过的前导(“RASL”)图片。在 特定的实现中,所有的RASL图片都是相关联的BLA或者CRA图片的前导图片。当相关联的RAP 图片是BLA图片或者是比特流中的第一已编码图片时,不输出RASL图片,并且RASL图片可能 不是可正确解码的,因为RASL图片可能包含对于比特流中不存在的图片的参考。进一步地, RASL图片不被用作为对于非RASL图片的解码过程的参考图片。在某些示例实现中,当存在 时,所有RASL图片按解码顺序均在同一相关联的RAP图片的所有拖后图片(trailing picture)之前。此外,在下文的示例中,可解码的前导图片被称为随机访问可解码前导 (RADL)图片。在特定的实现中,所有的RADL图片是前导图片,并且RADL图片不被用作为对于 同一相关联的RAP图片的拖后图片的解码过程的参考图片。在某些示例性实现中,当存在 时,所有的RADL图片按解码顺序均在同一相关联的RAP图片的所有拖后图片之前。进一步 地,在特定实现中,BLA图片(a)仅包含I条带,而且可以是按解码顺序的比特流中的第一个 图片,或者可能在比特流中稍后出现;(b)开始新的已编码视频序列,并且对解码过程具有 和IDR图片相同的作用;以及(c)包含规定了非空参考图片组的语法元素。
NAL单元类型 描述 NAL单元类型名称
16 BLA图片,其可具有相关联的RASL图片,所述RASL图片不被解码器输出,并且可能是不可解码的,因为它们可能包含对于比特流中不存在的图片的参考。所述BLA图片还可具有相关联的、被规定要被解码的RADL图片。 BLA_W_LP
17 BLA图片,其不具有相关联的RASL图片,但是可具有相关联的、被规定要被解码的RADL图片。 BLA_W_DLP
18 BLA图片,其不具有任何相关联的前导图片。 BLA_N_LP
19 IDR图片,其不具有比特流中存在的相关联的RASL图片,但是可在比特流中具有相关联的RADL图片。 IDR_W_DLP
20 IDR图片,其不具有比特流中存在的相关联的前导图片。 IDR_N_LP
21 CRA图片 CRA_NUT
表2。
替换地,其它类型值被使用于视频基本比特流数据(例如,其它NAL单元类型值或者其它视频类型值)和/或媒体容器格式数据(例如,其它SAP类型值或者其它容器格式值),其与对于RAP以及图片类型所许可的组合的这些约束中的一个或者多个相一致。
C. 对于前导图片的比特流顺序的约束
当编码系统将RAP图片映射到可能的SAP类型中的一种时,它检查前导图片的存在,并且如果存在的话,则检查图片的任一个是否是TFD图片。按照JCTVC-I1003_d5的HEVC设计中的对图片间依赖性的约束,当前RAP图片的前导图片可以存在于比特流中当前RAP图片和下一个RAP图片之后的任何地方。对于前导图片的搜索范围潜在地是非常长的。
为了使该搜索更简单,并且按照本公开技术的某些实现,存在约束以确保比特流中所有前导图片(即,按解码顺序)均出现在用于RAP图片的任何非前导图片之前。即,对于给定的RAP图片而言,把比特流约束成使得用于该RAP图片的所有前导图片在比特流中(即,按解码顺序)均出现在用于该RAP图片的任何非前导图片之前。
VII. 用于实现本公开技术的一些方面的一般实施例
图6-11是按照本公开技术举例说明示例性实施例的流程图。在图6-11中示出的方法可以包括上文或者下文公开的具体方面的任何一个或者多个。此外,在图6-11中示出的方法不应被解读为限制,因为其中所示出的方法动作中的任何一个或者多个可以被单独地使用,或者在与另一个方法的各种组合或者子组合中使用。此外,在某些情况下,方法动作的次序可以被重新安排或者至少部分地同时执行。此外,如上文所提到的,在图6-11中公开的方法可以作为存储在计算机可读存储介质(其中这样的存储介质不包括传播的波)上的计算机可执行指令来实现,或者通过数字媒体处理系统来实现。
图6是示例性方法600,其可以通过编码器或者数字媒体处理工具或者设备来执行。
在610,图片(例如,来自视频序列中图片组的图片)被指定为是多种图片类型中的一种。在某些实施例中,图片类型包括下列的任意一种或者多种:(1)指示图片是能够被用作随机访问点(RAP)图片的断链访问(BLA)图片,并且进一步指示该图片不具有任何相关联的不可解码前导图片、但是可具有一个或者多个相关联的可解码前导图片的类型;(2)指示图片是能够被用作RAP图片的BLA图片,并且进一步指示该图片不具有任何相关联的前导图片的类型;(3)指示图片是能够被用作RAP图片的BLA图片,并且进一步指示该图片可具有一个或者多个相关联的可解码或者不可解码的前导图片的类型;(4)指示已编码图片是可具有相关联的RADL图片的即时解码刷新(IDR)图片的类型;(5)指示已编码图片是不具有任何相关联的前导图片的IDR的类型;和/或(6)指示已编码图片是能够被用作RAP图片的完全随机访问(CRA)图片的类型。
如上文所说到的,其中的一种或者多种类型指示图片是BLA图片。在某些实施例中,BLA图片仅包含I条带,并且可能按解码顺序是比特流中的第一个图片,或者可能在比特流中稍后出现。进一步地,在这些实施例中,BLA图片作为新的已编码视频序列的开始,并且对于解码过程具有与IDR图片相同的作用;然而,BLA图片包含规定了非空参考图片组(其可以在解码期间被忽略)的语法元素。
在一些实施例中,上文所说到的第一BLA类型指示:BLA图片不具有相关联的随机访问跳过的前导(RASL)图片,但是可具有相关联的、被规定要被解码的随机访问可解码前导(RADL)图片(例如,NAL单元类型可以被用来规定前导图片是RASL图片或是RADL图片)。在某些实现中,所有的RASL图片是相关联的BLA或者CRA图片的前导图片。当相关联的RAP图片是BLA图片或者是比特流中的第一已编码图片时,RASL图片不被解码器输出,并且可能不是可正确解码的,因为RASL图片可能包含对于比特流中不存在的图片的参考。RASL图片不被用作为对于非RASL图片的解码过程的参考图片。进一步地,在某些实现中,当存在时,所有的RASL图片按解码顺序均处在同一相关联的RAP图片的所有拖后图片之前。此外,在某些实现中,所有的RADL图片都是前导图片。RADL图片不被用作为对于同一相关联的RAP图片的拖后图片的解码过程的参考图片。进一步地,在某些实现中,当存在时,所有的RADL图片按解码顺序均处在同一相关联的RAP图片的所有拖后图片之前。虽然该类型可以具有多种多样的名称,但是在一个特定的实现中,该类型被命名为"BLA_W_DLP"。
在一些实施例中,上文所说到的第二BLA类型指示:BLA图片不具有任何相关联的前导图片。虽然该类型可以具有多种多样的名称,但是在一个特定的实现中,该类型被命名为"BLA_N_LP"。
在某些实施例中,上文所说到的第三BLA类型指示:BLA图片可具有相关联的RASL图片,其不被解码器输出,并且可能不是可解码的,因为它们可能包含对于比特流中不存在的图片的参考。该类型还指示:BLA图片也可具有相关联的、被规定要被解码的RADL图片。虽然该类型可以具有多种多样的名称,但是在一个特定的实现中,该类型被命名为“BLA_W_LP”。
在一些实施例中,上文所说到的第四类型指示:图片是不具有存在于比特流中的相关联的RASL图片的IDR图片,但是可在比特流中具有相关联的RADL图片。在特定实现中,IDR图片仅包含I条带,并且可能按解码顺序是比特流中的第一个图片,或者可能在比特流中稍后出现。每个IDR图片按解码顺序都是已编码视频序列的第一个图片。IDR图片不具有相关联的RASL图片。虽然该类型可以具有多种多样的名称,但是在一个特定的实现中,该类型被命名为“IDR_W_DLP”。
在某些实施例中,上文所说到的第五类型指示:图片是不具有任何相关联的前导图片的IDR图片。虽然该类型可以具有多种多样的名称,但是在一个特定的实现中,该类型被命名为“IDR_N_LP”。
在一些实施例中,上文所说到的第六类型指示:图片是CRA图片。在特定实现中,CRA图片仅包含I条带,并且可能按解码顺序是比特流中的第一个图片,或者可能在比特流中稍后出现。进一步地,CRA图片可以具有相关联的RADL或者RASL图片。当CRA图片按解码顺序是比特流中的第一个图片时,该CRA图片按解码顺序是已编码视频序列中的第一个图片,并且任何相关联的RASL图片不被解码器输出,并且可能不是可解码的,因为它们可能包含对于比特流中不存在的图片的参考。虽然该类型可以具有多种多样的名称,但是在一个特定实现中,该类型被命名为“CRA_NUT”。
在612,生成比特流的至少一部分。在举例说明的实施例中,比特流的该至少一部分包括为图片指定的图片类型(例如,作为语法元素,诸如NAL单元类型)。
在某些实现中,方法600由编码器执行,并且该方法进一步包括对图片编码。比特流可以进一步包括已编码图片。可以使用多种多样的编码技术。例如,可以使用上文描述的编码技术的任一种。在某些实施例中,被指定为BLA图片的已编码图片不是比特流的第一个图片。
在一些实施例中,方法进一步包括对一个或者多个与已编码图片相关联的前导图片和非前导图片编码。在这样的实施例中,生成比特流的至少一部分的动作可以进一步包括对已编码的前导图片和已编码的非前导图片排序,使得在比特流的该至少一部分中所有的已编码前导图片都在所有的已编码非前导图片之前。前导图片也可以被指定为RADL或者RASL图片(例如,使用NAL单元类型值)。
图7是由解码器或者数字媒体处理工具或者设备执行的示例性方法700。一般而言,方法700可被执行来解码从例如图6的方法600中生成的比特流。
在710,接收比特流的至少一部分(例如,缓冲、访问、加载、或者以其它方式准备用于进一步处理)。在举例说明的实施例中,比特流的该至少一部分包括已编码图片和为该已编码图片指定的图片类型。图片类型选自多种图片类型中的一种。在某些实施例中,多种图片类型包括下列的一种或者多种:(1)指示已编码图片是能够被用作随机访问点(RAP)图片的断链访问(BLA)图片,并且进一步指示该已编码图片不具有任何相关联的不可解码前导图片、但是可具有一个或者多个相关联的可解码前导图片的类型;(2)指示已编码图片是能够被用作RAP图片的BLA图片,并且进一步指示已编码图片不具有任何相关联的前导图片的类型;(3)指示已编码图片是能够被用作RAP图片的BLA图片,并且进一步指示已编码图片可以具有一个或者多个相关联的可解码或者不可解码的前导图片的类型;(4)指示已编码图片是可具有相关联的RADL图片的即时解码刷新(IDR)图片的类型;(5)指示已编码图片是不具有任何相关联的前导图片的IDR的类型;和/或(6)指示已编码图片是能够被用作RAP图片的完全随机访问(CRA)图片的类型。关于对于图片类型的示范性实现的进一步细节在上文中相对于图6进行了描述。
在712,对已编码图片进行解码。可以使用多种多样的解码技术。例如,可以使用上文描述的解码技术的任一种。
在某些实施例中,已编码图片不是比特流的第一个图片。在一些实施例中,该方法进一步包括对与710的已编码图片相关联的一个或者多个前导图片和与710的已编码图片相关联的一个或者多个非前导图片进行解码。在这样的实施例中,可以对比特流的该至少一部分排序,使得与第一图片相关联的所有已编码前导图片都处在与第一图片相关联的所有已编码非前导图片之前。此外,前导图片可以被指定为RADL或者RASL图片(例如,使用NAL单元类型值)。
图8是由编码器或者数字媒体处理工具或者设备执行的示例性方法800。
在810,生成比特流的至少一部分。在举例说明的实施例中,生成比特流以使得它包括不是比特流的初始图片的随机访问点图片(例如,随机访问点图片处在比特流的初始图片之后的图片顺序位置上),并且使得随机访问点图片具有一个或者多个相关联的不可解码的前导图片。进一步地,在举例说明的实施例中,生成比特流从而包括对于解码器的指示,该指示用信号告知:该随机访问点图片是解码器可以开始解码的图片。
在某些实施例中,该指示包括进一步的信息。例如,该指示可以进一步指示RAP图片是否具有任何相关联的前导图片,并且如果已编码图片具有任何相关联的前导图片的话,是否所有相关联的前导图片都是可解码的。该指示可以具有各种各样的格式。例如,在一个实现中,该指示是语法元素(诸如NAL单元类型,举例而言,正如表2中所示出的)。在一些实现中,比特流的至少一部分进一步包括一个或者多个用于已编码图片的前导图片和一个或者多个用于已编码图片的非前导图片。在这样的实现中,生成比特流的至少一部分的动作可以包括对用于已编码图片的前导图片和用于该已编码图片的非前导图片排序,使得所有的前导图片都在非前导图片之前。
在812,输出比特流的该至少一部分(例如,通过存储在计算机可读存储介质中、写入文件、或者其它的这样形式的输出来进行)。
图9是由解码器或者数字媒体处理工具或者设备执行的示例性方法900。
在910,接收比特流的至少一部分。在举例说明的实施例中,比特流的该至少一部分包括在比特流的初始图片之后的图片顺序位置上的随机访问点图片。进一步地,比特流的该至少一部分包括一个或者多个与随机访问点图片相关联的不可解码前导图片。比特流的该至少一部分也可以包括对于随机访问点图片是否具有任何相关联的前导图片的指示,并且如果随机访问点图片具有任何相关联的前导图片的话,则具有对于是否所有相关联的前导图片都是可解码的指示。所述指示可以具有各种各样的格式。例如,在一个实现中,所述指示是语法元素(诸如NAL单元类型,举例而言,正如在表2中所示出的),其用信号告知随机访问点图片是否具有任何相关联的前导图片,并且如果随机访问点图片具有任何相关联的前导图片的话,则具有对于是否所有相关联的前导图片都是可解码的指示。
在912,对随机访问点图片进行解码。
图10是由编码器或者数字媒体处理工具或者设备执行的示例性方法1000。
在1010,生成比特流,其包括被指定为随机访问点(“RAP”)的图片。此外,所述生成被执行,使得用于RAP的任何和所有前导图片按解码顺序都处在用于RAP的任何非前导图片之前。在1012,输出比特流(例如,通过在计算机可读存储介质中存储比特流或者通过将比特流写入到文件中来进行)。
图11是由解码器或者数字媒体处理工具或者设备执行的示例性方法1100。
在1110,包括用于多个图片的已编码数据的比特流被接收(例如,缓冲到存储器、访问、加载、或者以其它方式输入以便进一步处理)。在举例说明的实施例中,比特流包括被指定为随机访问点(“RAP”)图片的图片。进一步地,在举例说明的实施例中,比特流在这样的约束下生成,所述约束为:用于RAP的任何和所有前导图片按解码顺序均处在用于RAP的任何非前导图片之前。
在1112,对多个图片进行解码。
本公开技术的实施例可以被用来增加可用的随机访问点的数量,解码器可以从所述随机访问点开始解码而基本上不影响视频回放质量。因此,本公开技术的实施例可以改进视频编码系统可用以操作的速度和/或无缝性。例如,对BLA图片和相关联的指示符的使用可以改进多种多样的操作——诸如快进操作、倒回操作、扫描操作、拼接操作、或者在视频流之间的切换操作——的性能,这是通过呈现增加数量的随机访问点以用于开始解码过程以及通过呈现可以被解码器用来适当地操控在随机访问点处(例如,在BLA图片处)开始的视频的信息而实现的。下文的图12和13介绍了示范性视频处理方法,其利用了本文公开的BLA技术。本公开的技术可以在视频编码或者视频解码系统中被使用来更灵活地执行自适应视频递送、产品编辑、商业插入等等。
图12是由媒体处理工具或者设备执行的示例性方法1200。
在1210,对第一比特流部分进行解码。在1212,检测关于在第二比特流部分中的已编码图片是断链访问图片的指示(例如,通过解析和处理用于图片的NAL单元类型值)。在1214,在断链访问图片处开始对第二比特流部分的至少一些进行解码。在某些实现中,解码进一步包括跳过(例如,不解码或者不输出)与断链访问图片相关联的第二比特流的一个或者多个图片。例如,解码器可以对被指定为RADL图片的前导图片进行解码、但跳过对被指定为RASL图片的图片的解码。在1216,输出来自第一比特流部分的已解码图片,后面跟随来自第二比特流部分的已解码图片。
示例性方法1200可以作为由媒体处理设备(例如,视频回放工具或者设备)实施的快进操作、倒回操作或者扫描操作(例如,由希望扫描视频流中的特定点或者时间的用户发起)的一部分而被执行。在这样的实例中,这些比特流部分是相同比特流的组成部分。也可以当流播、广播或信道切换操作执行时,执行示例性方法1200(例如,通过与线缆、卫星或者互联网电视系统相连接地使用的视频解码器执行)。在这样的实例中,比特流部分来自不同的比特流。
此外,在某些实现中,所述指示指示出:已编码图片是断链访问图片的多种类型中的一种,其中所述多种类型包括下列的两种或者更多种:可以包括一个或者多个前导图片的类型,可以包含一个或者多个前导图片但是不包含不可解码的前导图片的类型,不包含前导图片的类型。所述指示也可以用信号告知本文所公开的其它类型的任何一种或者多种。
图13是由媒体处理设备或者应用执行的示例性方法1300。
在1310,接收到第一比特流的至少一部分。在1312,接收到第二比特流的至少一部分。在1314,将第一比特流的至少一部分与第二比特流的至少一部分在断链访问图片处拼接。在某些实施例中,拼接操作附加地包括省略与断链访问图片相关联的随机访问跳过的前导(RASL)图片。此外,在一些实施例中,拼接可以包括将完全随机访问图片标识为拼接点,并且将完全随机访问图片指定为拼接的比特流中的断链访问图片。此外,在某些实施例中,所述方法可以进一步包括检测关于断链访问图片是多种断链访问图片类型中的一种(例如,本文所公开的类型中的任一种)的指示(例如,通过解析和处理用于图片的NAL单元类型值)。
方法1300可以例如由视频编辑设备或者应用、或者由媒体回放设备或者应用来执行。在某些实施例中,所述指示指示出:已编码图片是断链访问图片的多种类型中的一种,其中所述多种类型包括下列的任何两种或者更多种:可以包括一个或者多个前导图片的类型,可以包含一个或者多个前导图片但是不包含不可解码的前导图片的类型,或者不包含前导图片的类型。所述指示也可以用信号告知本文所公开的其它类型的任何一种或者多种。
图14是可以由编码器或者数字媒体处理工具或者设备执行的示例性方法1400。
在1410,对BLA图片进行编码。在1412,对与BLA图片相关联的一个或者多个前导图片进行编码。在1414,生成比特流,其包括编码的BLA图片和一个或者多个已编码的相关联的前导图片。此外,在举例说明的实施例中,生成比特流的动作进一步包括:在比特流中生成对于一个或者多个已编码的相关联前导图片的每一个的明确指示,其指示出:当按解码顺序来自该BLA图片之前的图片对解码器不可得到时,相应的前导图片是可解码的还是不可解码的(举例而言,正如可能发生在拼接、快进、倒回、视频流改变操作等等之后的)。在特定的实现中,所述指示是NAL单元类型,其标识相应的前导图片是RASL图片还是RADL图片。
进一步地,在某些实现中,生成比特流的动作可以进一步包括生成关于BLA图片是BLA图片的多种类型中的一种的明确指示。例如,图片可以被指定为可具有一个或者多个相关联的可解码的或者不可解码的前导图片的BLA类型(例如,BLA_W_LP类型)。
图15是由解码器或者数字媒体处理工具或者设备执行的示例性方法1500。例如,所述方法可以被执行来对图14中生成的比特流进行解码。
在1510,接收比特流,其包括BLA图片和一个或者多个与该BLA图片相关联的已编码前导图片。在举例说明的示例中,比特流进一步包括:对于一个或者多个已编码的相关联前导图片的每一个的明确指示,其指示出:当来自BLA图片之前的图片对于解码器不可得到时,相应的前导图片是可解码的还是不可解码的(举例而言,正如可能发生在拼接、快进、倒回、视频流改变操作等等之后的)。在1512,按照明确指示对已编码BLA图片和一个或者多个已编码的相关联前导图片进行解码。
在一些实例中,比特流进一步包括关于BLA图片是BLA图片的多种类型中的一种的明确指示。例如,BLA图片可以是可具有一个或者多个相关联的可解码或者不可解码前导图片的断链访问类型。进一步地,在一些示例中,对于一个或者多个已编码的相关联前导图片的明确指示指示出:当按解码顺序来自BLA图片之前的图片不可得到时,相应的前导图片是可解码的前导图片还是不可解码的图片(例如,前导图片可以被指定为RASL或者RADL图片)。
VIII.总结评论
考虑到本公开发明的原理可以应用到其中的许多可能的实施例,应该认识到,举例说明的实施例仅是本发明的优选示例,并且不应被认为是对本发明范围的限制。更确切地,本发明的范围由下文的权利要求来限定。因此,我们要求将包括在这些权利要求的范围和精神之内的所有一切都作为我们的发明。

Claims (9)

1.一种用于解码比特流的方法,包括:
接收比特流的至少一部分,所述比特流的至少一部分包括已编码图片和为所述已编码图片指定的图片类型,所述图片类型是多种图片类型中的一种,所述多种图片类型包括第一类型,其指示所述已编码图片是能够被用作随机访问点RAP图片的断链访问BLA图片,并且进一步指示所述已编码图片可以具有一个或者多个相关联的可解码或者不可解码的前导图片;并且
对所述已编码图片进行解码;
其中所述已编码图片是第一已编码图片,其中所述第一已编码图片被指定为第一类型的图片,其中所述比特流的至少一部分包括与所述第一已编码图片相关联的第二已编码图片和用于所述第二已编码图片的图片类型,所述用于第二已编码图片的图片类型指示第二已编码图片是随机访问跳过的前导RASL图片或者随机访问可解码前导RADL图片,并且其中所述方法进一步包括:
如果所述第二已编码图片被指定为RADL图片,则对所述第二已编码图片进行解码;并且
如果所述第二已编码图片被指定为RASL,则跳过对所述第二已编码图片的解码。
2.如权利要求1所述的方法,其中所述多种图片类型进一步包括:
第二类型,其指示已编码图片是能够被用作RAP图片的BLA图片,并且所述已编码图片不具有任何相关联的不可解码的前导图片,但是可具有一个或者多个相关联的可解码的前导图片,以及
第三类型,其指示已编码图片是能够被用作RAP图片的BLA图片,并且所述已编码图片不具有任何相关联的前导图片。
3.一种用于生成比特流的方法,包括:
将图片指定为多种图片类型中的一种,其中所述图片类型包括第一类型,其指示所述图片是能够被用作随机访问点RAP图片的断链访问BLA图片,并且进一步指示所述图片可以具有一个或者多个相关联的可解码或者不可解码的前导图片;并且
生成比特流的至少一部分,所述比特流的至少一部分包括为该图片指定的图片类型;
其中该图片被指定为第一类型的图片,以及其中该方法还包括指定与该图片相关联的前导图片为随机访问跳过的前导RASL图片或者随机访问可解码前导RADL图片。
4.如权利要求3所述的方法,其中多种图片类型进一步包括以下的一种或者多种:
第二类型,其指示图片是能够被用作随机访问点RAP图片的断链访问BLA图片,并且所述图片不具有任何相关联的不可解码的前导图片,但是可具有一个或者多个相关联的可解码的前导图片,
第三类型,其指示图片是能够被用作RAP图片的BLA图片,并且所述图片不具有任何相关联的前导图片,以及
第四类型,其指示图片是能够被用作RAP图片的完全随机访问CRA。
5.如权利要求3所述的方法,其中所述方法进一步包括对与所述图片相关联的一个或者多个前导图片和一个或者多个非前导图片进行编码,并且其中生成比特流的至少一部分包括对已编码前导图片和已编码非前导图片排序,使得在比特流的至少一部分中所有已编码前导图片都处在所有已编码非前导图片之前。
6.一种计算机可读存储介质,其存储计算机可执行指令,所述计算机可执行指令在被计算机执行时,导致计算机执行一种方法,所述方法包括:
接收比特流,所述比特流包括能够被用作随机访问点RAP图片的已编码的断链访问BLA图片和一个或者多个与所述BLA图片相关联的已编码的前导图片,所述比特流还包括对于一个或者多个已编码的前导图片的每一个的明确指示,其指示当按解码顺序来自所述BLA图片之前的图片不可得到时,相应的已编码的前导图片是可解码的还是不可解码的;以及
按照所述明确指示,对所述一个或者多个已编码的前导图片进行解码。
7.如权利要求6所述的计算机可读存储介质,其中所述比特流进一步包括BLA图片是多种BLA类型中的一种的明确指示。
8.如权利要求7所述的计算机可读存储介质,其中BLA图片是多种BLA类型中的一种的明确指示指示出:该BLA图片是可具有一个或者多个相关联的可解码或者不可解码的前导图片的断链访问类型。
9.如权利要求8所述的计算机可读存储介质,其中所述方法进一步包括:
对已编码的前导图片中具有其是可解码的指示的一个或者多个已编码的前导图片进行解码;并且
跳过对所述已编码的前导图片中具有其是不可解码的指示的一个或者多个已编码的前导图片的解码。
CN201380031429.0A 2012-04-16 2013-04-16 用于简化视频随机访问的约束和单元类型的方法 Active CN104350750B (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201261624984P 2012-04-16 2012-04-16
US61/624,984 2012-04-16
US201261639663P 2012-04-27 2012-04-27
US61/639,663 2012-04-27
US201261667357P 2012-07-02 2012-07-02
US61/667,357 2012-07-02
US13/732,328 2012-12-31
US13/732,328 US9532055B2 (en) 2012-04-16 2012-12-31 Constraints and unit types to simplify video random access
PCT/US2013/036821 WO2013158670A1 (en) 2012-04-16 2013-04-16 Constraints and unit types to simplify video random access

Publications (2)

Publication Number Publication Date
CN104350750A CN104350750A (zh) 2015-02-11
CN104350750B true CN104350750B (zh) 2018-10-23

Family

ID=49325076

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380031429.0A Active CN104350750B (zh) 2012-04-16 2013-04-16 用于简化视频随机访问的约束和单元类型的方法

Country Status (8)

Country Link
US (4) US9532055B2 (zh)
EP (1) EP2839647B1 (zh)
JP (1) JP6238318B2 (zh)
KR (2) KR102117723B1 (zh)
CN (1) CN104350750B (zh)
AR (1) AR093278A1 (zh)
TW (1) TWI603609B (zh)
WO (1) WO2013158670A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9426460B2 (en) * 2012-04-13 2016-08-23 Sharp Kabushiki Kaisha Electronic devices for signaling multiple initial buffering parameters
US9351016B2 (en) 2012-04-13 2016-05-24 Sharp Kabushiki Kaisha Devices for identifying a leading picture
US9402082B2 (en) 2012-04-13 2016-07-26 Sharp Kabushiki Kaisha Electronic devices for sending a message and buffering a bitstream
US20130272619A1 (en) * 2012-04-13 2013-10-17 Sharp Laboratories Of America, Inc. Devices for identifying a leading picture
US9979958B2 (en) 2012-04-20 2018-05-22 Qualcomm Incorporated Decoded picture buffer processing for random access point pictures in video sequences
KR102574868B1 (ko) 2012-04-23 2023-09-06 엘지전자 주식회사 비디오 인코딩 방법, 비디오 디코딩 방법 및 이를 이용하는 장치
US20150139338A1 (en) * 2012-05-03 2015-05-21 Telefonaktiebolaget L M Ericsson (Publ) Identifying Leading Pictures in Video Coding
CN107087204B (zh) * 2012-06-12 2020-04-10 Lg 电子株式会社 图像解码方法及使用其的装置
US9591303B2 (en) * 2012-06-28 2017-03-07 Qualcomm Incorporated Random access and signaling of long-term reference pictures in video coding
JP6045222B2 (ja) * 2012-06-28 2016-12-14 株式会社Nttドコモ 動画像予測復号装置、方法及びプログラム
US9225978B2 (en) * 2012-06-28 2015-12-29 Qualcomm Incorporated Streaming adaption based on clean random access (CRA) pictures
US20140003520A1 (en) * 2012-07-02 2014-01-02 Cisco Technology, Inc. Differentiating Decodable and Non-Decodable Pictures After RAP Pictures
EP2863630A4 (en) 2012-07-03 2016-03-09 Samsung Electronics Co Ltd Method and apparatus for video coding with temporal scalability and method and apparatus for video decoding with temporal scalability
US20150215632A1 (en) * 2012-07-06 2015-07-30 Samsung Electronics Co., Ltd. Method and apparatus for multilayer video encoding for random access, and method and apparatus for multilayer video decoding for random access
JP6319083B2 (ja) 2012-07-10 2018-05-09 ソニー株式会社 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
JP2014039252A (ja) * 2012-08-10 2014-02-27 Panasonic Corp 画像復号方法および画像復号装置
KR102349338B1 (ko) * 2012-09-13 2022-01-10 엘지전자 주식회사 영상 부호화/복호화 방법 및 장치
US9491487B2 (en) * 2012-09-25 2016-11-08 Apple Inc. Error resilient management of picture order count in predictive coding systems
US20140092995A1 (en) * 2012-09-28 2014-04-03 Sharp Laboratories Of America, Inc. Electronic devices for signaling a random access point picture message
JP6094126B2 (ja) * 2012-10-01 2017-03-15 富士通株式会社 動画像復号装置
US9661341B2 (en) * 2013-01-07 2017-05-23 Microsoft Technology Licensing, Llc Syntax and semantics for buffering information to simplify video splicing
JP6209772B2 (ja) * 2013-01-15 2017-10-11 華為技術有限公司Huawei Technologies Co.,Ltd. シグナリングを用いたビデオデコーダ
US9596486B2 (en) * 2013-04-05 2017-03-14 Qualcomm Incorporated IRAP access units and bitstream switching and splicing
US9674533B2 (en) 2013-04-05 2017-06-06 Qualcomm Incorporated Picture alignments in multi-layer video coding
US9602822B2 (en) 2013-04-17 2017-03-21 Qualcomm Incorporated Indication of cross-layer picture type alignment in multi-layer video coding
US10003815B2 (en) 2013-06-03 2018-06-19 Qualcomm Incorporated Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
US9900605B2 (en) 2013-10-14 2018-02-20 Qualcomm Incorporated Device and method for scalable coding of video information
US10264272B2 (en) * 2013-10-15 2019-04-16 Qualcomm Incorporated Device and method for scalable coding of video information
US10547834B2 (en) 2014-01-08 2020-01-28 Qualcomm Incorporated Support of non-HEVC base layer in HEVC multi-layer extensions
US10187650B2 (en) * 2014-06-17 2019-01-22 Stmicroelectronics International N.V. Video encoders/decoders and video encoding/decoding methods for video surveillance applications
US9800898B2 (en) 2014-10-06 2017-10-24 Microsoft Technology Licensing, Llc Syntax structures indicating completion of coded regions
EP3200460A4 (en) 2014-10-16 2017-08-23 Samsung Electronics Co., Ltd Method and device for processing encoded video data, and method and device for generating encoded video data
US20160234522A1 (en) * 2015-02-05 2016-08-11 Microsoft Technology Licensing, Llc Video Decoding
US10129566B2 (en) * 2015-03-16 2018-11-13 Microsoft Technology Licensing, Llc Standard-guided video decoding performance enhancements
US9979983B2 (en) 2015-03-16 2018-05-22 Microsoft Technology Licensing, Llc Application- or context-guided video decoding performance enhancements
KR102077239B1 (ko) * 2015-07-02 2020-02-13 삼성전자주식회사 멀티미디어 데이터를 암호화하는 방법 및 장치, 복호화하는 방법 및 장치
KR102477964B1 (ko) * 2015-10-12 2022-12-16 삼성전자주식회사 미디어 전송 시스템에서 비디오 비트스트림의 임의 접근 및 재생을 가능하게 하는 기법
CN105227864A (zh) * 2015-10-16 2016-01-06 南阳师范学院 一种图片生成动画并与视频片段拼接合成的视频编辑方法
US10958988B2 (en) * 2017-03-24 2021-03-23 Mediatek Inc. Methods and apparatus for media content asset changes
JP6967653B2 (ja) * 2019-12-19 2021-11-17 株式会社Nttドコモ 動画像予測復号方法
WO2021202371A1 (en) * 2020-03-30 2021-10-07 Bytedance Inc. Slice types in a picture
WO2021222040A1 (en) 2020-04-27 2021-11-04 Bytedance Inc. Virtual boundaries in video coding
WO2023220000A1 (en) * 2022-05-10 2023-11-16 Bytedance Inc. Improved extended dependent random access point support in iso base media file format

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232615A (zh) * 2002-07-16 2008-07-30 诺基亚有限公司 用于在视频编码中随机存取和逐步更新图像的方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7149247B2 (en) * 2002-01-22 2006-12-12 Microsoft Corporation Methods and systems for encoding and decoding video data to enable random access and splicing
JP3513148B1 (ja) 2002-10-11 2004-03-31 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、動画像符号化プログラム、及び動画像復号プログラム
US7924921B2 (en) * 2003-09-07 2011-04-12 Microsoft Corporation Signaling coding and display options in entry point headers
US20080159407A1 (en) 2006-12-28 2008-07-03 Yang Nick Y Mechanism for a parallel processing in-loop deblock filter
US20110081133A1 (en) * 2009-10-05 2011-04-07 Xuemin Chen Method and system for a fast channel change in 3d video
US9516379B2 (en) * 2011-03-08 2016-12-06 Qualcomm Incorporated Buffer management in video codecs
US9706227B2 (en) 2011-03-10 2017-07-11 Qualcomm Incorporated Video coding techniques for coding dependent pictures after random access
US10244257B2 (en) * 2011-08-31 2019-03-26 Nokia Technologies Oy Video coding and decoding
US9106927B2 (en) * 2011-09-23 2015-08-11 Qualcomm Incorporated Video coding with subsets of a reference picture set
US20130089152A1 (en) * 2011-10-05 2013-04-11 Qualcomm Incorporated Signaling picture identification for video coding
US9264717B2 (en) * 2011-10-31 2016-02-16 Qualcomm Incorporated Random access with advanced decoded picture buffer (DPB) management in video coding
US9351016B2 (en) * 2012-04-13 2016-05-24 Sharp Kabushiki Kaisha Devices for identifying a leading picture

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232615A (zh) * 2002-07-16 2008-07-30 诺基亚有限公司 用于在视频编码中随机存取和逐步更新图像的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
On bitstreams starting with CRA pictures;Ye-Kui Wang;《JCT-VC of ITU–T SG16 WP3 and ISO/IEC JTC1/SC29/WG11》;20120210;全文 *
Random access support for HEVC;Akira Fujibayashi;《JCT-VC of ITU–T SG16 WP3 and ISO/IEC JTC1/SC29/WG11》;20110128;正文第2节-第5节,附图3、5 *

Also Published As

Publication number Publication date
KR20200061415A (ko) 2020-06-02
TWI603609B (zh) 2017-10-21
TW201351964A (zh) 2013-12-16
US9532055B2 (en) 2016-12-27
EP2839647A1 (en) 2015-02-25
JP2015517281A (ja) 2015-06-18
KR20150003196A (ko) 2015-01-08
JP6238318B2 (ja) 2017-11-29
EP2839647B1 (en) 2018-07-04
US20130272430A1 (en) 2013-10-17
US20170142445A1 (en) 2017-05-18
KR102117723B1 (ko) 2020-06-01
AR093278A1 (es) 2015-05-27
US10432973B2 (en) 2019-10-01
US20220191547A1 (en) 2022-06-16
US11943480B2 (en) 2024-03-26
WO2013158670A1 (en) 2013-10-24
US11303933B2 (en) 2022-04-12
US20200029094A1 (en) 2020-01-23
CN104350750A (zh) 2015-02-11
KR102176327B1 (ko) 2020-11-09

Similar Documents

Publication Publication Date Title
CN104350750B (zh) 用于简化视频随机访问的约束和单元类型的方法
CN105027570B (zh) 用来简化视频拼接的缓冲信息的语法和语义
CN104662906B (zh) 参考图片列表修改信息的有条件信号通知
CN105684409B (zh) 在视频和图像编码和解码中使用散列值来表示各块
CN102150425B (zh) 用于使用并行处理来进行解码的系统和方法
CN103621085B (zh) 降低视频解码中的延迟的方法和计算系统
CA2805900C (en) Image signal decoding apparatus, image signal decoding method, image signal encoding apparatus, image signal encoding method, and program
US20140119439A1 (en) Method and apparatus of intra mode coding
CN105900420A (zh) 选择运动向量精度
CN107409229A (zh) 指示编码区域的结束的语法结构
CN102150428A (zh) 用于使用自适应分段的视频编码的系统和方法
CN102447906A (zh) 低延时视频解码
CN105230021B (zh) 屏幕内容的词典编码和解码
CN107439008A (zh) 减轻数字视频的互操作性情景中的损失

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150529

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150529

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant