CN104854865B - 编码单元比特数限制 - Google Patents

编码单元比特数限制 Download PDF

Info

Publication number
CN104854865B
CN104854865B CN201380063672.0A CN201380063672A CN104854865B CN 104854865 B CN104854865 B CN 104854865B CN 201380063672 A CN201380063672 A CN 201380063672A CN 104854865 B CN104854865 B CN 104854865B
Authority
CN
China
Prior art keywords
bit number
coding
factor
video data
video
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.)
Expired - Fee Related
Application number
CN201380063672.0A
Other languages
English (en)
Other versions
CN104854865A (zh
Inventor
W·张
Y-J·秋
L·刘
L·徐
韩钰
邓智玭
蔡晓霞
H·江
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN104854865A publication Critical patent/CN104854865A/zh
Application granted granted Critical
Publication of CN104854865B publication Critical patent/CN104854865B/zh
Expired - Fee Related 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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • 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/136Incoming video signal characteristics or properties

Abstract

本申请描述了与包括编码单元比特数限制的视频编码相关的系统、设备和方法。

Description

编码单元比特数限制
相关申请的交叉引用
本申请要求享有于2013年1月4日提交的、发明名称为“模式约束的编码比特数限制”的美国临时申请No.61/748,907和于2013年2月28日提交的、发明名称为“模式约束的编码比特数限制”的美国临时申请No.61/770,699的权益。
技术领域
本公开总体上涉及视频处理。
背景技术
目前正在由ISO/IEC运动图像专家组(MPEG)和ITU-T视频编码专家组(VCEG)形成的关于视频编码的联合协作团队(JCT-VC)开发的高效率视频编码(HEVC),是预计在2013年完成的视频压缩标准。类似于先前的视频编码标准,HEVC包括基本功能模块,例如帧内/帧间预测、变换、量化、环路滤波以及熵编码。HEVC针对图像定义最大编码单元(LCU),接着该最大编码单元被划分为采取具有可变大小的矩形块形式的编码单元(CU)。CU包含亮度像素的方形块和两个色度像素的相对应的块。CU的大小可以在亮度分量中被配置为8x8、16x16、32x32或者64x64。当实现HEVC编解码器时,LCU被认为是基本单元。
为了降低解码器复杂性,HEVC将任何编码的LCU的比特数局限到限制值。因为LCU比特数限制,解码器知道编码的LCU的最差情况比特大小并且其可以分配足够大小的缓冲器来适应任何大小的LCU的解码,只要其不超过比特数限制。然而,在选择限制的比特数时还是应该仔细考虑,这是因为,尽管较大的限制值可以显著地减小编码的LCU违反约束的可能性,但是他们也增加了解码器存储器资源要求。在HEVC规范的最近草案(参见ISO/IECJTC/SC29/WG11和ITU-T SG 16WP3,“高效率视频编码(HEVC)文本规范草案9”(JCTVC-J1003_d9),2012年10月)中,如在公式(1)和公式(2)中所述的,比特数限制值(LCUBitNumLimit)被设置为LCU的未压缩的原始数据比特数(LCURawDataNum)的单个特定比值:
LCURawDataNum=sizeY*sizeY*bitdepthY+2*sizeC*sizeC*bitdepthC (1)
LCUBitNumLimit=(4/3)*LCURawDataNuM (2)
其中,sizeY和bitdepthY分别是LCU亮度分量的块大小和比特深度,并且sizeC和bitdepthC分别是LCU的色度分量的块大小和比特深度。
发明内容
根据本公开的一个方面,提供了一种用于对压缩的视频数据进行解码的装置,包括:视频解码器,用于访问压缩的视频数据的比特流,所述压缩的视频数据包括编码的视频数据的至少一个编码单元;所述视频解码器用于基于与所述编码的视频数据的编码单元相对应的编码模式集,从多个比特数限制比例因子中确定与所述编码的视频数据的编码单元相对应的比特数限制比例因子;并且所述视频解码器用于至少部分地基于所述比特数限制比例因子来确定与所述编码单元相关联的比特数限制,其中,为了确定所述比特数限制,所述视频解码器将所述编码单元的原始数据大小与所述比特数限制比例因子相乘。
根据本公开的另一个方面,提供了一种用于对压缩的视频数据进行解码的系统,包括本公开中所述的装置,并且还包括如下部件:显示器,其中,所述视频解码器用于对所述至少一个编码单元进行解码以生成解码的视频数据;以及处理器,用于在所述显示器上显示所述解码的视频数据。
根据本公开的再一个方面,提供了一种用于对压缩的视频数据进行解码的计算机实现的方法,包括:访问压缩的视频数据的比特流,所述压缩的视频数据包括编码的视频数据的至少一个编码单元;基于与所述编码的视频数据的编码单元相对应的编码模式集,从多个比特数限制比例因子中确定与所述编码的视频数据的编码单元相对应的比特数限制比例因子;以及至少部分地基于所述比特数限制比例因子来确定与所述编码单元相关联的比特数限制,其中,确定所述比特数限制包括将所述编码单元的原始数据大小与所述比特数限制比例因子相乘。
根据本公开的又一个方面,提供了一种用于对压缩的视频数据进行解码装置,包括用于执行本公开中所述的方法的单元。
根据本公开的另一个方面,提供了一种机器可读存储装置,包括机器可读指令,当被执行时,所述机器可读指令实现本公开中所述的方法。
根据本公开的再一个方面,提供了一种用于对压缩的视频数据进行解码的设备,包括:存储器,其用于存储指令;以及处理器,其耦合到所述存储器,其中所述指令在由所述处理器执行时,使得所述处理器执行本公开中所述的方法。
附图说明
在附图中,通过示例的方式而不是通过限制的方式说明了本申请中描述的材料。为了说明的简单性和清楚性,在附图中说明的元件不一定按比例绘制。例如,为了清楚起见,一些元件的尺寸相对于其他元件可能被放大。进而,在认为合适的情况下,在附图之间重复了附图标记以指示相对应的或相类似的元件。在附图中:
图1是示例视频编码系统的说明性图;
图2是示例视频编码方案的说明性图;
图3是说明示例过程的流程图;
图4是示例视频编码系统的说明性图;
图5是示例系统的说明性图;
图6说明了示例设备,
图7是说明示例过程的流程图;
图8是说明示例视频编码过程的流程图;
图9是运行中的示例视频编码过程的说明性图;以及
图10是全部根据本公开至少一些实现布置的示例视频编码系统的说明性图。
具体实施方式
现在将参考所包含的图来说明一个或多个实施例或实现。尽管讨论了具体的配置和布置,但是应当理解的是,这仅是为了说明的目的。相关领域的技术人员将认识到,在不偏离本说明书的精神和范围的情况下,可以采用其它配置和布置。对于相关领域的技术人员而言显而易见的是,也可以在与本申请中描述的不同的各种其它系统和应用中采用在本申请中描述的技术和/或布置。
尽管下面的描述阐明了各种实现可以在例如以片上系统(SoC)架构为例的架构中体现,但是本申请中描述的技术和/或布置的实现并不局限于特定的架构和/或计算系统,并且可以由任意架构和/或计算系统实现用于类似的目的。例如,多个集成电路(IC)芯片和/或封装和/或各种计算设备和/或诸如机顶盒、智能电话等等的消费类电子(CE)设备可以实现本申请中描述的技术和/或布置。进而,尽管下面的描述可以阐述诸如逻辑实现、系统组件的类型和相互关系、逻辑划分/集成选择等等的许多具体细节,但是可以在没有这些具体细节的情况下实施请求保护的主题。在其他实例中,可能没有详细示出例如以控制结构和完整的软件指令序列为例的一些资料,以便不混淆本申请中公开的资料。
本申请中公开的资料可以以硬件、固件、软件或其任意组合来实现。本申请中公开的资料也可以被实现为存储在机器可读介质上的指令,该指令可以由一个或多个处理器读取和执行。机器可读介质可以包括用于以机器(例如,计算设备)可读的形式存储或传输信息的任何介质和/或机制。例如,机器可读介质可以包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光学存储介质;闪存设备;电学、光学、声学或其它形式的传播信号(例如,载波、红外信号、数字信号等等),以及其他。
在说明书中对“一个实现”,“实施”,“示例实现”等等的引用指代所描述的实现可以包括特定的特征、结构或特性,但是每个实施例可能不一定都包括该特定的特征、结构或特性。而且,这样的短语不一定指代同一实现。进而,当结合实施例描述特定的特征、结构或特性时,应当主张的是,结合其它实现来实现这样的特征、结构或特性在本领域的熟练技术人员的知识范围内,无论在本申请中是否明确描述了该其它实现。
下文描述了与包括编码单元比特数限制的视频编码相关的系统、装置、物品和方法。
如上文描述的,在视频编码中,可以将任意编码的最大编码单元(LCU)的比特数约束到限制值(例如,LCU比特数限制)。例如,基于LCU比特数限制,解码器可以被配置为分配足够大小的缓冲器以适应比特数限制。通常,较大的比特数限制可以减小编码的LCU违反约束的可能性。在编码器处违反约束可能导致编码器进入块内脉冲编码调制(I_PCM)模式,其不应用压缩(例如,直接发送原始数据)且通常被标准编码器管线排除。因此,违反可能导致编码器暂停编码器管线并且发起I_PCM分支。这样的操作会显著地危害编码器性能,并且通常,在编码器处较大的比特数限制可能是期望的。然而,在选择限制的比特数值时要仔细考虑,这是因为,如所讨论的,尽管较大的限制值可能显著地减小编码的LCU违反约束的可能性,但是如所讨论的,较大的比特数限制会增加解码器存储器资源要求(例如,分配的缓冲器大小)。因此,在视频编码中选择LCU比特数限制会是重要的并且可能影响在编码器、解码器或二者处的性能。
如下文将更详细描述的,描述了用于选择和实现LCU比特数限制的技术。在一些示例中,LCU比特数限制(例如,针对视频数据块或者与视频数据块相关联的比特数限制)可以基于视频编码器的编码模式来确定。例如,基于活动的视频编码模式,可以从多个比特数限制比例因子中确定比特数限制比例因子,并且可以使该比特数限制比例因子乘以视频数据块的原始视频数据大小来确定比特数限制。通常,倾向于产生较少比特的编码模式可能具有较小的比特数限制比例因子,而倾向于产生较多比特的编码模式可能具有较大的比特数限制比例因子。通常,比特比例限制因子可以在大约1到2的范围内,如在本申请中进一步讨论的。在编码器处,实现这样的技术可以减小违反视频数据块编码约束的频率,并且在解码器处,这样的技术可以限制或减小专用于视频数据块的存储器的量(例如,缓冲器大小)。
在其他示例中,可以预先确定比特数限制比例因子为值5/3,其可以应用于全部编码模式。在这样的示例中,针对视频数据的最大编码单元(LCU)或与该最大编码单元相关联的比特数限制可以通过将最大编码单元原始数据数目与比特数限制比例因子5/3相乘来确定。可以基于所确定的比特数限制来对视频数据进行编码。这样的实现可以再次提供在编码器处减小的违反以及在解码器处限制的专用存储器,同时提供实现的简单性的进一步优点。
如在本申请中使用的,术语“代码器”可以指代编码器和/或解码器。类似地,如在本申请中使用的,术语“编码”可以指代经由编码器执行视频编码和/或经由解码器执行视频解码。例如,视频编码器和视频解码器可以都是能够对视频数据进行编码的代码器的示例。此外,如在本申请中使用的,术语“编解码器”可以指代任何过程、程序或操作组,例如以可以实现编码器和/或解码器的软件、固件、和/或硬件的任意组合为例。
图1是根据本公开至少一些实现布置的示例视频编码系统100的说明性图。在各种实现中,系统100可以根据例如以高效率视频编码(HEVC)标准(参见ISO/IEC JTC/SC 29/WG11和ITU-T SG 16WP3,“高效率视频编码(HEVC)文本规范草案8”(JCTVC-J1003_d7),2012年7月)为例的一个或多个标准或规范来执行视频压缩和解压缩和/或实现视频编解码器。虽然可以在HEVC标准的上下文中在本申请中描述系统100和/或其他系统、方案或过程,但是本公开不限于任何特定的视频编码标准或规范或其扩展。
HEVC标准指定了可以将图像划分为非重叠的最大编码单元(LCU)并且接着每一个LCU可以被划分为采用具有可变大小的矩形块形式的编码单元(CU)。在每一个LCU内,基于四叉树的分开方案指定了CU划分模式。HEVC也定义了指定如何划分给定的CU分别用于预测和变换目的的预测单元(PU)和变换单元(TU)。CU一般包括一个亮度编码块(CB)和两个色度CB,连同相关联的句法,并且PU可以被进一步分为在大小从64x64采样下至4x4采样的范围内的预测块(PB)。如在本申请中使用的,术语“块”可以指代视频图像的任何划分或子划分。例如,块可以指代与LCU、PU、PB、TU、或CU相对应的视频数据。
如所说明的,系统100可以包括编码器102和解码器120。在利用编码单元划分模块104处理输入图像之后,编码器102可以使用编码环路对输入图像101进行编码,该编码环路可以包括变换和量化模块106,逆量化和逆变换模块108,并且取决于由编码器102经由模式决策模块117实现的模式决策,或者包括帧内预测模块110的第一路径或者包括解块滤波模块112、采样自适应的偏移滤波模块114和帧间预测模块116的第二路径。在对输入图像101进行变换之后,编码器102可以使用熵编码模块118对压缩的图像进行熵编码。最后,编码器102可以产生并入编码的视频数据的比特流119。模块104、106、108、110、112、114、116、117和118的功能是本领域公知的并且将不在本申请中进行详细描述。
解码器120可以接收比特流119形式的编码的视频数据,并且可以在利用熵解码模块122以及逆量化和逆变换模块124对数据进行处理之后,取决于在比特流119的句法中指示的并且经由句法控制模块127实现的编码模式,采用包括帧内预测模块126的第一路径或者包括解块滤波模块128、采样自适应的偏移滤波模块120以及帧间预测模块132的第二路径,使用解码环路来对所产生的数据进行解码。接着例如,解码器120采用编码单元组装模块134来生成解码的输出图像135,可以经由显示器将其呈现给用户。模块122、124、126、127、128、130、132和134的功能是本领域公知的,并且在本申请中将不进行更详细地描述。
尽管图1将系统100说明为采用特定的编码和解码模块,但是根据本公开,为了清楚起见,也可以利用未在图1中描绘的各种其他的编码模块或组件。进而,本公开不限于图1中说明的特定组件和/或不限于系统100中的各种组件被布置的方式。可以以软件、固件、和/或硬件和/或其任意组合来实现本申请中描述的系统的各种组件。例如,可以例如至少部分地通过在例如以移动电话为例的计算系统中发现的计算片上系统(SoC)的硬件来提供系统100的各种组件。
进而,可以认识到的是,系统100的编码器102可以与包括例如视频内容服务器系统的内容提供方系统相关联和/或由该内容提供方系统提供,并且可以通过诸如收发机、天线、网络系统等等的未在图1中描绘的各种通信组件和/或系统来向解码器120传输或传送比特流119。还可以认识到的是,解码器120可以与诸如计算设备(例如,台式计算机、膝上型计算机、平板计算机、可转换的膝上型计算机、移动电话等等)的客户端系统相关联,该客户端系统远离编码器102且经由诸如收发机、天线、网络系统等等的未在图1中描绘的各种通信组件和/或系统接收比特流119。因此,在各种实现中,编码器子系统101和解码器子系统103可以一起实现或彼此独立地实现。进而,尽管本申请中描述的系统、装置和方法可以指代输入和输出图像以及视频数据块等等,但是本公开在这一方面不受限制,并且所讨论的技术可以在帧或例如以序列、层、图像、片或块为例的视频数据的任何适当的分量上执行。
根据本公开,如下文将更详细描述的,在编码的处理中,在一些实现中,视频数据编码器102可以从各种比特数限制值中进行选择并且可以将所选择的值与视频数据的块相关联。在各种实现中,所述块可以是LCU。在一些示例中,取决于编码器102使用哪些编码模式来对视频数据进行编码,编码器102可以将各种比特数限制值中的不同值与编码的LCU相关联。通过这样做,当所采用的特定组的编码模式将更可能生成较多比特时,编码器可以向LCU分配较高的比特数限制值。例如,如果编码器102采用了HEVC主配置文件中除了变换跳过模式之外的所有编码模式,则该编码器102可以向LCU分配较高的比特数限制,而如果编码器102采用了HEVC主配置文件中包括变换跳过模式的所有编码模式,则该编码器102可以分配较低的比特数限制。
在一些实现中,通过从多个比特数限制比例因子中确定比特数限制比例因子,视频数据编码器102和/或视频数据解码器120可以确定比特数限制。可以基于视频数据编码器102的活动的视频编码模式来从多个比特数限制比例因子中确定比特数限制比例因子,并且可以基于该比特数限制比例因子来确定比特数限制。例如,可以通过使比特数限制比例因子与视频数据块的原始视频数据大小相乘来确定比特数限制。例如,经由通过标准在编码器102和解码器120二者处应用的配置文件或表,可以在视频数据编码器102和视频数据解码器120处应用这样的技术。
在其他示例中,视频数据编码器102可以经由比特流119对多个比特数限制比例因子和相对应的编码模式进行编码。如下文进一步讨论的,比特数限制比例因子和相对应的编码模式可以被包含在比特流119的补充增强信息(SEI)包的一部分中。在这样的示例中,视频数据编码器102可以定制编码模式和相对应的比特数限制比例因子值的组合,并且从而在编码过程中管理约束和限制的细节。接着,如在本申请中讨论的,视频数据解码器120可以实现所接收的编码模式和相对应的比特数限制比例因子值。在一些示例中,如果没有以其他方式指定,则可以使用缺省的比特数限制比例因子。在各个示例中,缺省的比特数限制比例因子可以是3/2或5/3等等。
在一些实现中,视频数据编码器102和/或视频数据解码器120可以实现具有可以应用于所有编码模式的预定值5/3的比特数限制比例因子。在这样的示例中,针对视频数据的最大编码单元(LCU)(例如,LCUBitNumLimit)或者与该最大编码单元相关联的比特数限制可以通过将最大编码单元原始数据数目(例如,如上文通过公式(1)确定为LCURawDataNum)与比特数限制比例因子5/3相乘来确定,如在公式(3)中示出的:
LCUBitNumLimit=(5/3)*LCURawDataNum (3)
可以基于如本申请中讨论的所确定的比特数限制来在视频数据编码器102和/或视频数据解码器120处对视频数据进行编码。
如在本申请中使用的,短语“编码模式”指代编码器可以用于压缩视频数据的各种压缩模式中的一个,该压缩模式包括但不限于帧内模式、帧间模式、变换跳过模式等等。如本领域中的技术人员将认识到的,通过利用变换跳过模式,编码器可以使用较少的比特来对一些视频数据进行编码,并且相应地,解码器可以采用较小的缓冲器尺寸来存储编码的视频数据。在各个示例中,如下文进一步讨论的,编码模式可以包括在变换跳过被启用的情况下HEVC主配置文件中的所有编码模式、在变换跳过被禁用的情况下HEVC主配置文件中的所有编码模式、在变换跳过被启用的情况下HEVC主静止图像配置文件中的所有编码模式、在变换跳过被禁用的情况下HEVC主静止图像配置文件中的所有编码模式、在变换跳过被启用的情况下HEVC主10配置文件中的所有编码模式、在变换跳过被禁用的情况下HEVC主10配置文件中的所有编码模式等等。
通常,HEVC主配置文件可以包括用于对I(帧内编码)、P(预测)、或B(双向预测)图像进行编码的配置文件,而HEVC主静止图像配置文件可以包括用于仅对I图像进行编码的配置文件,使得HEVC主静止图像配置文件可以是HEVC主配置文件的子集。进而,HEVC主配置文件可以包括用于利用8比特的比特深度进行编码的配置文件,而HEVC主10配置文件可以例如包括用于利用10比特的比特深度进行编码的配置文件。
通常,根据本公开,如所讨论的,可以基于由编码器或解码器使用的编码模式来选择各种比例因子。接着,所选择的比例因子可以用于基于公式(4)来分配比特数限制:
LCUBitNumLimit=scale_factor(coding modes)*LCURawDataNum (4)
其中,scale_factor(.)表示将编码模式集映射到在[1.0,2.0]或(1.0,2.0]等等范围内的有理数的函数。可以按照基于映射表的方式来描述scale_factor(.)的使用。例如,确定比特数限制比例因子可以包括访问具有多个比特数限制比例因子和相对应的编码模式的表。首先,可以将所有可能的编码模式管理为若干个集,其中向每一个集分配映射表中的条目索引。接着,可以向所有条目分配特定的数目。
例如,下表说明了示例比例因子映射:
索引 编码模式集 比例因子值
1 编码模式组合﹟1 scaling_factor﹟1
2 编码模式组合﹟2 scaling_factor﹟2
3 编码模式组合﹟3 scaling_factor﹟3
表1:比例因子映射的通用示例
因而,取决于用于压缩图像(或一般情况下视频数据)的编码模式组合,编码器102或者解码器120可以分配、指定或选择不同的比例因子。作为一个非限制性示例,下面的表说明了特定的示例比例因子映射:
表2:比例因子映射的特定示例。
如在表2的非限制性示例中示出的,当采用所有HEVC主配置文件编码模式时,编码器102或解码器120可以分配、指定或选择第一索引值,其中,第一索引值与比例因子值4/3相对应。相比之下,当采用除了变换跳过模式之外的所有HEVC主配置文件编码模式时,编码器102可以分配、指定或选择第二索引值,其中第二索引值与比例因子值3/2(或1.5)相对应。此外,对于HEVC主配置文件中的编码模式,无论这些编码模式是否包括变换跳过模式,编码器102都可以分配、指定或选择与比例因子值5/3相对应的第二索引值。在各种实现中,所采用的比例因子可以是大于或等于1以及小于或等于2的任意数目。换句话说,在各种限制中,比例因子可以具有涵盖范围[1.0,2.0]或(1.0,2.0]等等的值。
如所讨论的,可以基于编码模式从多个比特数限制比例因子中确定比特数限制比例因子。通常,可以实现编码模式和相对应的比特数比例因子的任意数目和组合。在一些示例中,被编码的视频数据块可以包括高效率视频编码(HEVC)视频数据。在这样的示例中,第一编码模式可以包括在变换跳过被启用的情况下HEVC主配置文件中的所有编码模式,并且相对应的第一比特数限制比例因子可以包括4/3,第二编码模式可以包括在变换跳过被禁用的情况下HEVC主配置文件中的所有编码模式,并且相对应的第二比特数限制比例因子可以包括3/2,第三编码模式可以包括在变换跳过被启用的情况下HEVC主静止图像配置文件中的所有编码模式,并且相对应的第三比特数限制比例因子可以包括4/3,第四编码模式可以包括在变换跳过被禁用的情况下HEVC主静止图像配置文件中的所有编码模式,并且相对应的第四比特数限制比例因子可以包括3/2,第五编码模式可以包括在变换跳过被启用的情况下HEVC主10配置文件中的所有编码模式,并且相对应的第五比特数限制比例因子可以包括5/3,以及第六编码模式可以包括在变换跳过被禁用的情况下HEVC主10配置文件中的所有编码模式,并且相对应的第六比特数限制比例因子包括5/3。
如所讨论的,在各种实现中,可以按照预定的方式向各个视频规范配置文件和/或级别部分分配比例因子。例如,可以向HEVC主配置文件分配一的比例因子,以确定LCU比特数限制,而可以向HEV主10配置文件分配不同的比例因子,以确定LCU比特数限制。因而,取决于应用于所接收的视频数据的编码类型(例如,主配置文件或主10配置文件),接着,解码器可以应用预定的比例因子来使用公式(3)确定相对应的LCU比特数限制并且因而确定缓冲要求。
在其他实现中,可以将比例因子预定为具有值5/3,可以应用该值而不管所采用的编码模式如何。因而,与所接收的编码的视频数据的类型(例如,主配置文件、主静止图像配置文件、或者主10配置文件等等)无关,解码器可以应用预定的比例因子5/3,以使用公式(3)确定相对应的LCU比特数限制并且因而确定缓冲要求。
如所讨论的,在各种实现中,比例因子可以与编码模式相关联,并且所确定或选择的比例因子可以用于确定比特数限制。在其他示例中,比特数限制可以与相对应的编码模式相关联并且直接用于确定针对编码模式和视频数据块(例如以LCU为例)的比特数限制或者与上述编码模式和视频数据块相关联的比特数限制。在这样的示例中,针对视频数据块的原始数据数目的大小可以是常数或被假定为常数等等。
图7是说明根据本公开至少一些实现布置的示例过程的流程图。如所示出的,可以经由编码器702和/或解码器720实现过程700。过程700可以包括经由编码器702接收输入图像701并且在块704处将输入图像701划分为最大编码单元(LCU)705,“将图像划分为LCU”。尽管关于图像701和LCU 705进行了讨论,但是可以将上述技术应用于如本申请中讨论的任意输入视频和视频数据块。可以在块706处经由编码器702使用如本申请中讨论的常规的或典型的编码模式对LCU 705进行编码,“使用常规编码模式对LCU进行编码”。进而,可以如所讨论的应用针对LCU 705的比特数限制。在一些示例中,可以基于比特数限制比例因子来确定针对LCU705的比特数限制,该比特数限制比例因子是基于编码模式从多个比特数限制比例因子中确定的。在其他示例中,可以基于将LCU原始数据数与比例因子5/3相乘来确定针对LCU 705的比特数限制。
在任何情况下,在块708处,“检查LCU比特大小是否违反了限制”,可以将针对编码的LCU 705的LCU比特大小与比特数限制进行比较。如果编码的LCU具有比比特数限制更少的比特(例如,没有发生违反),则可以在块710处将编码的LCU编码或打包到比特流719中,“打包到比特流中”。如果编码的LCU具有比比特数限制更多的比特(例如,已经发生了违反),则可以在块712处使用块内脉冲编码调制(I_PCM)模式来对违反的LCU进行重新编码,“使用I_PCM模式对LCU进行重新编码”。可以在块710处将重新编码的LCU打包到比特流719中。如所讨论的,I_PCM模块不应用压缩(例如,直接发送原始数据)且通常被从标准编码器管线排除。因此,在块708处的违反会使编码器702暂停标准的编码器管线并且发起I_PCM分支。这样的操作会显著地伤害编码器702的性能。
过程700可以在块722处继续,“从比特流取回和缓冲LCU数据”,使得可以接收所接收的比特流719并且可以从比特流719取回和缓冲LCU数据。进而,如本申请中讨论的,在一些示例中,比特流719可以包括比特数比例因子和相对应的编码模式,并且在其他示例中,可以直接经由解码器720实现比特数比例因子和相对应的编码模式。进而,在一些示例中,可以应用常数比例因子,例如比例因子5/3。如所讨论的,在任何情况下,在解码器720处,比特数比例因子和LCU比特数限制可以确定专用或分配的缓冲器大小。如果LCU比特数限制太大,则可能不利地影响解码器720的性能,或者一般情况下,解码器720会实现不必要的且昂贵的存储器资源。如所示出的,在块724处,“对LCU进行解码”,可以对LCU数据进行解码以生成LCU 725,其可以在块726处进行组装,“组装图像”,以生成输出图像735。例如,可以经由显示设备向用户呈现输出图像735。
如所讨论的,图7说明了示例过程700。图7还说明了针对视频编码块选择比特数限制的重要性。例如,如所讨论的,太小的比特数限制可能导致在编码器720处较差的性能,而太大的比特数限制可能导致在解码器720处较差的性能。
如所讨论的,在一些实现中,可以在编码器和解码器二者处使用相同或相似的技术来确定对比例因子和视频数据块比特数限制的确定。在一些示例中,可以使用常数比例因子(例如,比例因子5/3),而在其他示例中,可以基于编码模式来从多个比例因子中确定比例因子。在其他实现中,如本申请中讨论的,并且具体地针对下文的图9,编码器可以利用多个比特数限制比例因子和相对应的编码模式来对比特流进行编码,使得解码器可以使用所提供的信息来实现比例因子和比特数限制。在又一实现中,编码器可以向解码器提供信息,通知解码器编码器已经针对任何特定编码的视频数据分配、指定或选择了哪一个比例因子。
在其他实现中,编码器可以在编码器提供到解码器的比特流或其一部分中设置指示符、消息或其部分。接着,解码器可以使用该信息来识别所选择的比例因子并且接着可以使用公式(4)来确定LCU比特数限制以及用于存储编码的视频数据的相对应的缓冲器大小。
因而,再次参考图1,编码器102可以在比特流119或其部分中包括指示符、消息或其部分,以通知解码器120与由比特流119传送的编码的视频数据的各个部分相关联的所选择的比例因子。图2是根据本公开至少一些实现布置的示例视频编码方案的说明性图。例如,图2说明了根据本公开的诸如比特流119的示例比特流200。如在图2中描绘的,比特流200可以包括头部部分202和数据部分204。头部部分202可以包括一个或多个指示符206。例如,指示符206可以包括指示符208,如本申请中讨论的,针对诸如LCU的编码的视频数据的一个或多个块,指示符208的值与索引值(针对上文的表所讨论的)并且因而与特定的比例因子相对应。在各种实现中,头部部分202和/或数据部分204可以包括数据包210,例如补充增强信息(SEI)包,其可以包括指定所选择的比例因子的指示符。
如所讨论的,在一些示例中,编码器可以利用多个比特数限制比例因子和相对应的编码模式来对比特流进行编码,使得解码器可以使用所提供的信息来如所讨论地实现比例因子(例如,基于相对应的编码模式是活动的)以及比特数限制(例如,通过将比例因子与原始视频数据大小相乘)。参考图1,编码器102可以利用多个比特数限制比例因子和相对应的编码模式来对比特流119进行编码。例如,如在图2中描绘的,比特流200可以包括数据包210,其可以包括多个比特数限制比例因子和相对应的编码模式。例如,可以将比特数限制比例因子和相对应的编码模式提供为补充增强信息(SEI)包或比特流200中的补充增强信息(SEI)包的一部分。
图3说明了根据本公开各种实现的示例过程300的流程图。过程300可以包括如由图3中的块302、304、306、308、310和312中的一个或多个说明的一个或多个操作、功能或动作。通过非限制性示例的方式,过程300可以形成视频解码过程的至少一部分,如由图1的解码器系统120执行的。
进而,还可以参考图4的视频编码系统400来在本申请中描述过程300,其中系统400包括处理器402、视频编解码器模块406以及存储器408。处理器402可以实例化编解码器模块406以提供根据本公开的视频编码过程。在系统400的示例中,存储器408可以存储包括诸如LCU的编码的视频数据的视频内容。编解码模块406可以实现由软件、固件、和/或硬件的任意组合提供的HEVC编解码器。存储器408可以是诸如易失性存储器(例如,静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或非易失性存储器(例如,闪存等)等等的任何类型的存储器。在非限制性示例中,存储器408可以由高速缓存实现。
返回到图3中的讨论,过程300可以在块302处开始,“接收包括指示符的比特流”,其中可以接收比特流,其中该比特流包括指定比例因子的指示符(例如,指示符是比特流的一部分)。例如,指示符可以是比特流标志或补充增强信息(SEI)包的一部分等等。接着,可以在块304处访问该指示符,“访问指示符”,以确定该指示符的值。例如,解码器120可以在块302处接收比特流119,其中比特流119包括诸如图2中的指示符208的指示符。例如,指示符可以具有与如上文描述的映射表的索引值相对应的不同值,使得指示符中的每一个值(以及相对应的编码模式)可以与多个比特数限制中的不同比特数限制相对应。指示符可以与例如以最大编码单元(LCU)为例的视频数据块相关联。
过程300可以在块306处继续,“基于所确定的指示符的值从多个比特数限制中选择比特数限制”,其中比特数限制可以是基于所确定的指示符的值从多个比特数限制中选择的。如先前描述的,解码器120可以通过基于所确定的指示符值确定比例因子(块308,“基于所确定的指示符值确定比例因子”),并且接着使用公式(4)将视频数据块的原始数据大小乘以比例因子(块310,“将视频数据块的原始数据大小乘以比例因子”)来执行块306。例如,参考表2中的非限制性示例,如果指示符值指定了1的索引值,则相对应的比例因子将是4/3,如果指示符值指定了2的索引值,则相对应的比例因子将是3/2,并且如果指示符值指定了5的索引值,则相对应的比例因子将是5/3,等等。在一般情况下,比例因子可以具有任何适当的值,例如以等于或大于1以及小于或等于2、3/2、4/3、或5/3等等的数为例。
接着,过程300可以在块312处结束,“基于比特数限制确定缓冲器大小”,其中解码器基于比特数限制(例如,所选择的比特数限制)确定缓冲器大小。例如,针对给定的原始视频数据大小,较大的比例因子将导致在块306处确定较高的比特数限制以及在块312处确定相对应的较大的缓冲器大小,而较小的比例因子将在块312处导致相对应的较小的缓冲器大小。
图8是根据本公开至少一些实现布置的示例视频编码过程800的流程图。在所说明的实现中,过程800可以包括如由块802和/或804中的一个或多个说明的一个或多个操作、功能或动作。通过非限制性示例的方式,将参考示例视频编码系统100在本申请中描述过程800。在一般情况下,过程800可以针对编码,使得可以按照与编码和/或解码类似的方式来应用所描述的概念和/或操作。
过程800可以被用作用于执行视频编码的计算机实现的方法。过程800可以开始于操作802,“基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子”,其中可以至少部分地基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子。例如,编码器102或解码器120可以确定比特数限制比例因子。在一些示例中,确定比特数限制比例因子可以包括访问具有多个比特数限制比例因子和相对应的编码模式的表(例如,表1或表2)。在一些示例中,比特数限制比例因子5/3可以用于所有的编码模式。进而,在一些示例中,可以确定的是,经由该表不能获得活动的编码模式,并且在这样的示例中,可以将比特数限制比例因子设置为缺省比特数限制比例因子。在一般情况下,比特数比例因子可以是任何适当的值,例如以等于或大于1以及小于或等于2、3/2、4/3、或5/3等等的数为例。
处理可以从操作802继续到操作804,“基于比特数限制比例因子确定与视频数据块相关联的比特数限制”,其中可以至少部分地基于比特数限制比例因子来确定针对视频数据块的比特数限制。例如,编码器102或解码器120可以确定比特数限制。在一些示例中,确定针对视频数据块或与视频数据块相关联的比特数限制可以包括将比特数限制比例因子与视频数据块的原始视频数据大小相乘(例如,如在公式(4)中示出的)。如所讨论的,在一些示例中,针对所有的编码模式,比特数限制比例因子可以是5/3,并且在这样的示例中,针对视频数据的最大编码单元的比特数限制,可以通过将最大编码单元原始数据数目与比特数限制比例因子5/3相乘来确定。
在一般情况下,编码器102和/或解码器120可以基于所确定的比特数限制来对视频数据进行编码。在编码器102处,可以将编码的视频数据编码到比特流119中。在解码器120处,编码的视频数据可以用于生成输出图像,例如,可以经由显示设备向用户呈现。
通常,可以针对任意数目的视频数据块,将过程800重复任意次数。进而,可以在编码模式改变时或定期地等等发起过程800。所产生的比特数可以用于如所讨论的对比特流进行编码或者生成输出图像。与过程800相关的一些另外的和/或可选的细节可以在本申请中讨论的实现的一个或多个示例中并且具体地针对下文中的图9进行说明。
图9是根据本公开至少一些实现布置的示例视频编码系统900和运行中的视频编码过程900的说明性图。在所说明的实现中,过程900可以包括如由动作901、902、903、904、905、906、907、908、909、910、911、912、913和/或914中的一个或多个说明的一个或多个操作、功能或动作。通过非限制性示例的方式,将参考图1中的示例视频编码系统100来描述本申请中描述的过程900。
在所说明的实现中,视频编码系统100可以包括逻辑模块920等等和/或其组合。例如,逻辑模块920可以包括编码器930(例如,其可以对应于编码器102或编码器702)和解码器940,编码器930可以包括比特数限制模块950,解码器940可以是比特数限制模块960。虽然如在图9中示出的,视频编码系统100可以包括与特定模块相关联的块或动作的一个特定集,但是这些块或动作可以与在本文中描述的特定模块不同的模块相关联。虽然如所说明的,过程900涉及编码和解码,但是所描述的概念和/或操作可以单独地应用于编码和/或解码,并且更具体地,应用于视频编码。
过程900可以开始于块901,“确定比特数比例因子”,其中可以至少部分地基于活动的视频编码模式来从多个比特数限制比例因子确定比特数限制比例因子。例如,编码器930可以通过比特数限制模块950确定比特数限制比例因子。在一些示例中,确定比特数限制比例因子可以包括访问具有多个比特数限制比例因子和相对应的编码模式的表(例如,表1或表2)。在其他示例中,5/3的比特数限制比例因子可以用于所有的编码模式。
过程900可以从块901继续到块902,“确定与视频数据块相关联的比特数限制”,其中可以至少部分地基于比特数限制比例因子来确定针对视频数据块或与视频数据块相关联的比特数限制。例如,编码器930可以通过比特数限制模块950确定比特数限制。在一些示例中,确定针对视频数据块或与视频数据块相关联的比特数限制可以包括将比特数限制比例因子与视频数据块的原始视频数据大小相乘(例如,如在公式(4)中所示出的)。如所讨论的,在一些示例中,针对所有编码模式,比特数限制比例因子可以是5/3,并且在这样的示例中,针对视频数据的最大编码单元的比特数限制可以通过将最大编码单元原始数据数目与比特数限制比例因子5/3相乘来确定(例如,如在公式(3)中所示出的)。
过程900可以从块902继续到块903,“基于比特数限制对视频数据进行编码”,其中可以至少部分地基于比特数限制来对视频数据进行编码。例如,编码器930可以基于比特数限制来对视频数据进行编码。
过程900可以从块903继续到块904,“基于编码的数据对比特流进行编码”,其中可以至少部分地基于编码的视频数据来对比特流进行编码。例如,编码器930可以对包括在块903处被编码的数据的比特流进行编码。例如,编码的比特流可以对应于比特流119或比特流719。
过程900可以从块904继续到块905,“利用比特数比例因子和相对应的编码模式对比特流进行编码”,其中可以将多个比特数限制比例因子和相对应的多个编码模式编码到比特流中。在一些示例中,可以将比特数限制比例因子和相对应的多个编码模式提供为比特流的补充增强信息(SEI)包的一部分。如所讨论的,在一些示例中,解码器可以使用经由比特流接收到的信息来实现所描述的技术。在其他示例中,解码器可以使用在解码器处预装载或预确定的比例因子和相对应的编码模式来实现所描述的技术。在又一其他的示例中,可以使用5/3的常数比例因子。在这样的示例中,可以跳过块905。
过程900可以在906处继续,“传输比特流”,其中可以传输编码的比特流。如所示出的,可以向解码器940传输编码的比特流。如所讨论的,编码器930可以与内容提供方系统相关联和/或由内容提供方系统提供,并且解码器940可以与客户端系统相关联。因此,在各种实现中,可以基本彼此独立地实现编码器930和解码器940。在各种示例中,可以经由互联网、经由存储器设备等等来传输比特流。如将明白的是,在一些实现中,可以串联或并联地向多个设备传输比特流。
过程900可以从块906继续或者开始于块907,“接收比特流”,其中可以在解码器940处接收与视频数据相关联的比特流。
过程900可以从块907继续到块908,“访问比特流以确定比特数比例因子和相对应的编码模式”,其中可以访问所接收的比特流,以确定多个比特流限制比例因子和相对应的多个编码模式。如所讨论的,在一些示例中,比特数限制比例因子和相对应的多个编码模式可以经由解码器940实现,而不被编码到比特流中。在这样的示例中,可以跳过块908。
过程900可以继续909,“确定比特数比例因子”,其中可以至少部分地基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子。例如,解码器940可以经由比特数限制模块960确定比特数限制比例因子。在一些示例中,确定比特数限制比例因子可以包括访问具有多个比特数限制比例因子和相对应的编码模式的表(例如,表1或表2)。在其他示例中,5/3的比特数限制比例因子可以用于所有的编码模式。
过程900可以从块909继续到块910,“确定与视频数据块相关联的比特数限制”,其中可以至少部分地基于比特数限制比例因子确定针对视频数据块或者与视频数据块相关联的比特数限制。例如,解码器940可以经由比特数限制模块950确定比特数限制。在一些示例中,确定针对视频数据块或者与视频数据块相关联的比特数据限制可以包括将比特数限制比例因子与视频数据块的原始视频数据大小相乘(例如,如在公式(4)中示出的)。如所讨论的,在一些示例中,针对所有的编码模式,比特数限制比例因子可以是5/3,并且在这样的示例中,针对视频数据的最大编码单元的比特数限制可以通过将最大编码单元原始数据数目与5/3的比特数限制比例因子相乘来确定(例如,如在公式(3)中示出的)。
过程900可以从块910继续到块911,“基于比特数限制确定缓冲器大小”,其中可以基于所确定的比特数限制来确定缓冲器大小。例如,解码器940可以确定与所确定的比特数限制相等或类似的所分配的或专用的存储器缓冲器大小。在一些示例中,缓冲器大小可能不基于比特数限制而改变,并且在这样的示例中,可以跳过块911。
过程可以在块912处继续,“基于比特数限制对视频数据进行编码”,其中可以至少部分地基于比特数限制来对视频数据进行编码。例如,视频解码器940可以基于比特数限制来对视频数据进行解码。
过程900可以从块912继续到块913,“基于比特数限制确定缓冲器大小”,其中可以至少部分地基于视频数据的编码来生成输出图像。例如,解码器940可以基于在块912处解码的视频数据来生成输出图像。
过程900可以从块912继续到块913,“传输输出图像以进行呈现”,其中可以传输输出图像以进行呈现。例如,可以经由显示设备向用户呈现输出图像。虽然示例过程300、700、800、或900的实现可以包括以所说明的顺序执行所示出的所有块,但是,本公开在这一方面并不受限,并且在各种示例中,过程300、700、800、或900的实现可以包括仅执行所示出的块的子集和/或以与所示出的顺序不同的顺序来执行。
此外,本申请中讨论的块中的任意一个或多个可以响应于由一个或多个计算机程序产品提供的指令来执行。这样的程序产品可以包括提供指令的信号承载介质,当例如由处理器执行时,所述指令可以提供本申请中描述的功能。可以按照任意形式的一个或多个机器可读介质提供计算机程序产品。因而,例如,包括一个或多个处理器核心的处理器可以响应于由一个或多个机器可读介质传送给处理器的程序代码和/或指令或指令集来执行示例过程中的一个或多个块。通常,机器可读介质可以传送可以使本申请中描述的设备和/或系统中的任意一个实现系统100和/或视频编解码模块406、或者本申请中讨论的其他系统或模块的至少部分的程序代码和/或指令或指令集形式的软件。
如在本申请中描述的任意实现中使用的,术语“模块”指代被配置为提供本申请中描述的功能的软件逻辑、固件逻辑和/或硬件逻辑的任意组合。软件可以被体现为软件包、代码和/或指令集或指令,并且如在本申请中的任何实现中使用的,“硬件”可以例如包括存储由可编程电路执行的指令的单个或任意组合的硬接线电路、可编程电路、状态机电路、和/或固件。模块可以共同地或单独地被体现为形成较大系统的一部分的电路,该较大系统例如是集成电路(IC)、片上系统(SoC)等等。
图10是根据本公开至少一些实现布置的示例视频编码系统1000的说明性图。在所说明的实现中,视频编码系统1000可以包括成像设备1001、视频编码器1002、天线1003、视频解码器1004、一个或多个处理器1006、一个或多个内存存储器1008、显示器1010、和/或逻辑模块1040。逻辑模块1040可以包括比特数限制模块960等等和/或其组合。在一些示例中,例如,视频编码器1002可以实现包括诸如比特数限制模块940的比特数限制模块的一个或多个逻辑模块。
如所说明的,天线1003、视频解码器1004、处理器1006、内存存储器1008、和/或显示器1010可以与彼此通信和/或与部分的逻辑模块1040通信。类似地,成像设备1001和视频编码器1002可以彼此通信和/或与部分的逻辑模块1040通信。因此,视频解码器1004可以包括所有的或部分的逻辑模块1040,而视频编码器1002可以包括类似的逻辑模块。如图10中示出的,虽然视频编码系统1000可以包括与特定模块相关联的块或动作的一个特定集,但是这些块或动作可以与在本文说明的特定模块不同的模块相关联。
在一些示例中,视频编码系统1000可以包括天线1003、视频解码器1004等等和/或其组合。天线1003可以被配置为接收视频数据的编码的比特流。视频解码器1004可以通信地耦合到天线1003,并且可以被配置为对编码的比特流进行解码。如本申请中讨论的,视频解码器1004可以被配置为至少部分地基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子,并且至少部分地基于比特数限制比例因子确定针对视频数据块的或者与视频数据块相关联的比特数限制,或者至少部分地基于比特数限制通过将最大编码单元原始数据数目与5/3的比特数限制比例因子相乘来确定针对视频数据的最大编码单元或者与该最大编码单元相关联的比特数限制并且对该视频数据进行编码。
在其他示例中,视频编码系统1000可以包括显示设备1010、一个或多个处理器1006、一个或多个内存存储器1008、比特数限制模块960等等和/或其组合。显示设备1010可以被配置为呈现诸如输出图像的视频数据。处理器1006可以通信地耦合到显示器1010。内存存储器1008可以通信地耦合到一个或多个处理器1006。视频解码器1004(或者在其他示例中,视频编码器1002)可以通信地耦合到一个或多个处理器1006,并且可以被配置为至少部分地基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子,至少部分地基于比特数限制比例因子确定针对视频数据块的或者与视频数据块相关联的比特数限制,并且至少部分到基于比特数限制来对视频数据进行编码,或者至少部分地基于比特数限制通过将最大编码单元原始数据数目与比特数限制缩放因子5/3相成来确定针对视频数据的最大编码单元或者与该最大编码单元相关联的比特数限制,使得可以至少部分地基于编码的视频数据经由显示设备1010呈现图像数据。
在各种实施例中,比特数限制模块960(以及经由编码器1002实现的比特数限制模块,如果存在)可以以硬件实现,而软件可以实现其他的逻辑模块。例如,在一些实施例中,比特数限制模块960可以由专用集成电路(ASIC)逻辑实现,而其他的逻辑模块可以通过由诸如处理器1006的逻辑执行的软件指令来提供。然而,本公开在这一方面不受限制并且比特数限制模块960(以及经由编码器1002实现的比特数限制模块,如果存在)和/或其他的逻辑模块可以由硬件、固件和/或软件的任意组合来实现。此外,内存存储器1008可以是诸如易失性存储器(例如,静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或非易失性存储器(例如,闪存等)等等的任意类型的存储器。在非限制性示例中,内存存储器1008可以由高速缓存实现。图5说明了根据本公开的示例系统500。在各种实现中,系统500可以是媒体系统,虽然系统500不受这一上下文限制。例如,系统500可以被并入到个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板电脑、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板或智能电视)、移动互联网设备(MID)、消息传送设备、数据通信设备、照相机(例如,傻瓜照相机、超级变焦照相机、数字单镜头反光(DSLR)照相机)等等中。
在各种实现中,系统500包括耦合到显示器520的平台502。平台502可以从诸如内容服务设备530或内容递送设备540或其他类似的内容源的内容设备接收内容。包括一个或多个导航特征的导航控制器550可以用于与例如平台502和/或显示器520进行交互。下文将更详细地描述这些组件中的每一个。
在各种实现中,平台502可以包括芯片集505、处理器510、存储器512、天线513、存储装置514、图形子系统515、应用516和/或无线电设备518的任意组合。芯片集505可以在处理器510、存储器512、存储装置514、图形子系统515、应用516和/或无线电设备518之间提供相互通信。例如,芯片集505可以包括能够提供与存储装置514的相互通信的存储装置适配器(未描绘)。
处理器510可以被实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核、或者任何其它微处理器或中央处理单元(CPU)。在各种实现中,处理器510可以是双核处理器、双核移动处理器,等等。
存储器512可以被实现为易失性存储器设备,例如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
存储器514可以被实现为非易失性存储设备,例如但不限于磁盘驱动、光盘驱动、磁带驱动、内部存储设备、附接的存储设备、闪存、电池供电的SDRAM(同步DRAM)、和/或网络可访问的存储设备。在各种实现中,例如,当包括多个硬盘驱动时,存储装置514可以包括用于针对有价值的数字媒体增加存储性能增强保护的技术。
图形子系统515可以执行对诸如静止或视频的图像的处理以进行显示。例如,图形子系统515可以是图形处理单元(GPU)或视觉处理单元(VPU)。模拟或数字接口可以用于通信地耦合图形子系统915和显示器520。例如,该接口可以是高清多媒体接口、显示端口、无线HDMI和/或无线HD兼容技术中的任意一种。图形子系统515可以被集成到处理器510或芯片集505中。在一些实现中,图形子系统515可以是通信地耦合到芯片集505的独立设备。
本申请中描述的图形和/或视频处理技术可以在各种硬件架构中实现。例如,图形和/或视频功能可以被集成在芯片集内。可选地,可以使用分立的图形和/或视频处理器。作为又一实现,图形和/或视频功能可以由包括多核处理器的通用处理器提供。在进一步的实施例中,所述功能可以在消费类电子设备中实现。
无线电设备518可以包括能够使用各种合适的无线通信技术来传输和接收信号的一个或多个无线电设备。这样的技术可以涉及跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨这样的网络的通信中,无线电设备518可以根据任意版本的一个或多个适用的标准进行操作。
在各种实现中,显示器520可以包括任何电视类型的监视器或显示器。显示器520可以例如包括计算机显示屏、触摸屏显示器、视频监视器、类似电视的设备、和/或电视。显示器520可以是数字的和/或模拟的。在各种实现中,显示器520可以是全息显示器。并且,显示器520可以是可以接收视觉投影的透明表面。这样的投影可以传送各种形式的信息、图像和/或对象。例如,这样的投影可以是用于移动增强现实(MAR)应用的视觉覆盖。在一个或多个软件应用516的控制下,平台502可以在显示器520上显示用户接口522。
在各种实现中,例如,内容服务设备530可以由任何国家的、国际的和/或独立的服务托管并且因而经由因特网对于平台502可访问。内容服务设备530可以耦合到平台502和/或显示器520。平台502和/或内容服务设备530可以耦合到网络560,以传送(例如,发送和/或接收)去往和来自网络560的媒体信息。内容递送设备540也可以耦合到平台502和/或显示器520。
在各种实现中,内容服务设备530可以包括有线电视盒、个人计算机、网络、电话、具有互联网功能的设备或者能够递送数字信息和/或内容的装置,以及能够在内容提供方和平台502和/或显示器520之间经由网络560或者直接地单向或双向传送内容的任何其他类似的设备。应当理解的是,可以经由网络560单向地和/或双向地传送来自或去往系统500中的组件和内容提供方中的任意一个的内容。内容的示例可以包括任何媒体信息,例如包括视频、音乐、医疗和游戏信息,等等。
内容服务设备530可以接收诸如有线电视节目的内容,包括媒体信息、数字信息、和/或其他内容。内容提供方的示例可以包括任何有线或卫星电视或者无线电或互联网内容提供方。所提供的示例并不意味着以任何方式限制根据本公开的实现。
在各种实现中,平台502可以从具有一个或多个导航特征的导航控制器550接收控制信号。例如,控制器550的导航特征可以用于与用户接口522交互。在各种实施例中,导航控制器550可以是指向设备,其可以是允许用户将空间(例如,连续的和多维的)数据输入到计算机中的计算机硬件组件(具体地说,人机接口设备)。诸如图形用户接口(GUI)以及电视和监视器的许多系统允许用户使用物理手势控制并提供数据至计算机或电视。
控制器550的导航特征的移动可以通过在显示器上显示的指针、光标、聚焦环、或其他视觉指示符的移动而在显示器(例如显示器520)上重复。例如,在软件应用程序516的控制下,位于导航控制器550上的导航特征可以例如被映射到在用户接口522上显示的虚拟导航特征。在各种实施例中,控制器550可以不是单独的组件,而是可以被集成到平台502和/或显示器520中。然而,本公开并不限于上述元件或所示出的上下文或本申请中所描述的内容。
在各种实现中,驱动器(未显示)可以包括用于使用户能够即时打开和关闭类似电视的平台502的技术,例如,当被启用时,在初始启动之后触摸按钮。程序逻辑可以允许平台502将内容流式传送到媒体适配器或其他内容服务设备530或内容递送设备540,即使当平台被“关闭”时。此外,芯片集505可以例如包括支持5.1环绕声音频和/或高清7.1环绕声音频的硬件和/或软件。驱动器可以包括用于集成图形平台的图形驱动器。在各种实施例中,图形驱动器可以包括外围组件互连(PCI)快速图形卡。
在各种实现中,可以集成在系统500中示出的组件中的任意一个或多个。例如,可以集成平台502和内容服务设备530,或者,可以集成平台502和内容递送设备540,或者,例如,可以集成平台502、内容服务器530和内容递送设备540。在各种实施例中,平台502和显示器520可以是集成的单元。例如,可以集成显示器520和内容服务设备530,或者可以集成显示器520和内容递送设备540。这些实施例并不意在限制本公开。
在各种实施例中,系统500可以被实现为无线系统、有线系统或二者的组合。当被实现为无线系统时,系统500可以包括适于通过诸如一个或多个天线、发射机、接收机、收发机、放大器、滤波器、控制逻辑等等的无线共享介质进行通信的组件和接口。无线共享介质的示例可以包括诸如RF频谱等等的无线频谱的一部分。当被实现为有线系统时,系统500可以包括适于通过诸如输入/输出(I/O)适配器、用于将I/O适配器与相对应的有线通信介质连接的物理连接器、网络接口卡(NIC)、光盘控制器、视频控制器、音频控制器等等的有线通信介质进行通信的组件和接口。有线通信介质的示例可以包括导线、电缆、金属引线、印刷电路板(PCB)、背板、交换结构、半导体材料、双绞线、同轴线缆、光纤等等。
平台502可以建立一个或多个逻辑或物理信道来传送信息。信息可以包括媒体信息和控制信息。媒体信息可以指代表示意在用于用户的内容的任何数据。内容的示例可以例如包括来自语音会话、视频会议、流视频、电子邮件(“电邮”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等等的数据。来自语音对话的数据可以例如是语音信息、静默时段、背景噪声、舒适噪声、音调等等。控制信息可以指代表示意在用于自动系统的命令、指令或控制字的任意数据。例如,控制信息可以用于经过系统路由媒体信息,或者指示节点按照预定的方式处理媒体信息。然而,实施例并不限于图5中示出或描述的元件或在图5中示出或描述的上下文。
如上文描述的,系统500可以以不同的物理样式或形状因子来实现。图6说明了其中可以体现系统600的小形状因子设备600的实现。在各种实施例中,例如,设备600可以被实现为具有无线功能的移动计算设备。移动计算设备可以指代具有处理系统和例如以一个或多个电池为例的移动电源或功率源的任何设备。
如上文描述的,移动计算设备的示例可以包括个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板电脑、触摸板、便携式计算机、手持式计算机、掌上型计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能手机、智能平板或智能电视)、移动互联网设备(MID)、消息传送设备、数据通信设备、照相机(例如,傻瓜相机、超变焦照相机、数字单镜头反光(DSLR)照相机),等等。
移动计算设备的示例还可以包括被布置为由人穿戴的计算机,例如手腕计算机、手指计算机、环形计算机、眼镜计算机、皮带夹计算机、臂带计算机、鞋式计算机、服装式计算机,以及其它可穿戴的计算机。在各种实施例中,例如,移动计算设备可以被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。虽然一些实施例可以利用通过示例的方式被实现为智能电话的移动计算设备来描述,但是,可以理解的是,也可以使用其它无线移动计算设备来实现其它实施例。实施例不限于本文的上下文。
如图6中示出的,设备600可以包括壳体602、显示器604、输入/输出(I/O)设备606以及天线608。设备600还可以包括导航特征612。显示器604可以包括用于显示适于移动计算设备的信息的任何合适的显示单元。I/O设备606可以包括用于将信息输入到移动计算设备的任何合适的I/O设备。针对I/O设备606的示例可以包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别设备和软件等等。还可以通过麦克风(未示出)的方式将信息输入到设备600中。可以通过语音识别设备(未示出)来数字化这样的信息。实施例不限于本文的上下文。
可以使用硬件元件、软件元件或二者的组合来实现各种实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片集等等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任意组合。确定实施例是否使用硬件元件和/或软件元件来实现可以根据任意数量的因素变化,该因素例如是所期望的计算速率、功率级别、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其它设计或性能约束条件。
可以通过代表在处理器内的各种逻辑的、存储在机器可读介质上的代表性指令来实现至少一实施例的一个或多个方面,当由机器读取时,该指令导致机器制造逻辑以执行本文中描述的技术。这样的表示,被称为“IP核”,可以被存储在有形的机器可读介质上并且被供给到各种客户或生产设施,以加载到实际上制造该逻辑或处理器的制造机器。
虽然在本申请中阐述的某些特征已经参考各种实现进行了描述,但是这一描述并不意在以限制的意义来解释。因而,对本文中描述的实现和其他实现的各种修改被认为在本公开的精神和范围内,这些修改对于本公开所属领域的熟练技术人员而言是显而易见的。
下面的示例涉及进一步的实施例。
在一个示例中,用于执行视频编码的计算机实现的方法可以包括至少部分地基于活动的视频编码模式从多个比特数限制比例因子确定比特数限制比例因子。可以至少部分地基于比特数限制比例因子来确定针对视频数据块的比特数限制。
在另一示例中,用于执行视频编码的计算机实现的方法还可以包括至少部分地基于比特数限制来对视频数据进行编码。可以至少部分地基于编码的视频数据来对比特流进行编码。可以将多个比特数限制比例因子和相对应的多个编码模式编码到比特流中。多个比特数限制比例因子和相对应的多个编码模式可以被编码为比特流的补充增强信息(SEI)包的一部分。可以接收所述比特流。可以访问所属比特流以确定多个比特数限制比例因子和相对应的多个编码模式。可以基于所确定的比特数限制来确定缓冲器大小。可以至少部分地基于对所述视频数据的编码来生成输出图像。确定比特数限制比例因子可以包括访问包括多个比特数限制比例因子和相对应的多个编码模式的表。确定比特数限制比例因子可以包括确定经由表所属活动的编码模式不可用,并且可以将比特数限制比例因子设置成缺省的比特数限制比例因子。确定针对视频数据块的比特数限制可以包括将比特数限制比例因子与视频数据块的原始视频数据大小相乘。比例因子可以包括等于或大于1并且小于或等于2的数、3/2、4/3、或5/3。多个编码模式可以包括较低比特产生编码模式和较高比特产生编码模式,所述较高比特产生编码模式比所述较低比特产生编码模式产生更多的比特,使得与所述较低比特产生编码模式相关联的比特数限制比例因子小于与所述较高比特产生编码模式相关联的比特数限制比例因子。所述视频数据块可以是最大编码单元(LCU)。所述视频数据块可以包括高效率视频编码(HEVC)视频数据。第一编码模式可以包括HEVC主配置文件中变换跳过被启用的所有编码模式,且相对应的第一比特数限制比例因子可以是4/3。第二编码模式可以包括HEVC主配置文件中变换跳过被禁用的所有编码模式,且相对应的第二比特数限制比例因子可以是3/2。第三编码模式可以包括HEVC主静止图像配置文件中变换跳过被启用的所有编码模式,且相对应的第三比特数限制比例因子可以是4/3。第四编码模式可以包括HEVC主静止图像配置文件中变换跳过被禁用的所有编码模式,且相对应的第四比特数限制比例因子可以是3/2。第五编码模式可以包括HEVC主10配置文件中变换跳过被启用的所有编码模式,且相对应的第五比特数限制比例因子可以是5/3。第六编码模式可以包括HEVC主10配置文件中变换跳过被禁用的所有编码模式,且相对应的第六比特数限制比例因子可以是5/3。确定比特数限制可以包括在视频解码器处确定比特数限制。可以至少部分地以硬件实现视频解码器。确定比特数限制可以包括在视频编码器处确定比特数限制。可以至少部分地以硬件实现视频编码器。
在又一示例中,用于执行视频编码的计算机实现的方法可以包括通过将最大编码单元原始数据数目与比特数限制比例因子5/3相乘来确定与视频数据的最大编码单元相关联的比特数限制。可以至少部分地基于比特数限制来对视频数据进行编码。
在另一进一步的示例中,用于执行视频编码的计算机实现的方法可以进一步包括至少部分地基于编码的视频数据来对比特流进行编码。可以接收比特流。可以基于所确定的比特数限制来确定缓冲器大小。可以至少部分地基于视频数据来生成输出图像。视频数据块可以包括高效率视频编码(HEVC)视频数据。确定比特数限制可以包括在视频解码器处确定比特数限制。可以至少部分地以硬件来实现视频解码器。确定比特数限制可以包括在视频编码器处确定比特数限制。可以至少部分地以硬件来实现视频编码器。
在另一示例中,用于在计算机上进行视频编码的系统可以包括显示设备、一个或多个处理器、一个或多个存储器、视频代码器等等和/或其组合。显示设备可以被配置为呈现视频数据。一个或多个处理器可以通信地耦合到显示设备。一个或多个存储器可以通信地耦合到一个或多个处理器。视频代码器可以通信地耦合到一个或多个处理器并被配置为至少部分地基于活动的视频编码模式从多个比特数限制比例因子来确定比特数限制缩放因子以及至少部分地基于比特数限制比例因子来确定与视频数据块关联的比特数限制。可以至少部分地基于编码的视频数据来通过显示设备呈现图像数据。
在另外的示例性系统中,视频代码器可以被配置为至少部分地基于编码的视频数据来对比特流进行编码,将多个比特数限制比例因子和相对应的多个编码模式编码到比特流中,其中多个比特数限制比例因子和相对应的多个编码模式包括比特流的补充增强信息(SEI)包的一部分,接收所述比特流,访问所述比特流以确定多个比特数限制缩放因子和相对应的多个编码模式,基于所确定的比特数限制确定缓冲器大小,和/或至少部分地基于编码的视频数据生成输出图像。视频代码器可以被配置为通过访问包含多个比特数限制比例因子和相对应的多个编码模式的表来确定比特数限制比例因子。视频代码器可以被配置成通过确定经由所述表所述活动的编码模式不可用来确定比特数限制比例因子,并且其中比特数限制比例因子被设置成缺省的比特数限制比例因子。视频代码器可以被配置成通过将比特数限制比例因子与视频数据块的原始视频数据大小相乘来确定与视频数据块关联的比特数限制。比例因子可以包括等于或大于1以及小于或等于2的数、3/2、4/3、或5/3。多个编码模式可以包括较低比特产生编码模式和较高比特产生编码模式,所述较高比特产生编码模式产生比所述较低比特产生编码模式更多的比特,使得与所述较低比特产生编码模式相关联的比特数限制比例因子小于与所述较高比特产生编码模式相关联的比特数限制比例因子。所述视频数据块可以是最大编码单元(LCU)。所述视频数据块包括高效率视频编码(HEVC)视频数据。第一编码模式可以包括HEVC主配置文件中变换跳过被启用的所有编码模式,且相对应的第一比特数限制比例因子可以是4/3。第二编码模式可以包括HEVC主配置文件中变换跳过被禁用的所有编码模式,且相对应的第二比特数限制比例因子可以是3/2。第三编码模式可以包括HEVC主静止图像配置文件中变换跳过被启用的所有编码模式,且相对应的第三比特数限制比例因子可以是4/3。第四编码模式可以包括HEVC主静止图像配置文件中变换跳过被禁用的所有编码模式,且相对应的第四比特数限制比例因子可以是3/2。第五编码模式可以包括HEVC主10配置文件中变换跳过被启用的所有编码模式,且相对应的第五比特数限制比例因子可以是5/3。第六编码模式可以包括HEVC主10配置文件中变换跳过被禁用的所有编码模式,且相对应的第六比特数限制比例因子可以是5/3。视频代码器可以包括视频解码器。可以至少部分地以硬件来实现视频解码器。视频代码器可以包括视频编码器。视频编码器可以至少部分地以硬件来实现。
在又一示例中,用于在计算机上进行视频编码的系统可以包括显示设备、一个或多个处理器、一个或多个存储器、视频代码器等等和/或其组合。显示设备可以被配置为呈现视频数据。一个或多个处理器可以通信地耦合到显示设备。一个或多个存储器可以通信地耦合到一个或多个处理器。视频代码器可以通信地耦合到一个或多个处理器并被配置为通过将最大编码单元原始数据数与5/3的比特数限制比例因子相乘来确定与视频数据的最大编码单元相关联的比特数限制,并且至少部分地基于所述比特数限制对所述视频数据进行编码。可以至少部分地基于编码的视频数据经由所述显示设备来呈现图像数据。
在另一进一步的示例系统中,视频代码器可以被配置为至少部分地基于编码的视频数据对比特流进行编码,接收所述比特流,基于所确定的比特数限制确定缓冲器大小,和/或至少部分地基于对所述视频数据的编码产生输出图像。视频数据块可以包括高效率视频编码(HEVC)视频数据。视频代码器可以包括视频解码器。可以至少部分地以硬件来实现视频解码器。视频代码器可以包括视频编码器。可以至少部分地以硬件来实现视频编码器。
在进一步的示例中,至少一个机器可读介质可以包括多个指令,响应于在计算设备上被执行,所述指令使得所述计算设备执行根据上述示例中的任意一个的方法。
在又进一步的示例中,一种装置可以包括用于执行根据上述示例中的任意一个的方法的单元。
上面的示例可以包括特征的特定组合。然而,上述这样的示例在这一方面并不受限,并且在各种实现中,上述示例可以包括仅执行这些特征的子集,执行这样的特征的不同顺序,执行这样的特征的不同组合,和/或执行与明确列出的这些特征不同的另外的特征。例如,针对示例方法所描述的所有特征可以针对示例装置、示例系统、和/或示例制品实现,并且反之亦然。

Claims (19)

1.一种用于对压缩的视频数据进行解码的装置,包括:
视频解码器,用于访问压缩的视频数据的比特流,所述压缩的视频数据包括编码的视频数据的至少一个编码单元;
所述视频解码器用于基于与所述编码的视频数据的编码单元相对应的编码模式集,从多个比特数限制比例因子中确定与所述编码的视频数据的编码单元相对应的比特数限制比例因子;并且
所述视频解码器用于至少部分地基于所述比特数限制比例因子来确定与所述编码单元相关联的比特数限制,其中,为了确定所述比特数限制,所述视频解码器将所述编码单元的原始数据大小与所述比特数限制比例因子相乘。
2.根据权利要求1所述的装置,还包括存储装置,其中,所述视频解码器用于至少部分地基于确定的比特数限制来确定所述存储装置中的缓冲器的大小。
3.根据权利要求1所述的装置,其中,所述视频解码器用于通过访问所述比特流的句法中的至少一个指示符来确定所述原始数据大小。
4.根据权利要求1所述的装置,其中,当所述编码模式集包括变换跳过被启用的高效率视频编码(HEVC)主配置文件时,所述比特数限制比例因子是第一比例因子,而当所述编码模式集包括变换跳过被禁用的HEVC主配置文件时,所述比特数限制比例因子是第二比例因子,其中,所述第二比例因子大于所述第一比例因子。
5.根据权利要求4所述的装置,其中,当所述编码模式集包括变换跳过被启用的HEVC主静止图像配置文件时,所述比特数限制比例因子是所述第一比例因子,当所述编码模式集包括变换跳过被禁用的HEVC主静止图像配置文件时,所述比特数限制比例因子是所述第二比例因子,当所述编码模式集包括变换跳过被启用的HEVC主10配置文件时,所述比特数限制比例因子是第三比例因子,当所述编码模式集包括变换跳过被禁用的HEVC主10配置文件时,所述比特数限制比例因子是所述第三比例因子,其中,所述第三比例因子大于所述第二比例因子。
6.根据权利要求5所述的装置,其中,所述第一比例因子是4/3,所述第二比例因子是3/2,而所述第三比例因子是5/3。
7.根据权利要求1所述的装置,其中,所述编码模式集由所述比特流中包括的指示符来指定,并且所述比特数限制比例因子缺省是5/3。
8.一种用于对压缩的视频数据进行解码的系统,包括权利要求1-7中的任意一项所述的装置并且还包括如下部件:
显示器,其中,所述视频解码器用于对所述至少一个编码单元进行解码以生成解码的视频数据;以及
处理器,用于在所述显示器上显示所述解码的视频数据。
9.根据权利要求8所述的系统,还包括用于接收所述比特流的一个或多个无线电装置。
10.一种用于对压缩的视频数据进行解码的计算机实现的方法,包括:
访问压缩的视频数据的比特流,所述压缩的视频数据包括编码的视频数据的至少一个编码单元;
基于与所述编码的视频数据的编码单元相对应的编码模式集,从多个比特数限制比例因子中确定与所述编码的视频数据的编码单元相对应的比特数限制比例因子;以及
至少部分地基于所述比特数限制比例因子来确定与所述编码单元相关联的比特数限制,其中,确定所述比特数限制包括将所述编码单元的原始数据大小与所述比特数限制比例因子相乘。
11.根据权利要求10所述的方法,还包括:
至少部分地基于确定的比特数限制来确定缓冲器大小。
12.根据权利要求10所述的方法,其中,确定所述原始数据大小包括访问所述比特流的句法中的至少一个指示符。
13.根据权利要求10所述的方法,其中,当所述编码模式集包括变换跳过被启用的高效率视频编码(HEVC)主配置文件时,所述比特数限制比例因子是第一比例因子,而当所述编码模式集包括变换跳过被禁用的HEVC主配置文件时,所述比特数限制比例因子是第二比例因子,其中,所述第二比例因子大于所述第一比例因子。
14.根据权利要求13所述的方法,其中,当所述编码模式集包括变换跳过被启用的HEVC主静止图像配置文件时,所述比特数限制比例因子是所述第一比例因子,当所述编码模式集包括变换跳过被禁用的HEVC主静止图像配置文件时,所述比特数限制比例因子是所述第二比例因子,当所述编码模式集包括变换跳过被启用的HEVC主10配置文件时,所述比特数限制比例因子是第三比例因子,当所述编码模式集包括变换跳过被禁用的HEVC主10配置文件时,所述比特数限制比例因子是所述第三比例因子,其中,所述第三比例因子大于所述第二比例因子。
15.根据权利要求14所述的方法,其中,所述第一比例因子是4/3,所述第二比例因子是3/2,而所述第三比例因子是5/3。
16.根据权利要求10所述的方法,其中,所述编码模式集由所述比特流中包括的指示符来指定,并且所述比特数限制比例因子缺省是5/3。
17.一种用于对压缩的视频数据进行解码的装置,包括用于执行根据权利要求10-16中的任意一项所述的方法的单元。
18.一种机器可读存储装置,包括机器可读指令,当被执行时,所述机器可读指令实现根据权利要求10-16中的任意一项所述的方法。
19.一种用于对压缩的视频数据进行解码的设备,包括:
存储器,其用于存储指令;以及
处理器,其耦合到所述存储器,其中所述指令在由所述处理器执行时,使得所述处理器执行根据权利要求10-16中的任意一项所述的方法。
CN201380063672.0A 2013-01-04 2013-03-28 编码单元比特数限制 Expired - Fee Related CN104854865B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361748907P 2013-01-04 2013-01-04
US61/748,907 2013-01-04
US201361770699P 2013-02-28 2013-02-28
US61/770,699 2013-02-28
PCT/US2013/034264 WO2014107183A1 (en) 2013-01-04 2013-03-28 Coding unit bit number limitation

Publications (2)

Publication Number Publication Date
CN104854865A CN104854865A (zh) 2015-08-19
CN104854865B true CN104854865B (zh) 2018-11-20

Family

ID=51062404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380063672.0A Expired - Fee Related CN104854865B (zh) 2013-01-04 2013-03-28 编码单元比特数限制

Country Status (6)

Country Link
EP (1) EP2941866A4 (zh)
JP (1) JP6156808B2 (zh)
KR (1) KR101777487B1 (zh)
CN (1) CN104854865B (zh)
SG (1) SG11201503954YA (zh)
WO (1) WO2014107183A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117356097A (zh) * 2021-04-21 2024-01-05 抖音视界有限公司 用于视频处理的方法、设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1072554A (zh) * 1991-11-08 1993-05-26 国际商业机器公司 采用自适应信号位分配和量化的运动视频信号压缩系统
US7418037B1 (en) * 2002-07-15 2008-08-26 Apple Inc. Method of performing rate control for a compression system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2337621B (en) * 1998-05-20 2002-09-18 Mitel Corp Method of determining a scaling factor
US6516027B1 (en) * 1999-02-18 2003-02-04 Nec Usa, Inc. Method and apparatus for discrete multitone communication bit allocation
US7567722B2 (en) * 2005-03-22 2009-07-28 Qualcomm Incorporated Dynamically scaled file encoding
US8213498B2 (en) * 2007-05-31 2012-07-03 Qualcomm Incorporated Bitrate reduction techniques for image transcoding
US7983496B2 (en) * 2007-06-26 2011-07-19 Mitsubishi Electric Research Laboratories, Inc. Inverse tone mapping for bit-depth scalable image coding adapted to variable block sizes
US8477847B2 (en) * 2007-12-17 2013-07-02 Vixs Systems, Inc. Motion compensation module with fast intra pulse code modulation mode decisions and methods for use therewith
US9516379B2 (en) * 2011-03-08 2016-12-06 Qualcomm Incorporated Buffer management in video codecs

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1072554A (zh) * 1991-11-08 1993-05-26 国际商业机器公司 采用自适应信号位分配和量化的运动视频信号压缩系统
US7418037B1 (en) * 2002-07-15 2008-08-26 Apple Inc. Method of performing rate control for a compression system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《AHG4: Suggested constraint on number of bits/bins per LCU》;Keiichi Chono;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,10th Meeting: Stockholm, SE, 11–20 July 2012,JCTVC-J0059-r2》;20120720;说明书第1-7页 *
《AHG9: On LCU bit size limit》;Keiichi Chono;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JCTVC-K0176-r2,11th Meeting: Shanghai, CN, 10–19 Oct. 2012》;20121019;说明书第1-6页 *

Also Published As

Publication number Publication date
EP2941866A1 (en) 2015-11-11
CN104854865A (zh) 2015-08-19
KR101777487B1 (ko) 2017-09-11
WO2014107183A1 (en) 2014-07-10
SG11201503954YA (en) 2015-06-29
EP2941866A4 (en) 2016-06-01
JP6156808B2 (ja) 2017-07-05
KR20150082527A (ko) 2015-07-15
JP2016508318A (ja) 2016-03-17

Similar Documents

Publication Publication Date Title
CN106170979B (zh) 一种用于视频编码的计算机实现的方法、系统、机器可读介质及设备
CN104541505B (zh) 层间内部模式预测方法、设备及装置
CN104885467B (zh) 用于下一代视频编码的内容自适应参数变换
CN104219524B (zh) 使用感兴趣对象的数据对视频成码的比特率控制
CN103918265B (zh) 跨通道残余预测
CN104321970B (zh) 层间编码单元四叉树模式预测
CN103581665B (zh) 转码视频数据
KR101731335B1 (ko) 스케일러블 비디오 코딩의 층 간 예측을 위한 리파이닝 필터
CN110214447A (zh) 用于360视频的解块滤波
CN104541506A (zh) 层间像素样本预测
CN104782124B (zh) 利用编码器硬件对视频内容进行预处理
CN104584552B (zh) Svc中重复使用层间sao参数的方法、设备、系统及机器可读存储介质
CN109565587A (zh) 具有上下文解码和重构旁路的视频编码的方法和系统
CN108432253A (zh) 长期参考图片译码
CN104937932B (zh) 可适性视频编码的增强参考区域利用
CN107005701A (zh) 使用减少数量的角模式来降低帧内预测复杂度及其后续改进
CN103577269A (zh) 媒体工作负荷调度器
CN107005697A (zh) 用于视频译码的使用基于查找表的概率更新的熵译码的方法与系统
CN104915916B (zh) 使用选择性色彩变换的色彩压缩
CN107667528A (zh) 用于视频编解码的自适应参考帧缓存的方法和系统
CN106664437A (zh) 用于无线视频的自适应比特率流传输
CN107079192A (zh) 使用压缩视频流的动态屏幕上显示
CN106664409A (zh) 视频编码中的黄金帧选择
CN104584553A (zh) 层间残差预测
CN106664407A (zh) 用于无线显示器的并行编码

Legal Events

Date Code Title Description
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181120

Termination date: 20210328

CF01 Termination of patent right due to non-payment of annual fee