用于发信号通知子画面缓冲器参数的电子设备的制作方法

文档序号:15359260发布日期:2018-09-05 00:26阅读:139来源:国知局

本公开大体涉及电子设备。更具体地,本公开涉及用于发信号通知子画面参数的电子设备。



背景技术:

电子设备变得越来越小并且越来越强大,以便满足消费者需要并改善便携性和便利性。消费者已经变得依赖于电子设备,并期望增加的功能性。电子设备的一些示例包括台式计算机、膝上型计算机、蜂窝电话、智能电话、媒体播放器、集成电路等。

一些电子设备用于处理并显示数字媒体。例如,便携式电子设备现在允许在消费者可能处于的几乎任何位置处消费数字媒体。此外,一些电子设备可以提供对数字媒体内容的下载或流传输,以便消费者使用和欣赏。

越来越受欢迎的数字媒体呈现出若干问题。例如,高效地表示高质量数字媒体以用于存储、传输和快速回放提出了若干挑战。如从本讨论中可以看出,以提高的性能来更高效地表示数字媒体的系统和方法可能是有利的。



技术实现要素:

技术问题

期望提供用于表示数字媒体的更有效率的技术。

解决方案

本发明的方面提供了一种用于对缓冲器参数进行编码的电子设备,包括:

电路,被配置为:

产生画面等级参数;

产生子画面等级缓冲器参数;

基于所述子画面等级缓冲器参数来执行子画面等级编码画面缓冲器cpb操作,或者基于所述画面等级参数来执行

cpb操作;

当执行所述cpb操作时设置标志等于0,或者当执行所述子画面等级cpb操作时设置标志等于1;以及

指定cpb尺寸,其中当所述标志等于0时通过使用所述画面等级参数来指定所述cpb尺寸,或者当所述标志等于1时通过使用所述子画面等级缓冲器参数来指定所述cpb尺寸。

本发明的有利效果

当结合附图考虑本发明的以下详细描述时,将更容易理解本发明的上述和其它目标、特征和优点。

附图说明

图1是示出了一个或更多个电子设备的示例的框图,其中在该电子设备中,可以实现用于发信号通知子画面缓冲器参数的系统和方法。

图2示出了用于发送子画面缓冲器参数的方法的一个配置的流程图。

图3是示出了用于发送子画面缓冲器参数的方法的更具体配置的流程图。

图4是示出了用于发送子画面缓冲器参数的方法的另一更具体配置的流程图。

图5示出了用于接收子画面缓冲器参数的方法的一个配置的流程图。

图6是示出了电子设备上的编码器的一个配置的框图。

图7是示出了电子设备上的解码器的一个配置的框图。

图8示出了可以在发送侧电子设备中使用的多种组件。

图9是示出了可以在接收侧电子设备中使用的多种组件的框图。

图10是示出了电子设备的一个配置的框图,其中在该电子设备中,可以实现用于发送子画面缓冲器参数的系统和方法。

图11是电子设备的一个配置的框图,其中在该电子设备中,可以实现用于接收子画面缓冲器参数的系统和方法。

具体实施方式

描述了一种用于发送消息的电子设备。所述电子设备包括处理器和存储在与所述处理器电子通信的存储器中的指令。所述电子设备确定是否允许以子画面等级对画面进行解码。如果允许以子画面等级对所述画面进行解码,则电子设备产生缓冲器尺寸参数和缓冲器标尺参数中的至少一个。电子设备发送缓冲器尺寸参数和缓冲器标尺参数中的至少一个。

缓冲器标尺参数可以是子画面编码画面缓冲器(cpb)尺寸标尺参数。子画面cpb尺寸标尺参数可以是du_cpb_size_scale。

缓冲器尺寸参数可以是子画面cpb尺寸值参数。所述子画面cpb尺寸值参数可以是du_cpb_size_value_minus1[schedselidx]。schedselidx可以是索引变量。

缓冲器标尺参数可以是子画面cpb尺寸标尺参数。子画面cpb尺寸标尺参数可以是du_cpb_size_scale。

如果允许以子画面等级对画面进行解码,则电子设备可以产生子画面cpb存在参数,并发送该子画面cpb存在参数。子画面cpb存在参数可以是子画面cpb参数存在标志。子画面cpb参数存在标志可以是sub_pic_cpb_params_present_flag。

如果允许以子画面等级对画面进行解码,则电子设备可以以子画面等级执行比特流一致性测试。编码器可以不违反所发送的缓冲器尺寸参数和/或所发送的缓冲器标尺参数。

还描述了一种用于测试比特流的电子设备。所述电子设备包括处理器和存储在与所述处理器电子通信的存储器中的指令。该电子设备接收数据。该电子设备还获得子画面等级编码画面缓冲器(cpb)参数。该电子设备基于子画面等级cpb参数,执行子画面等级cpb操作。

所述基于子画面等级cpb参数执行子画面等级cpb操作可以包括:基于子画面等级cpb参数,执行针对子画面等级cpb操作的插值传送调度测试(interpolateddeliveryscheduletest)。基于子画面等级cpb参数执行子画面等级cpb操作可以基于假设参考解码器(hrd)操作的规范。

获得子画面等级cpb参数可以包括获得子画面cpb尺寸标尺参数。子画面cpb尺寸标尺参数可以是du_cpb_size_scale。

还描述了一种用于发送缓冲器参数的方法。可以确定是否允许以子画面等级对画面进行解码。如果允许以子画面等级对画面进行解码,则产生缓冲器尺寸参数和/或缓冲器标尺参数。发送该缓冲器尺寸参数和/或缓冲器标尺参数。

本文公开的系统和方法描述了用于发信号通知缓冲器参数的电子设备。例如,本文所公开的系统和方法描述了通过发送一个或更多个子画面缓冲器参数(诸如,子画面编码画面缓冲器(cpb)参数)来发信号通知子画面缓冲器参数。在一些配置中,本文所公开的系统和方法可以描述了向假设参考解码器(hrd)发送一个或更多个子画面缓冲器参数。例如,除了向hrd发送一个或更多个对应画面缓冲器参数之外,还可以进行该操作。

在一些配置中,本文所公开的系统和方法可以定义新句法要素和语义,以便发信号通知缓冲器尺寸和/或缓冲器标尺参数。可以以子画面等级使用hrd操作的漏桶模型,来计算这些参数。还可以基于子画面缓冲器参数来定义比特流一致性限制。

本文所公开的系统和方法(例如,hrd修改)可以执行多个操作,诸如基于一个或更多个子画面缓冲器参数来测试或验证比特流一致性。例如,本文所公开的系统和方法描述了对hrd参数的修改以便允许子画面等级cpb操作。此外,可以同时支持画面等级或访问单元等级的cpb操作。

在一些配置中,本文所公开的系统和方法可以描述一种针对插值传送调度的解码器一致性限制。例如,解码器一致性限制可以基于子画面缓冲器参数,可以将该子画面缓冲器参数发送给解码器。

本文所公开的系统和方法(例如,hrd修改)可以提供如下优点:当以子画面等级运行hrd时,减小缓冲器尺寸,诸如,cpb。这样可以减小硬件成本。例如,较小的缓冲器尺寸需要较小的存储器,导致需要较少的硬件存储器。

此外,本文所公开的系统和方法可以提供如下优点:hrd不会溢出(overflow)或下溢(underflow)。例如,可以实现该目的的一种方式是发信号通知针对基于子画面的cpb操作的缓冲器尺寸和/或缓冲器标尺参数,并检查比特流的一致性。

应注意,尽管在提及hrd时使用术语“假设的”,然而可以物理上实现hrd。例如,“hrd”可以描述一种真实解码器的实现方案。在一些配置中,可以执行hrd以便确定比特流是否符合高效视频编码(hevc)规范。例如,hrd可以确定typei比特流和typeii比特流是否符合hevc规范。typei比特流可以仅包括视频编码层(vcl)网络接入层(nal)单元以及填充数据nal单元。typeii比特流包括附加的其它nal单元和语法要素。

在一些已知配置中,诸如在benjaminbros等人的“highefficiencyvideocoding(hevc)textspecificationdraft8”,jctvc-j1003_d7,stockholm,2012年7月(下文中称为“hevcdraft8”)中,描述了基于子画面的hrd模型以及相关语法和语义。本文所公开的系统和方法可以描述对hevcdraft8中展现的语法和语义的修改。

下文示出了根据本文所公开的系统和方法的关于cpb操作的示例。根据hevc规范,下文所示的规范可以单独地应用于目前的cpb参数的每个集合以及typei和typeii一致性二者。

可以如下所示地确定比特流到达时刻(例如,一个或更多个比特流到达时间)。可以在任何一个缓冲周期辅助增强信息(sei)消息处初始化hrd。在初始化之前,cpb可能是空的。应注意,在初始化之后,不可能通过随后的缓冲周期sei消息再次初始化hrd。在一些配置中,cpb操作可以单独地应用于目前的cpb参数的每个集合以及typei和typeii一致性二者。

每个访问单元可以被称作访问单元n,其中数字n识别特定访问单元。与初始化cpb的缓冲周期sei消息相关联的访问单元可以被称作访问单元0。所有其它访问单元可以被称作访问单元n,其中针对解码顺序的下一访问单元,n加1。

每个解码单元可以被称作解码单元m,其中数字m识别特定解码单元。访问单元0中按照解码顺序的第一解码单元被称作解码单元0。针对解码顺序的每个随后解码单元,m值加1。

可以如下所示地设置变量initcpbremovaldelay[schedselldx]和initcpbremovaldelayoffset[schedselidx]。如果以下条件中任何一个为真,则initcpbremovaldelay[schedselidx]和initcpbremovaldelayoffset[schedselidx]分别被设置为相关联的缓冲周期sei消息的对应initial_alt_cpb_removal_delay[schedselidx]和initial_alt_cpb_removal_delay_offset[schedselidx]的值,那么访问单元0可以是编码画面的nal_unit_type等于bla_w_dlp或bla_n_lp的bla访问单元,并且相关联的缓冲周期sei消息的rap_cpb_params_present_flag的值等于1。此外,如果为真,则subpiccpbflag可以等于1。否则initcpbremovaldelay[schedselidx]和initcpbremovaldelayoffset[schedselidx]可以分别被设置为相关联的缓冲周期sei消息的对应initial_cpb_removal_delay[schedselidx]和initial_cpb_removal_delay_offset[schedselidx]的值。

解码单元m的第一比特开始进入cpb的时间被称作初始到达时间tai(m)。可以如下所示地得到解码单元的初始到达时间。如果解码单元是解码单元0,则tai(0)=0。否则(解码单元是解码单元m,其中m>0),如果cbr_flag[schedselidx]等于1,则解码单元m的初始到达时间可以等于解码单元m-1的最终达到时间(下文导出的)。

换言之,tai(m)=taf(m-1)。否则(cbr_flag[schedselidx]可以等于0),通过tai(m)=max(taf(m-1)、tai,earliest(m))得到解码单元m的初始到达时间,其中如下所示地导出tai,earliest(m)。如果解码单元m不是随后缓冲周期的第一解码单元,则得到tai,earliest(m):tai,earliest(m)=tr,n(m)-(initcpbremovaldelay[schedselidx]+initcpbremova1delayoffset[schedselidx])/90000,其中tr,n(m)是在hevcdraft8的子条款c.2.2中规定的解码单元m从cpb的标定消除时间。否则(解码单元m是随后缓冲周期的第一解码单元),得到tai,earliest(m):tai,earliest(m)=tr,n(m)-(initcpbremovaldelay[schedselidx]/90000)。

可以通过taf(m)=tai(m)+b(m)/bitrate[schedselidx]来得到解码单元m的最终到达时间,其中b(m)是解码单元m的比特大小,针对typei一致性,考虑vclnal单元和填充数据nal单元的比特;或对于typeii一致性,考虑typeii比特流的所有比特,其中typei和typeii一致性如图hevcdraft8的图c-1所示。

可以如下所示地限制schedselidx、bitrate[schedselidx]和cpbsize[schedselidx]的值。如果包含解码单元m的访问单元的活动序列参数集的内容与之前的访问单元不同,则假设流传送调度器(hss)可以针对包含解码单元m的访问单元,从在活动序列参数集中设置的schedselidx值中选择schedselidx的schedselidx1值,得到针对包含解码单元m的访问单元的bitrate[schedselidx1]或cpbsize[schedselidx1]。bitrate[schedselidx1]或cpbsize[schedselidx1]的值可以与针对在之前访问单元中使用的schedselidx的schedselidx0值的bitrate[schedselidx0]或cpbsize[schedselidx0]的值不同。否则,hss可以继续用schedselidx、bitrate[schedselidx]和cpbsize[schedselidx]的先前值进行操作。

当hss选择与先前访问单元不同的bitrate[schedselidx]或cpbsize[schedselidx]值时,可以应用以下方法。首先,变量bitrate[schedselidx]变得在时刻tai(m)生效。其次,变量cpbsize[schedselidx]如下所示地生效。如果cpbsize[schedselidx]的新值大于旧的cpb尺寸,则它在时刻tai(m)生效。否则,cpbsize[schedselidx]的新值在包含解码单元m的访问单元的最后解码单元的cpb消除时刻生效。

当subpiccpbflag等于1时,访问单元n的初始cpb到达时刻tai(n)可以被设置为在访问单元n中的第一解码单元的初始cpb到达时刻,可以将访问单元n的最终cpb到达时刻taf(n)可以被设置为访问单元n中的最后解码单元的最终cpb到达时刻。应注意,当subpiccpbflag等于0时,每个解码单元是访问单元,因此,访问单元n的初始和最终cpb到达时间可以是解码单元m的初始和最终cpb到达时间。

与初始化cpb的缓冲周期辅助增强信息(sei)消息相关联的访问单元可以被称作访问单元0。所有其它访问单元可以被称作访问单元n,其中针对解码顺序的下一访问单元,n加1。

如上所述,本文所公开的系统和方法提供修改hrd参数和子层hrd参数的语法和语义。在一些配置中,可以向本文所公开的系统和方法应用hevc规范。例如,下表1提供了对hrd参数进行语法修改的示例。粗体示出了所述修改。

表1

根据文本所公开的系统和方法,下文给出了表1所示的关于hrd参数语法的示例。timing_info_present_flag等于1可以指定在hrd_parameters()语法结构中存在num_units_in_tick和timescale。timing_info_present_flag等于0可以指定在hrd_parameters()语法结构中不存在num_units_in_tick和time_scale。

num_units_in_tick可以是以频率time_scalehz运行的时钟的时间单元的数目,其中该频率与时钟周期(clocktick)计数器的一个增量(称作clocktick)相对应。num_units_in_tick通常大于0。时钟周期可以是当sub_pic_cpb_params_present_flag等于0时在编码数据中表示的最小时间间隔。例如,当视频信号的画面速率是25hz时,time_scale可以等于27,000,000,num_units_in_tick可以等于1,080,000。

time_scale可以是一秒内通过的时间单元的数目。例如,使用27mhz时钟来测量时间的时间坐标系的time_scale为27,000,000。time_scale通常大于0。

nal_hrd_parameters_present_flag等于1可以指定在hrd_parameters()语法结构中存在nalhrd参数(关于typeii比特流一致性)。nal_hrd_parameters_present_flag等于0意味着在hrd_parameters()语法结构中不存在nalhrd参数。应注意,当nal_hrd_parameters_present_flag等于0时,无法在不提供nalhrd参数和所有缓冲周期及画面定时sei消息的情况下,验证比特流的一致性。

可以如下所示地得到变量nalhrdbppresentflag。如果以下条件中的一个或更多个为真,则nalhrdbppresentflag的值可以被设置为等于1。在这种情况下,nal_hrd_parameters_present_flag可以存在于比特流中,并可以等于1。此外,在这种情况下,可以通过应用来确定需要在缓冲周期sei消息中存在针对nalhrd操作的缓冲周期以便其呈现在比特流中。否则,可以将nalhrdbppresentfla的值设置为等于0。

vcl_hrd_parameters_present_flag等于1可以指定在hrd_parameters()语法结构中存在vclhrd参数(关于所有比特流一致性)。vcl_hrd_parameters_present_flag等于0可以指定在hrd_parameters()语法结构中不存在vclhrd参数。应注意,当vcl_hrd_parameters_present_flag等于0时,无法在不提供vclhrd参数和所有缓冲周期及画面定时sei消息的情况下,验证比特流的一致性。

如下所示地得到变量vclhrdbppresentflag。如果以下条件中的一个或更多个为真,则vclhrdbppresentflag的值可以被设置为等于1。首先,vcl_hrd_parameters_present_flag存在于比特流中,并等于1。其次,通过应用确定需要在缓冲周期sei消息中存在针对vclhrd操作的缓冲周期以便其呈现在比特流中。否则,可以将vclhrdbppresentflag的值设置为等于0。

如下所示地得到变量cpbdpbdelayspresentflag。如果以下条件中的一个或更多个为真,则cpbdpbdelayspresentflag的值可以被设置为等于1。首先,nal_hrd_parameters_present_flag存在于比特流中,并等于1。其次,vcl_hrd_parameters_present_flag存在于比特流中,并等于1。第三,通过应用确定需要在画面定时sei消息中存在cpb和dpb输出延迟以便其呈现在比特流中。否则,可以将cpbdpbdelayspresentflag的值设置为等于0。

sub_pic_cpb_params_present_flag等于1可以指定存在子画面等级cpb消除延迟参数,并且以访问单元等级或子画面等级操作cpb。sub_pic_cpb_params_present_flag等于0可以指定不存在子画面等级cpb消除延迟参数,并且以访问单元等级操作cpb。当不存在sub_pic_cpb_params_present_flag时,可以认为其值等于0。

tick_divisor_minus2可以指定子画面时钟周期。子画面时钟周期可以是当sub_pic_cpb_params_present_flag等于1时,在编码数据中可以表示的最小时间间隔。

du_cpb_removal_delay_length_minus1加1可以指定画面定时sei消息的du_cpb_removal_delay_minus1[i]和common_du_cpb_removal_delay_minus1语法要素的比特长度。bit_rate_scale以及bit_rate_value_minus1[schedselidx]可以指定schedselidx-thcpb的最大输入比特速率。

cpb_size_scale以及cpb_size_value_minus1[schedselidx]可以指定当以访问单元等级操作时schedselidx-thcpb的cpb尺寸。du_cpb_size_scale以及du_cpb_size_value_minus1[schedselidx]可以指定当以子画面等级操作时schedselidx-thcpb的cpb尺寸。

initial_cpb_removal_delay_length_minus1加1可以指定缓冲周期sei消息的initial_cpb_removal_delay[schedselidx]和initial_cpb_removal_delay_offset[schedselidx]语法要素的比特长度。当不存在initial_cpb_removal_delay_length_minus1语法要素时,可以认为其值等于23。

cpb_removal_delay_length_minus1加1可以指定画面定时sei消息的cpb_removal_delay语法要素的比特长度。当不存在cpb_removal_delay_length_minus1语法要素时,可以认为其值等于23。

dpb_output_delay_length_minus1加1可以指定画面定时sei消息的dpb_output_delay语法要素的比特长度。当不存在dpb_output_delay_length_minus1语法要素时,可以认为其值等于23。

fixed_pic_rate_flag[i]等于1可以表示当highesttid等于i时,如下所示地限制在输出顺序上连续的任何两个画面的hrd输出时间之间的时态距离。fixed_pic_rate_flag[i]等于0表示不向在输出顺序上连续的任何两个画面的hrd输出时间之间的时态距离应用这种限制。当不存在fixed_pic_rate_flag[i]时,可以认为其值等于0。

当对于包含画面n的编码视频序列而言,highesttid等于i且fixed_pic_rate_flag[i]等于1时,如hevcdraft8的方程c-17所表示的,针对delta_to计算的值dpb(n)可以等于tc*(pic_duration_in_tcs_minus1[i]+1),其中,tc是在当对于为在方程c-17中使用而规定的紧接画面nn,以下条件中的一个或更多个为真时,如hevcdraft8的方程c-1中所示(使用针对包含画面n的编码视频序列的tc值)。首先,画面mm与画面n在相同的编码视频序列中。其次,画面mm在不同的编码视频序列中且在包含画面mm的编码视频序列中fixed_pic_rate_flag[i]等于1,num_units_in_tick/time_scale的值对于两个编码视频序列是相同的,并且pic_duration_in_tc_minus1[i]的值对于两个编码视频序列是相同的。

pic_duration_in_tc_minus1[i]加1可以指定当highesttid等于i时,在该编码视频序列中的输出顺序上连续的任何两个画面的hrd输出时间之间的时态距离(以时钟周期为单位)。pic_duration_in_tc_minus1[i]的值的范围可以从0到2047(含)。

low_delay_hrd_flag[i]可以指定当highesttid等于i时的hrd可操作模式,如hevcdraft8的附录c所示。当fixed_pic_rate_flag[i]等于1时,low_delay_hrd_flag[i]可以等于0。应注意,当low_delay_hrd_flag[i]等于1时,可以准许由于防问单元使用大量比特而违反标定cpb消除时间的“大型画面”。希望(但非必须性地)这种“大型画面”仅是偶然出现的。

cpb_cnt_minus1[i]加1可以指定当highesttid等于i时,编码视频序列的数据流中的可选cpb规范的数目。cpb_cnt_minus1[i]的值的范围可以从0到31(含)。当low_delay_hrd_flag[i]等于1时,cpb_cnt_minus1[i]可以等于0。当cpb_cnt_minus1[i]不存在时,可以认为其值等于0。

作为另一示例,下表2提供了备选的语法hrd参数。用粗体示出了修改。

表2

表2示出了在一些配置中,可以在不同位置发信号通知语法要素。附加地,在一些配置中,可以将语法要素du_cpb_size_scale编码为u(4),可以表示所用的比特的数目。可以使用不同于u(4)所示的比特数目。例如,可以将du_cpb_size_scale编码为ue(v),或使用一些其它编码技术对其进行编码。

下表3提供了对子层hrd参数的语法修改。用粗体示出了修改。

表3

表3示出了根据本文所公开的系统和方法的关于子层hrd参数语义的示例,下文示出了所述示例。bit_rate_value_minus1[schedselidx]以及bit_rate_scale可以指定针对schedselidx-thcpb的最大输入比特速率。bit_rate_value_minusl[schedselidx]的范围可以从0到232-2(含)。对于任何schedselidx>0,bit_rate_value_minus1[schedselidx]可以大于bit_rate_value_minus1[schedselidx-1]。得到比特速率(以比特每秒为单位):

bitrate[schedselidx]=(bit_rate_value_minus1[schedselidx]+1)*2(6+bit_rate_scale)

当不存在bit_rate_value_minusl[schedselidx]语法要素时,可以认为bitrate[schedselidx]的值等于cpbbrvclfactor*nalhrd参数的maxbr,并且可以认为其值等于cpbbrnalfactor*nalhrd参数的maxbr,其中在hevcdraft8的子条款a.4中指定了maxbr、cpbbrvclfactor和cpbbrnalfactor。

可以使用cpb_size_value_minus1[schedselidx]以及cpb_size_scale来指定schedselidx-thcpb尺寸。cpb_size_value_minus1[schedselidx]的范围可以从0到232-2(含)。对于任何大于0的schedselidx,cpb_size_value_minusl[schedselidx]可以小于或等于cpb_size_value_minus1[schedselidx-1]。

当subpiccpbflag等于0时,得到cpb尺寸(以比特为单位):

cpbsize[schedselidx]=(cpb_size_value_minusl[schedselidx]+1)*2(4+cpb_size_scale)

当不存在cpb_size_value_minusl[schedselidx]语法要素时,可以认为cpbsize[schedselidx]的值等于cpbbrvclfactor*vclhrd参数的maxcpb,并且可以认为其值等于cpbbrnalfactor*nalhrd参数的maxcpb,其中在hevcdraft8的子条款a.4中指定了maxcpb、cpbbrvclfactor和cpbbrnalfactor。

当以子画面等级操作时,可以使用du_cpb_size_value_minus1[schedselidx]以及du_cpb_size_scale以便指定schedselidx-thcpb尺寸。du_cpb_size_value_minus1[schedselidx]的范围可以从0到232-2(含)。对于大于0的任何schedselidx,du_cpb_size_value_minus1[schedselidx]可以小于或等于du_cpb_size_value_minusl[schedselidx-1]。

当subpiccpbflag等于1时,得到cpb尺寸(以比特为单位):

cpbsize[schedselidx]=(du_cpb_size_value_minusl[schedselidx]+1)*2(4+du_cpb_size_scale)

当不存在du_cpb_size_value_minus1[schedselidx]语法要素时,可以认为cpbsize[schedselidx]的值等于cpbbrvclfactor*vclhrd参数的maxcpb,并且可以认为其值等于cpbbrnalfactor*nalhrd参数的maxcpb,其中在hevcdraft8的子条款a.4中指定了maxcpb、cpbbrvclfactor和cpbbrnalfactor。

cbr_flag[schedselidx]等于0可以指定为了由hrd使用schedselidx-thcpb规范对该比特流进行解码,假设流传送调度器(hss)操作在间歇比特速率模式下。cbr_flag[schedselidx]等于1可以表示hss操作在恒定比特速率(cbr)模式下。当不存在cbr_flag[schedselidx]语法要素时,认为cbr_flag的值等于0。

为了方便起见,下文给出了若干定义,可以将该定义应用于本文所公开的系统和方法中。解码单元(du)可以是访问单元,或访问单元的子集。如果子画面cpb标志等于0,则解码单元是访问单元。否则,解码单元是访问单元的子集,诸如子画面访问单元或以子画面等级运行的访问单元。解码单元可以由访问单元中的一个或更多个vclnal单元以及相关联的非vclnal单元构成。

可以将缓冲周期规定为解码顺序下在两例的缓冲周期sei消息之间的访问单元的集合。辅助增强信息(sei)可以包括对来自vclnal单元的编码画面的采样进行解码不是必需的信息。sei消息可以帮助与解码、显示或其它目的相关的过程。然而,不需要sei消息来通过解码处理构造亮度或色度采样。不需要协调解码器(conformingdecoders)来处理这种信息以便输出顺序符合hevc规范(例如,hevcdraft8的附录c包括针对一致性的规范)。可能需要一些sei消息信息来检查比特流的一致性以及输出定时解码器一致性。

缓冲周期sei消息可以是与缓冲周期相关的sei消息。该消息定义了限定比特流到达定时和编码画面消除定时的语法和语义。

画面参数集合(pps)是包含向零个或更多个整个编码画面应用的语法要素的语法结构,由在每个片首部中发现的pic_parameter_set_id语法要素确定。pic_parameter_set_id可以识别在片首部中提及的画面参数集。pic_parameter_set_id的值的范围可以是从0到255(含)。

编码画面缓冲器(cpb)可以是按在假设参考解码器(hrd)中规定的解码顺序包含访问单元的先入先出型缓冲器。接入单元可以是网络接入层(nal)单元的集合,网络接入层(nal)单元是按解码顺序连续的并且正好包括一个编码画面。除了编码画面的编码片nal单元之外,接入单元还可以包括不包含编码画面的片的其它nal单元。对接入单元进行解码总是得到经解码的画面。nal单元可以是一种语法结构,包含对所跟随的数据类型的指示以及包含原始字节序列负荷(rbsp)形式的数据的字节,根据需要将仿真预防字节散布在原始字节序列负荷上。

现在参考附图描述各种配置,在附图中,相似的附图标记可以指示功能上相似的元件。可以以各种不同配置来布置和设计如本文附图中一般地描述和示出的系统和方法。因此,下文对附图所示的若干配置的更具体描述并非意在限制要求保护的范围,而仅仅是所述系统和方法的代表。

图1是示出了一个或更多个电子设备102的示例的框图,可以在所述电子设备102中实现用于发信号通知子画面缓冲器参数的系统和方法。在该示例中,示出了电子设备a102a和电子设备b102b。然而,应注意,在一些配置中,可以将关于电子设备a102a和电子设备b102b所描述的一个或更多个特征和功能组合到单个电子设备中。

电子设备a102a包括编码器104。编码器104包括子画面缓冲器参数产生模块108。电子设备a102a中包括的元件中的每一个元件(例如,编码器104和子画面缓冲器参数产生模块108)可以以硬件、软件或两者的组合来实现。

电子设备a102a可以获得一个或更多个输入画面106。在一些配置中,可以使用图像传感器在电子设备a104a上捕捉、从存储器取得和/或从另一电子设备接收输入画面106。

编码器104可以对输入画面106进行编码以产生编码数据。例如,编码器104可以对一系列输入画面106(例如,视频)进行编码。在一个配置中,编码器104可以是hevc编码器。编码数据可以是数字数据(例如,一部分的比特流114)。编码器104可以基于输入信号产生开销信令。

子画面缓冲器参数产生模块108可以产生一个或更多个子画面缓冲器参数。电子设备102(例如,编码器104)可以确定是否允许以子画面等级对画面进行解码。在一些情况下,可以基于是否以子画面等级对画面进行编码来进行确定。在一些实施例中,电子设备可以确定是否除了允许以画面等级对画面进行解码之外还允许以子画面等级对该画面进行解码。如果允许以子画面等级对画面进行解码,则子画面缓冲器参数产生模块108可以产生缓冲器尺寸参数和/或缓冲器标尺参数。例如,缓冲器尺寸参数可以是子画面cpb尺寸值参数,诸如du_cpb_size_value_minus1。作为另一示例,缓冲器标尺参数可以是子画面cpb尺寸标尺参数,诸如du_cpb_size_scale。

子画面缓冲器参数产生模块108可以执行以下结合图2、图3和图4所述的一个或更多个过程。在一些配置中,电子设备a102可以向电子设备b102b发送数据(诸如编码画面信息),作为比特流114的一部分。在一些配置中,电子设备a102可以通过单独的传输110向电子设备b102b发送消息。例如,单独的传输110可以不是比特流114的一部分。例如,可以使用某种带外机制,来发送缓冲周期sei消息或其它消息。应注意,在一些配置中,所述消息可以包括子画面cpb尺寸标尺参数和/或其它类型的消息(诸如缓冲周期sei消息)的一个或更多个特性。

编码器104(以及例如子画面缓冲器参数产生模块108)可以产生比特流114。比特流114可以包括基于输入画面106的编码画面数据。在一些配置中,比特流114还可以包括开销数据(诸如子画面cpb尺寸标尺参数、缓冲周期sei消息或其它消息)、片首部、pps等。由于对附加输入画面106进行编码,比特流114可以包括一个或更多个编码画面。例如,比特流114可以包括一个或更多个具有对应开销数据的编码画面。

可以将比特流114提供给解码器112。在一个示例中,可以使用有线或无线链路将比特流114传输到电子设备b102b。在一些情况下,这可以通过网络(例如,internet、局域网(lan))来完成。如图1所示,可以将解码器112实现在电子设备b102b上,与电子设备a102a上的编码器104相分离。然而,应注意,在一些配置下,可以将编码器104和解码器112实现在相同电子设备上。在将编码器104和解码器112实现在相同电子设备上的实现方案中,例如,可以通过总线将比特流114提供给解码器112或将其存储在存储器中以便由解码器112取得。

可以将解码器112实现为硬件、软件或二者的组合。在一个配置中,解码器112可以是hevc解码器。解码器112可以接收(例如,获得)比特流114。解码器112可以基于比特流114产生一个或更多个解码画面118。可以显示、回放解码画面118,将其存储在存储器中和/或传输到另一设备等。

解码器112可以接收数据(例如,编码画面数据)。解码器还可以接收缓冲器参数。例如,解码器112可以接收子画面cpb尺寸标尺参数,诸如du_cpb_size_scale。应注意,除了对应画面等级参数(例如,cpb_size_scale和cpb_size_value_minus1[schedselidx])之外,还发送子画面等级缓冲器参数(例如,du_cpb_size_scale和du_cpb_size_value_minus1[schedselidx])。此外,在大多数情况下,子画面等级的缓冲器参数与画面等级的对应参数不同。附加地,应注意针对多个比特速率值发送这些参数,其中schedselidx指示针对多个不同比特速率值的索引。

解码器112可以包括cpb120。cpb120可以临时存储编码画面。例如,cpb120可以存储编码画面直到消除时间为止。根据本文所公开的系统和方法,解码器112对编码画面的存储和保持可以部分地基于子画面cpb尺寸标尺和子画面cps尺寸参数。

解码器112可以基于子画面等级cpb参数,针对子画面等级cpb操作执行插值传送调度测试。在一些配置中,解码器112可以以插值传送比特速率来进行操作。例如,解码器112可以包括被测试解码器(dut)(未示出),并且dut可以使用缓冲器参数(诸如子画面cpb参数),以便证实比特流限制是受到制约的,并且画面被编码器104正确编码。解码器112可以执行以下结合图5所述的过程中的一个或更多个。

上述hrd可以是图1所示的解码器112的一个示例。因此,在一些配置中,电子设备102可以根据上述hrd和cpb进行操作。

应注意,可以将电子设备102中所包括的一个或更多个元件或其部件实现为硬件。例如,可以将一个或更多个这些元件或其部件实现为芯片、电路或硬件组件等。还应注意,可以将本文所述的一个或更多个功能或方法实现为硬件,和/或使用硬件来执行所述功能或方法。例如,可以在芯片集、专用集成电路(asic)、大规模集成电路(lsi)或集成电路等中实现和/或使用芯片集、专用集成电路(asic)、大型集成电路(lsi)或集成电路等来实现本文所述的一个或更多个方法。

图2是示出了用于发送子画面缓冲器参数的方法200的一个配置的流程图。电子设备102(例如,电子设备a102a)可以确定202是否允许以子画面等级对画面进行解码。在一些示例中,电子设备102可以确定202除了允许以画面等级对画面进行解码之外是否还允许以子画面等级对画面进行解码。例如,编码器104可以确定以子画面等级画面对输入画面106进行编码。应认识到,可以通过使用在hevc规格中定义的多种工具(例如但不限于,薄片、片、波前、熵片、依赖片等),来实现子画面等级解码。

如果编码器104确定202允许以子画面等级对画面进行解码,且在一些实施例中,除了画面等级之外还允许以子画面等级对画面进行解码,则电子设备102可以产生204缓冲器尺寸参数和/缓冲器标尺参数。否则,电子设备102可以确定不允许以子画面等级对画面进行解码。

因此,如果允许以子画面等级对画面进行解码,则电子设备102可以产生204缓冲器尺寸参数和/或缓冲器标尺参数。在一些情况下,如果除了画面等级之外还允许以子画面等级对画面进行解码,则电子设备102可以产生204缓冲器尺寸参数和/或缓冲器标尺参数。

在一些配置中,电子设备102可以产生204两个缓冲器尺寸参数和/或两个缓冲器标尺参数。两个缓冲器尺寸参数之一可以与画面等级的操作相对应,另一缓冲器尺寸参数可以与子画面等级的操作相对应。类似地,两个缓冲器标尺参数之一可以与画面等级的操作相对应,另一缓冲器标尺参数可以与子画面等级的操作相对应。

缓冲器可以是编码画面缓冲器(cpb)。缓冲器尺寸参数可以是子画面cpb尺寸值参数,诸如du_cpb_size_value_minus1[schedselidx],如上表3所示,其中schedselidx是索引变量。例如,当操作在子画面等级时,可以使用子画面cpb尺寸值参数以及子画面尺寸标尺参数来指定针对每个索引值的cpb尺寸。每个索引值可以与不同比特率值相对应。通过指定cpb尺寸,可以防止溢出和下溢,同时保持恒定输出速率。

缓冲器标尺参数可以是子画面cpb尺寸标尺参数(诸如,du_cpb_size_scale),如上表1和表2所示。当操作在子画面等级时,子画面cpb尺寸标尺尺寸参数可以指定针对每个索引值的cpb尺寸。可以连同缓冲器尺寸参数(诸如子画面cpb尺寸值参数)一起使用子画面cpb尺寸标尺尺寸参数。

附加地,在一个配置中,缓冲器标尺参数可以是子画面比特速率标尺参数(诸如,表4定义的du_bit_rate_scale)。下表4提供了备选的语义hrd参数。用粗体示出了对已知语法的修改。

表4

下文示出了根据本文所公开的系统和方法的关于图4所示的hrd参数语义的示例。当操作在访问单元等级时,bit_rate_scale以及bit_rate_value_minus1[schedselidx]可以指定schedselidx-thcpb的最大输入比特速率。当操作在子画面等级下时,du_bit_rate_scale以及bit_rate_value_minus1[schedselidx]可以指定schedselidx-thcpb的最大输入比特速率。如结合上表1-3所述,还可以采用其它语义。

下表5提供了对子层hrd参数的语义修改。用粗线示出了对已知语法的修改。

表5

下文给出了根据文本所述的系统和方法的关于图5所示的子层hrd参数语义的示例。当操作在子画面等级时,du_bit_rate_value_minus1[schedselidx]以及du_bit_rate_scale可以指定针对schedselidx-thcpb的最大输入比特速率。

du_bit_rate_value_minusl[schedselidx]的范围可以从0到232-2(含)。对于任何schedselidx>0,du_bit_rate_value_minus1[schedselidx]可以大于du_bit_rate_value_minus1[schedselidx-1]。当subpiccpbflag等于1时,得到比特速率(以比特每秒为单位):bitrate[schedselidx]=(du_bit_rate_value_minus1[schedselidx]+1)*2(6+du_bit_rate_scale)

当不存在du_bit_rate_value_minus1[schedselidx]时,可以认为bitrate[schedselidx]的值等于cpbbrvclfactor*vclhrdu参数的maxbr,并且可以认为其值等于cpbbrnalfactor*nalhrd参数的maxbr,其中在hevcdraft8的子条款a.4中指定了maxbr、cpbbrvclfactor和cpbbrnalfactor。

当操作在子画面等级时,可以使用du_cpb_size_value_minus1[schedselidx]以及du_cpb_size_scales一起来指定schedselidx-thcpb尺寸。

du_cpb_size_value_minus1[schedselidx]的范围可以从0到232-2(含)。对于任何大于0的schedselidx,du_cpb_size_value_minus1[schedselidx]可以小于或等于du_cpb_size_value_minus1[schedselidx-1]。

du_cbr_flag[schedselidx]等于0可以指定当操作在子画面等级时,为了由hrd使用schedselidx-thcpb规范对该比特流进行解码,假设流传送调度器(hss)可以操作在间歇比特速率模式下。

du_cbr_flag[schedselidx]等于1可以指定hss操作在恒定比特速率(cbr)模式下。当不存在du_cbr_flag[schedselidx]语法要素时,认为du_cbr_flag的值等于0。如结合上表1-4所述,可以采用其它语义。

在一些配置中,诸如表4和表5所示的配置,可以针对子画面等级操作点,发信号通知比特速率标尺、比特速率和/或cbr标志参数的各值,相较于针对防问单元等级操作点的这些参数值。换言之,子画面等级的cpb操作可以具有比特速率标尺、比特速率和/或cbr标志参数的一个集合,而访问单元等级的cpb操作可以具有比特速率标尺、比特速率和/或cbr标志参数的另一集合。

返回图2,除了子画面cpb尺寸标尺参数之外,或代替子画面cpb尺寸标尺参数,可以使用子画面比特速率标尺参数。子画面比特速率标尺参数可以是du_bit_rate_scale。子画面比特速率标尺参数可以规定当操作在子画面等级时,cpb中的每个索引值的最大输入比特速率。电子设备102可以使用子画面比特速率标尺参数以及比特速率值参数,诸如bit_rate_value_minus1[schedselidx],其中schedselidx指示索引值。

电子设备102可以发送206缓冲器参数(例如,缓冲器尺寸参数和/或缓冲器标尺参数)。例如,电子设备102可以经由无线传输、有线传输、设备总线、网络等中的一个或多个来传输缓冲器参数。例如,电子设备a102a可以向电子设备b102b传输缓冲器参数。例如,缓冲器参数可以是比特流114的一部分。在一些配置中,电子设备a102a可以以单独的传输110(不是比特流114的一部分)向电子设备b102b发送206缓冲器参数。例如,可以使用某种带外机制来发送缓冲器参数。

在产生了两个缓冲器尺寸参数和/或两个缓冲器标尺参数的配置中,电子设备102可以发送206这两个缓冲器尺寸参数和/或两个缓冲器标尺参数。

图3是示出了用于发送子画面缓冲器参数的方法300的更具体配置的流程图。电子设备102(例如,电子设备a102a)可以确定302是否允许以子画面等级对画面进行解码。在一些情况下,电子设备102可以确定302除了画面等级之外是否还允许以子画面等级对画面进行解码。可以如以上结合图2所述完成该操作。

如果允许以子画面等级对画面进行解码,则电子设备102可以产生304cpb尺寸参数和/或cpb标尺参数。在一些情况下,如果除了画面等级之外还允许以子画面等级对画面进行解码,则电子设备102产生304cpb尺寸参数/cpb标尺参数。可以如以上结合图2所述完成该操作。cpb尺寸参数可以是子画面cpb尺寸参数,cpb标尺参数可以是子画面cpb标尺参数。

电子设备102可以发送306针对子画面等级的cpb尺寸参数和/或cpb标尺参数。例如,可以将cpb尺寸参数和/或cpb标尺参数发送为比特流114的一部分。在一些配置中,电子设备a102a可以以单独的传输110向电子设备b102b发送306针对子画面等级的cpb尺寸参数和/或cpb标尺参数,该单独的传输110不是比特流114的一部分。例如,cpb尺寸参数可以被发送到电子设备b102b,以便用于在dut处测试所发送的画面。

如果确定302允许以子画面等级对画面进行解码,则电子设备102可以产生308子画面cpb存在参数。在一些情况下,如果确定302除了画面等级之外还允许以子画面等级对画面进行解码,则电子设备102可以产生308子画面cpb存在参数。例如,子画面cpb存在参数可以是诸如子画面cpb存在标志的标志。子画面cpb存在标志可以具有boolean值,指示电子设备102是否确定302允许以子画面等级对画面(例如,输入画面106)进行解码。例如,当电子设备102确定302允许以子画面等级对画面进行解码,并且在一些情况下还允许以画面等级进行解码时,子画面cpb存在标志可以被设置为正值(例如,子画面cpb存在标志=1)。子画面cpb存在标志可以是sub_pic_cpb_params_present_flag,如结合上表1-5所述。

在一些配置中,子画面cpb存在标志可以被用于确定是否应执行操作。例如,在获得和/或处理针对子画面等级的附加参数之前或在以子画面等级执行命令之前,hrd可以验证子画面cpb存在标志被设置为正值。作为另一示例,在对编码子画面等级画面执行比特流一致性测试之前,hrd可以验证子画面cpb存在标志被设置为正值。

电子设备102可以发送310子画面cpb存在参数。例如,电子设备102可以经由无线传输、有线传输、设备总线、网络等中的一个或多个来传输子画面cpb存在参数。例如,电子设备a102a可以向电子设备b102b传输子画面cpb存在参数。例如,子画面cpb存在参数可以是比特流114的一部分。在一些配置中,电子设备a102a可以以单独的传输110(不是比特流114的一部分)向电子设备b102b发送310子画面cpb存在参数。例如,子画面cpb存在参数可以被发送到电子设备b102b,以便被用于在dut处测试所传输的编码画面和/或用于子画面等级的操作。

如果允许以子画面等级对画面进行解码,则电子设备102可以以子画面等级执行312比特流一致性测试。在一些配置中,如果允许以子画面等级和画面等级二者对画面进行解码,则电子设备102可以以子画面等级执行312比特流一致性测试。例如,可以通过编码器104上的hrd执行比特流一致性测试。通过执行比特流一致性测试,编码器104可以证实:将不会在解码器112的cpb120处发生缓冲器溢出或缓冲器下溢。

可以以访问单元等级和/或子画面等级执行比特流一致性测试。在一些配置中,存在子画面cpb参数(诸如,子画面cpb存在标志)可以指示是否应以访问单元等级或子画面等级来执行比特流一致性测试。例如,子画面cpb参数可以被设置为正值,可以指示应以子画面等级执行一个或更多个比特流一致性测试。比特流一致性测试可以测试出:由hrd参数规定的比特速率和cpb尺寸组合(例如,表1、2和4)符合所规定的限制。

符合hevcdraft8的编码数据的比特流可以实现以下要求。可以存在对比特流一致性的要求:比特流中的第一编码画面应是随机接入点(rap)画面(即,idr画面或cra画面或bla画面)。hrd可以如下所示地测试比特流的一致性。对于typei比特流,所执行的测试的数目可以等于cpb_cnt_minusl+1,其中cpb_cnt_minus1是在vcl_hrd_parameters_present_flag之后的hrd_parameters()的语法要素。针对由vcl_hrd_parameters_present_flag之后的hrd_parameters()所规定的每个比特速率和cpb尺寸组合,可以针对访问单元等级的cpb操作执行一个测试。如果sub_pic_cpb_params_present_flag等于1,则针对由vcl_hrd_parameters_present_flag之后的hrd_parameters()所规定的每个比特速率和cpb尺寸组合,可以针对子画面等级的cpb操作执行附加测试。可以在hevcdraft8的图c-1所示的typei一致性点处执行这些测试中的每个测试。

对于typeii比特流,可以存在两个测试集合。第一集合的测试的数目可以等于cpb_cnt_minus1+1,其中cpb_cnt_minusl是在vcl_hrd_parameters_present_flag之后的hrd_parameters()的语法要素,或是通过应用利用未在该说明书规定的其它手段确定的。可以针对每个比特速率和cpb尺寸组合,针对访问单元等级的cpb操作执行一个测试。如果sub_pic_cpb_params_present_flag等于1,则针对由vcl_hrd_parameters_present_flag之后的hrd_parameters()所规定的每个比特速率和cpb尺寸组合,可以针对子画面等级的cpb操作执行附加测试。可以在hevcdraft8的图c-1所示的typei一致性点处执行这些测试中的每个测试。对于这些测试,针对输入比特速率和cpb存储仅考虑vcl和填充数据nal单元。

对于typeii比特流,第二集合的测试的数目可以等于cpb_cnt_minusl+1,其中cpb_cnt_minus1是在nal_hrd_parameters_present_flag之后的hrd_parameters()的语法要素,或是通过应用利用未在该说明书规定的其它手段确定的。针对由nal_hrd_parameters_present_flag之后的hrd_parameters()所规定的每个比特速率和cpb尺寸组合,可以针对访问单元等级的cpb操作执行一个测试。如果sub_pic_cpb_params_present_flag等于1,则针对由nal_hrd_parameters_present_flag之后的hrd_parameters()所规定的每个比特速率和cpb尺寸组合,可以针对子画面等级的cpb操作执行附加测试。可以在hevcdraft8的图c-1所示的typeii一致性点处执行这些测试中的每个测试。对于这些测试,针对输入比特速率和cpb存储考虑所有的nal单元(typeiinal单元流)或所有的字节(字节流)。应注意,对于vbr情况下(cbr_flag[schedselidx]等于0)相同值的initcpbremovaldelay[schedselidx]、bitrate[schedselidx]和cpbsize[schedselidx],由针对hevcdraft8的图c-1所示的typeii一致性点的schedselidx值确立的nalhrd参数同样足以确立针对hevcdraft8的图c-1所示的typei一致性点的vclhrd一致性。这是由于进入typei一致性点的数据流可以是进入typeii一致性点的数据流的子集,并且由于对于vbr情况,可以允许cpb为空并保持为空直到开始调度下一画面的时间。例如,当使用hevcdraft8的条款2-9中规定的解码处理来对符合hevcdraft8的附录a规定的一个或更多个简档的编码视频序列进行解码时,当针对typeii一致性点提供nalhrd参数时,其中该typeii一致性点不仅落入在hevcdraft8的子条款a.4.2的条目c)中针对简档一致性(profileconformance)的nalnrd参数设置的边界内,而且还落入在hevcdraft8的子条款a.4.2的条目b)中针对简档一致性的vclhrd参数设置的边界内,还可以保证针对typei一致性点的vclhrd的一致性落入hevcdraft8的子条款a.4.2的条目b)的边界内。

对于解码的每个当前画面,变量maxpicordercnt和minpicordercnt可以分别被设置为等于当前画面、解码顺序上的前一画面(temporalid等于0)、当前画面的参考画面集合中的短期参考画面以及picoutputflag等于1且tr(n)<tr(currpic)和to,dpb(n)>=tr(currpic)的所有画面n的picordercntval值的最大值和最小值,其中currpic是当前画面。

对比特流一致性存在要求:对于每个测试,应满足以下11个条件中的所有条件。首先,对于与缓冲周期sei消息相关联的每个访问单元n(其中n>0),其中通过delta_tg,90(n)=90000*(tr,n(n)-taf(n-1))来规定delta_tg,90(n),应如下所示地限制initcpbremovaldelay[schedselidx]的值。如果cbr_flag[schedselidx]可以等于0,则initcpbremovaldelay[schedselidx]<=ceil(delta_tg,90(n))。否则(cbr_flag[schedselidx]可以等于1),floor(delta_tg,90(n))<=initcpbremovaldelay[schedselidx]<=ceil(delta_tg,90(n))。应注意,cpb中的比特在每个画面消除时刻的准确数目可以取决于选择哪个缓冲周期sei消息来初始化hrd。由于可以在任何一个缓冲周期sei消息处初始化hrd,编码器必须考虑这个因素以确保无论选择哪个缓冲周期sei消息来初始化hrd,必须遵循所有规定的限制。

其次,将cpb溢出规定为cpb中的比特总数大于cpb尺寸的情况。cpb应绝不溢出。第三,将cpb下溢规定为对于任何m值,解码单元m的标定cpb消除时间tr,n(m)短于解码单元m的最终cpb到达时间taf(m)的情况。当low_delay_hrd_flag等于0时,cpb应绝不下溢。

第四,当low_delay_hrd_flag等于1时,可能在解码单元m处发生cpb下溢。在这种情况下,包含解码单元m的访问单元n的最终cpb到达时间taf(n)应晚于包含解码单元m的访问单元n的标定cpb消除时间tr,n(n)。第五,来自cpb的画面的标定消除时间(从解码顺序的第二画面开始)应满足在hevcdraft8的子条款a.4.1到a.4.2中表达的对tr,n(n)和tr(n)的限制。

第六,在激发了hevcdraft8的子条款8.3.2规定的对参考画面的解码处理之后,dpb中的解码画面的数目应小于或等于min(0,sps_max_dec_pic_buffering[temporalid]-1),dpb中的解码画面包括标记为“用于参考”的所有画面以及picoutputflag等于1且tr(n)<tr(currpic)和to,dpb(n)>=tr(currpic)的所有画面(其中currpic是当前画面),但是不包括当前画面,temporalid小于或等于当前画面的temporalid。第七,当需要进行预测时,所有参考画面应存在于dpb中。在dpb输出时刻,每个画面应存在于dpb中,直到通过在hevcdraft8的子条款c.3中规定的多个过程之一,在画面输出时刻之前将画面从dpb消除。

第八,maxpicordercnt-minpicordercnt的值应小于maxpicordercntlsb/2。第九,通过hevcdraft8的方程c-17给出的delta_to,dpb(n)的值(画面的输出时间与输出顺序在其之后且pic_output_flag等于1的第一个画面的输出时间之间的差值)应满足hevcdraft8的子条款a.4.1针对简档(profile)、层叠(tier)和等级表达的限制,其中在使用hevcdraft8的条款2-9所规定的解码处理的比特流中规定了该简档、层叠和等级。第十,当sub_pic_cpb_params_present_flag为1时,应运用以下关系:

【式1】

cpb_removal_delay*tc==tc_sub*∑(du_cpb_removal_minus1k[i]+1),

其中i=0,...,num_decoding_units_minus1。

第十一,得到变量tdu(k):

【式2】

tdu(k)=tdu(k-1)+tc_sub*∑(du_cpb_removal_minus1k[i]+1)

其中i=0,...,num_decoding_units_minus1k,其中

du_cpb_removal_delay_minus1k[i]和num_decoding_units_minus1k是第k个访问单元的第i个解码单元的对应参数(其中,对于初始化hrd的访问单元,k=0;对于k<1,tdu(k)=0)。当sub_pic_cpb_params_present_flag为1时,(au_cpb_removal_delay_minus1+1)*tc=tdu(k)可以为真,其中au_cpb_removal_delay_minus1与第k个访问单元相对应。

图4示出了用于发送子画面缓冲器参数的方法400的另一更具体配置的流程图。电子设备102(例如,电子设备a102a)可以确定402是否允许以子画面等级对画面进行解码,在一些情况下,是否允许以画面等级对画面进行解码。可以如以上结合图2-3所述来完成该操作。

如果允许以子画面等级对画面进行解码以及在一些配置中除了画面等级之外还允许以子画面等级对画面进行解码,则电子设备102可以产生404cpb尺寸参数和/或cpb标尺参数。可以如以上结合图2所述来完成该操作。cpb尺寸参数可以是子画面cpb尺寸参数,cpb标尺参数可以是子画面cpb标尺参数。

电子设备102可以发送406针对子画面等级的cpb尺寸参数和/或cpb标尺参数。可以如以上结合图2所示完成该操作。

在一个配置中,如果确定允许以子画面等级对画面进行解码并且在一些情况下还允许以画面等级对画面进行解码,则电子设备102可以产生408子画面速率参数,诸如子画面速率值参数。子画面速率值参数可以规定当操作在子画面等级时针对每个索引值的最大输入比特速率。可以连同子画面比特速率标尺参数(诸如du_bit_rate_scale)一同使用子画面速率值参数,来规定最大比特速率。子画面速率值参数可以是du_bit_rate_value_minus1[schedselidx],如以上结合表5所述。

电子设备102可以发送410子画面比特速率值参数。可以如以上结合图2所示完成该操作。例如,在一些配置中,可以在比特流114中和/或在单独的传输110中向电子设备b102b发送子画面比特速率标尺参数,以便在解码器112处帮助对编码画面进行解码。

应注意,除了对应画面等级参数(例如,cpb_size_scale和cpb_size_value_minus1[schedselidx])之外,还发送子画面等级缓冲器参数(例如,du_cpb_size_scale和du_cpb_size_value_minus1[schedselidx])。此外,大多数情况下,子画面等级缓冲器参数与画面等级的对应参数不同。此外,应注意,针对多个比特速率值来发送这些参数,其中schedselidx指示针对多个不同比特速率值的索引。

在另一配置中,如果确定允许以子画面等级对画面进行解码,在一些情况下,如果确定还允许以画面等级对画面进行解码,则电子设备102可以产生412子画面速率参数,诸如子画面比特速率标志。hrd可以以子画面等级产生并设置针对与该cpb相对应的每个索引值的子画面比特速率标志。如果不存在子画面比特速率标志,则可以认为子画面比特速率标志等于0。子画面比特速率标志可以是du_cbr_flag[schedselidx],如以上结合表5所述。可以针对cpb中的每个索引值设置子画面比特速率标志。

除了子画面速率值参数之外,还可以产生子画面比特速率标志。子画面比特速率标志可以指定假设流传送调度器(hss)是运行在间歇比特速率模式下还是在恒定比特速率(cbr)模式下以便解码比特流114。例如,子画面比特速率标志可以被设置为零以便指示hss运行在间歇比特速率模式下来对比特流114进行解码。子画面比特速率标志被设置为1可以指示hss操作在cbr模式下来对比特流114进行解码。

如果确定允许以子画面等级对画面进行解码,且在一些情况下,如果确定还允许以画面等级对画面进行解码,则电子设备102可以发送414子画面比特速率标志。可以如以上结合图2-3所述完成该操作。例如,在一些配置中,可以在比特流114中和/或在单独的传输110中向电子设备b102b发送子画面比特速率标尺参数,以便在解码器112处帮助对编码画面进行解码。

应注意,除了对应画面等级参数(例如,cpb_size_scale和cpb_size_value_minus1[schedselidx])之外,还发送子画面等级缓冲器参数(例如,du_cpb_size_scale和du_cpb_size_value_minus1[schedselidx])。此外,大多数情况下,子画面等级缓冲器参数与画面等级的对应参数不同。此外,应注意,针对多个比特速率值来发送这些参数,其中schedselidx指示针对多个不同比特速率值的索引。

图5是示出了用于接收子画面缓冲器参数的方法500的一个配置的流程图。电子设备102(例如,电子设备b102b)可以接收502数据。该数据可以是编码画面数据、诸如缓冲周期sei消息的消息和/或缓冲器参数。例如,电子设备102可以经由无线传输、有线传输、设备总线、网络等中的一个或更多个来接收502数据。例如,电子设备b102b可以从电子设备a102a接收502数据。例如,数据可以是比特流114的一部分。在另一示例中,电子设备b102b可以以单独的传输110(例如,不是比特流114的一部分)从电子设备a102a接收数据。例如,可以使用某种带外机制,来接收一个或更多个缓冲器参数。在一些配置中,该消息可以包括子画面cpb尺寸标尺参数。

电子设备102可以获得504子画面等级的编码画面缓冲器(cpb)参数,诸如针对子画面等级的cpb尺寸参数和/或cpb标尺参数。例如,可以根据作为一部分比特流114接收的数据,和/或根据在一部分单独的传输110中接收到的数据,获得子画面等级cpb参数。

在一些配置中,电子设备102可以基于子画面等级cpb参数,执行506子画面等级cpb操作。在一些配置中,子画面等级cpb参数可以包括有助于按照每个假设参考解码器(hrd)规定操作的数据。在这种配置中,解码器112可以如hrd操作所限定地来操作cpb120。换言之,解码器112可以使用所通知的cpb尺寸参数和/或cpb标尺参数,用于按照为hrd规定的操作来操作解码器112上的cpb120。使用所通知的按照hrd规范的cpb尺寸参数和/或cpb标尺参数可以帮助确保不会在解码器112的cpb120处发生缓冲器溢出或缓冲器下溢。

附加地或备选地,电子设备102可以基于子画面等级cpb参数,执行子画面等级cpb操作,诸如,针对子画面等级cpb操作的插值传送调度测试。针对子画面等级cpb操作的插值传送调度测试可以是基于子画面等级cpb参数的。例如,电子设备102可以是具有被测试解码器(dut)的解码器112。dut可以基于子画面等级cpb参数,针对cpb120以子画面等级执行506一个或更多个插值传送调度测试。子画面等级cpb参数可以是子画面cpb尺寸标尺参数。

可以针对访问单元等级cpb操作和针对子画面等级cpb操作,分别执行插值传送调度测试。符合hevcdraft8的解码器可以实现以下要求。要求与特定简档、层叠和等级保持一致性的解码器能够以hevcdraft8的附录a所规定的方式成功地解码所有比特流,该比特流符合在hevcdraft8的子条款c.4中规定的比特流一致性要求,假定将所有序列参数集和在vclnla单元中引用的图片参数集、以及适当的缓冲周期和画面定时sei消息及时地通过比特流(通过非vclnal单元)或通过未在hevcdraft中8说明的外部手段传送给解码器。

当比特流包含值被规定为预留的语法要素并且表明了解码器应忽略该语法要素的值或包含具有预留值的语法要素的nal单元,但是比特流符合hevcdraft8时,协调解码器可以以对协调比特流进行解码的相同方式,对该比特流进行解码,并且忽略语法要素的预留值或包含所规定的语法要素的nal单元。

解码器所要求的一致性存在两种类型:输出定时一致性和输出顺序一致性。为了检查解码器的一致性,可以由假设流调度器(hss)向hrd和被测试解码器(dut)二者传送符合所要求的简档、层叠和等级(hevcdraft8的子条款c.4所规定的)的测试比特流。还可以通过dut输出由hrd输出的所有画面,对于由hrd输出的每个画面,dut针对对应画面输出的所有采样值可以等于由hrd输出的采样值。

对于输出定时解码器一致性,hss如上所述地用传送调度或下文说明的“插值”传送调度进行操作,其中仅从schedselidx值的子集中选择该传送调度,对于schedselidx值的子集,如hevcdraft8的附录a针对特定简档、层叠和等级所规定地限制比特速率和cpb尺寸;对于“插值”传送调度,如hevcdraft8的附录a所规定地限制比特速率和cpb尺寸。可以针对hrd和dut二者使用相同的传送调度。

当存在hrd参数和缓冲周期sei消息且cpb_cnt_minus1大于0时,解码器能够对从hss传送的比特流进行解码,其中使用规定为峰值比特速率为r、cpb尺寸为c(r)、初始cpb消除延迟为(f(r)厅)的“插值”传送调度运行该hss,如下所示:

【式3】

α=(r-bitrate[schedselidx-1])/(bitrate[schedselidx]-bitrate[schedselidx-1]),

c(r)=α*cpbsize[schedselidx]+(1-α)*cpbsize[schedselidx-1],

f(r)=α*initcpbremovaldelay[schedselidx]*bitrate[schedselidx]+(1-α)*initcpbremovaldelay[schedselidx-1]*bitrate[schedselidx-1]

其中任何schedselidx>0,且r使得bitrate[schedselidx-1]<=r<=bitrate[schedselidx],r和c(r)在附录a对特定简档、层叠和等级的最大比特速率和缓冲器尺寸规定的限制内。

可以针对访问单元等级cpb操作和子画面等级的cpb操作,单独地执行以上插值传送调度测试。在访问单元等级测试的情况下,cpbsize[schedselidx]可以被设置为

cpbsize[schedselidx]=(cpb_size_value_minus1[schedselidx]+1)*2(4+cpb_size_scale)

在子画面等级测试的情况下,可以将cpbsize[schedselidx]设置为cpbsize[schedselidx]=(du_cpb_size_value_minus1[schedselidx]+1)*2(4+du_cpb_size_cale)。应注意,initcpbremovaldelay[schedselidx]可以根据缓冲周期而不同,必须进行重新计算。

对于输出定时解码器一致性,可以使用上述hrd,画面输出的定时(相对第一比特的传送时间)可以对于hrd和dut二者是相同的,直到固定延迟。

对于输出顺序解码器一致性,hss可以从dut“通过命令”向dut传送比特流,意味着只有在dut需要更多比特来进行它的处理时hss才传送比特(按照解码顺序)。应注意,这意味着对于该测试,dut的编码画面缓冲器可以与最大访问单元的尺寸一样。

可以使用下文所述的修改后的hrd,hss可以通过比特流中规定的调度之一向hrd传送比特流,使得如hevcdraft8的附录a所示限制比特流速率和cpb尺寸。画面输出的顺序可以对于hrd和dut二者是相同。

对于输出顺序解码器一致性,hrdcpb尺寸可以等于所选调度的cpbsize[schedselidx],dpb尺寸可以等于maxdpbsize。从hrd的cpb消除时间可以等于最后比特到达时间,并且可以立即解码。

电子设备102可以基于插值传送调度测试的结果,向编码器104提供反馈(未示出)。例如,可以通过反馈链路发送反馈。例如,单独的传输110能够在编码器104和解码器112之间发送并接收多种参数、反馈和测试结果。这样,编码器102可以进行操作,使得它不违反向解码器112发送的缓冲器尺寸参数和/或缓冲器标尺参数。

图6是示出了在电子设备602上的编码器604的一个配置的框图。应注意,可以将电子设备602包括的元件中的一个或更多个实现为硬件、软件或其二者的组合。例如,电子设备602包括编码器604,编码器604可以实现为硬件、软件或其二者的组合。例如,编码器604可以实现为电路、集成电路、专用集成电路(asic)、与具有可执行指令的存储器电子通信的处理器、固件、现场可编程门阵列(fpga)等,或其组合。在一些配置中,编码器604可以是hevc编码器。

电子设备602可以包括源622。源622可以向编码器604提供画面或图像数据(例如视频),作为一个或更多个输入画面606。源622的示例可以包括图像传感器、存储器、通信接口、网络接口、无线接收机、端口等。

一个或更多个输入画面606可以被提供给帧内预测模块和重构缓冲器624。输入画面606还可以被提供给运动估计和运动补偿模块646以及减法模块628。

帧内预测模块和重构缓冲器624可以基于一个或更多个输入画面606和重构数据660,产生帧内模式信息640和帧内信号626。运动估计和运动补偿模块646可以基于一个或更多个输入画面606和参考画面缓冲器676信号678,产生帧间模式信息648和帧间信号644。在一些配置中,参考画面缓冲器676可以包括来自参考画面缓冲器676中的一个或更多个参考画面的数据。

编码器604可以根据模式在帧内信号626和帧间信号644之间进行选择。在帧内编码模式下可以使用帧内信号626以便利用画面内的空间特性。在帧间编码模式下可以使用帧间信号644以便利用画面间的时间特性。当在帧内编码模式下时,可以将帧内信号626提供给减法模块628,并可以将帧内模式信息640提供给熵编码模块642。当在帧间编码模式下时,可以将帧间信号644提供给减法模块628,并且可以将帧间模式信息648提供给熵编码模块642。

在减法模块628处,从输入画面606减去帧内信号626或帧间信号644(取决于模式),以便产生预测残差630。将预测残差630提供给变换模块632。变换模块632可以压缩预测残差630以产生变换后的信号634,将所述信号634提供给量化模块636。量化模块636量化变换后的信号634,以产生经变换和量化的系数(toc)638。

将tqc638提供给熵编码模块642以及逆量化模块650。逆量化模块650对tqc638执行逆量化以产生逆量化的信号652,将所述信号652提供给逆变换模块654。逆变换模块654对逆量化的信号652进行解压缩,以产生解压缩后的信号656,将所述信号656提供给重构模块658。

重构模块658可以基于解压缩后的信号656产生重构后的数据660。例如,重构模块658可以重构(修改)画面。可以将重构数据660提供给去块滤波器662以及帧内预测模块和重构缓冲器624。去块滤波器662可以基于重构后的数据660产生经滤波的信号664。

可以将经滤波的信号664提供给采样自适应偏移(sao)模块666。sao模块666可以产生提供给熵编码模块642的sao信息668。在一些配置中,可选地将sao信号670提供给自适应环路滤波器(alf)672。在该配置中,alf672产生提供给参考画面缓冲器676的alf信号674。此外,在这种配置中,alf信号674可以包括来自可以用作参考画面的一个或更多个画面的数据。

熵编码模块642可以对tqc638进行编码,以产生比特流a614a(例如,编码画面数据)。此外,熵编码模块642可以使用上下文自适应可变长度编码(cavlc)或上下文自适应二进制算术编码(cabac)来对tqc638进行编码。具体地,熵编码模块642可以基于帧内模式信息640、帧间模式信息648和sao信息668中的一个或更多个,来对tqc638进行编码。可以将比特流a614a(例如,编码画面数据)提供给子画面缓冲器参数产生模块608。可以类似于结合图1所述的子画面缓冲器参数产生模块108,配置子画面缓冲器参数产生模块608。附加地,子画面缓冲器参数产生模块608可以执行结合图2、图3和/或图4所述的一个或更多个过程。

例如,子画面缓冲器参数产生模块608可以产生子画面缓冲器参数,诸如子画面cpb尺寸标尺参数和/或子画面尺寸参数。在一些配置中,可以将子画面缓冲器参数插入在比特流a614a中以便产生比特流b614b。因此,例如,可以在产生整个比特流a614a之后(例如,在产生大部分比特流b614b之后),产生消息。在其它配置中,可以不将子画面缓冲器参数插入到比特流a614a(在该情况下,比特流b614b可以与比特流a614a相同),而是以单独的传输610提供子画面缓冲器参数。

在一些配置中,电子设备602向其它电子设备发送比特流614。例如,可以将比特流614提供给通信接口、网络接口、无线发射机、端口等。例如,可以通过lan、互联网、蜂窝电话基站等将比特流614传送到其它电子设备。附加地或备选地,可以将比特流614存储在存储器或电子设备602的其它组件内。

图7是示出了电子设备702上的解码器712的一个配置的框图。解码器712可以包括在电子设备702中。例如,解码器712可以是hevc解码器。可以将解码器712和被示为包括在解码器712中的一个或更多个元件实现为硬件、软件或二者的组合。解码器712可以接收比特流714(例如,包括在比特流714中的一个或更多个编码画面和开销数据),以便进行解码。应注意,一个或更多个访问单元可以包括在比特流714中,可以包括编码画面数据和开销数据中的一个或更多个。

在一些配置中,接收到的比特流714可以包括接收到的开销数据(诸如子画面缓冲器参数)、消息(诸如,缓冲周期sei消息或其它消息)、片首部、pps等。在一些配置中,解码器712可以附加地接收单独的传输710。单独的传输710可以包括子画面缓冲器参数(例如,子画面cpb尺寸标尺参数或其它缓冲器参数)。例如,可以在单独的传输710中而不是在比特流714中接收子画面cpb尺寸标尺参数或其它缓冲器参数。然而,应注意,单独的传输710可以是可选的,在一些配置中可以不使用单独的传输。

解码器712包括cpb720。可以类似于结合以上图1所述的cpb120,配置cpb720。可选地或备选地,解码器712可以执行结合图5所述的一个或更多个过程。例如,解码器712可以接收缓冲器参数(例如,子画面cpb尺寸标尺参数或其它缓冲器参数)。附加地,解码器712可以执行针对子画面等级cpb操作的插值传送调度测试。插值传送调度测试可以是基于子画面等级cpb参数的。附加地,解码器712可以执行针对子画面等级cpb操作的比特流一致性测试。此外,解码器712可以根据hevc规范中规定的(诸如,如hevcdraft8所限定的)假设参考解码器操作的规范来操作cpb。

编码画面缓冲器(cpb)720可以向熵解码模块701提供编码画面数据。可以由熵解码模块701对编码画面数据进行熵解码,从而产生运动信息信号703以及经量化、缩放和/或变换的系数705。

可以在运动补偿模块780处,将运动信息信号703与来自帧存储器709的一部分参考帧信号798相组合,这样可以产生帧间预测信号782。可以通过逆模块707对经量化、解缩放和/或变换的系数705进行逆量化、缩放和逆变换,从而产生解码残差信号784。可以将解码残差信号784与预测信号792相加以产生合并信号786。预测信号792可以是从由运动补偿模块780产生的帧间预测信号782或由帧内预测模块788产生的帧内预测信号790选择的信号。在一些配置中,所述信号选择可以基于比特流714(例如,由比特流714控制)。

可以根据来自合并信号786(例如,在当前帧中)的先前解码信息来预测帧内预测信号790。还可以通过去块滤波器794来对合并信号786进行滤波。可以将得到的滤波信号796写入帧存储器709。得到的滤波信号796可以包括解码画面。帧存储器709可以提供解码画面718。

图8示出了可以在发送侧电子设备802中使用的多种组件。可以根据图8所示的发送侧电子设备802,实现本文所述的电子设备102、602、702中的一个或更多个。

发送侧电子设备802包括:处理器817,控制电子设备802的操作。处理器817还可以被称作中央处理单元(cpu)。存储器811向处理器817提供指令813a(例如,可执行指令)和数据815a,所述存储器811可以包括只读存储器(rom)、随机访问存储器(ram)或可以存储信息的任何类型的设备。存储器811的一部分还可以包括非易失性随机访问存储器(nvram)。存储器811可以与处理器817电子通信。

指令813b和数据815b还可以驻留在处理器817中。被加载到处理器817的指令813b和/或数据815b还可以包括来自存储器811的指令813a和/或数据815a,加载所述指令813a和/或数据815a以便通过处理器817来执行或处理。可以通过处理器817执行所述指令813b以实现本文所公开的系统和方法。例如,指令813b可以是可执行的,以执行上文所述的方法200、300、400、500中的一个或更多个。

发送侧电子设备802可以包括一个或更多个通信接口819,用于与其它电子设备(例如,接收侧电子设备)进行通信。通信接口819可以基于有线通信技术、无线通信技术或二者。通信接口819的示例包括串行端口、并行端口、通用串行总线(usb)、以太网适配器、ieee1394总线接口、小型计算机系统接口(scsi)总线接口、红外(ir)通信端口、蓝牙无线通信适配器、符合第三代合作伙伴计划(3gpp)规范的无线收发机等。

发送侧电子设备802可以包括一个或更多个输出设备823以及一个或更多个输入设备821。输出设备823的示例包括扬声器、打印机等。可以包括在电子设备802中的一种类型的输出设备是显示设备825。使用本文所公开的配置的显示设备825可以使用任何适合的图像投影技术,例如,阴极射线管(crt)、液晶显示器(lcd)、发光二极管(led)、气体等离子体、电致发光等。可以提供显示控制器827用于将存储在存储器811中的数据转换为示出在显示器825上的文本、图形和/或运动图像(视情况而定)。输入设备821的示例包括键盘、鼠标、麦克风、遥控设备、按钮、操控杆、轨迹球、触摸板、触摸屏、激光笔等。

将发送侧电子设备802的多种组件通过总线系统829耦接在一起,其中除了数据总线之外,总线系统829还可以包括电力总线、控制信号总线和状态信号总线。然而,为了清楚,图8将多种总线示出为总线系统829。图8所示的发送侧电子设备802是功能框图,而不是具体组件的列表。

图9是示出了可以在接收侧电子设备902中使用的多种组件的框图。可以根据图9所示的接收侧电子设备902,实现本文所述的电子设备102、602、702中的一个或更多个。

接收侧电子设备902包括控制电子设备902的操作的处理器917。还可以将所述处理器917称作cpu。存储器911向处理器917提供指令913a(例如,可执行指令)和数据915a,所述存储器911可以包括只读存储器(rom)、随机访问存储器(ram)或可以存储信息的任何类型的设备。存储器911的一部分还可以包括非易失性随机访问存储器(nvram)。存储器911可以与处理器917电子通信。

指令913b和数据915b还可以驻留在处理器917中。被加载到处理器917的指令913b和/或数据915b还可以包括来自存储器911的指令913a和/或数据915a,加载所述指令913a和/或数据915a以便通过处理器917来执行或处理。可以通过处理器917执行指令913b以实现本文所述的系统和方法。例如,指令913b可以是可执行的,以执行上文所述的方法200、300、400、500中的一个或更多个。

接收侧电子设备902可以包括一个或更多个通信接口919,用于与其它电子设备(例如,发送侧电子设备)进行通信。通信接口919可以基于有线通信技术、无线通信技术或二者。通信接口919的示例包括串行端口、并行端口、通用串行总线(usb)、以太网适配器、ieee1394总线接口、小型计算机系统接口(scsi)总线接口、红外(ir)通信端口、蓝牙无线通信适配器、符合第三代合作伙伴计划(3gpp)规范的无线收发机等。

接收侧电子设备902可以包括一个或更多个输出设备923以及一个或更多个输入设备921。输出设备923的示例包括扬声器、打印机等。可以包括在电子设备902中的一种类型的输出设备是显示设备925。使用本文所公开的配置的显示设备925可以使用任何适合的图像投影技术,例如,阴极射线管(crt)、液晶显示器(lcd)、发光二极管(led)、气体等离子体、电致发光等。可以提供显示控制器927用于将存储在存储器911中的数据转换为示出在显示器925上的文本、图形和/或运动图像(视情况而定)。输入设备921的示例包括键盘、鼠标、麦克风、遥控设备、按钮、操控杆、轨迹球、触摸板、触摸屏、激光笔等。

将接收侧电子设备902的多种组件通过总线系统929耦接在一起,其中除了数据总线之外,所述总线系统929还可以包括电力总线、控制信号总线和状态信号总线。然而,为了清楚,图9将多种总线示出为总线系统929。图9所示的接收侧电子设备902是功能框图,而不是具体组件的列表。

图10是示出了电子设备1002的一个配置的框图,在所述电子设备中,可以实现用于发送消息的系统和方法。电子设备1002可以包括编码装置1031和传输装置1033。编码装置1031和传输装置1033可以配置为执行以上结合图1、图2、图3、图4、图6和图8中的一个或更多个附图所述的一个或更多个功能。例如,编码装置1031和传输装置1033可以产生比特流1014。以上图8示出了图10的具体装置结构的一个示例。可以实现其它多种结构,以实现图1、图2、图3、图4、图6和图8的一个或更多个功能。例如,可以通过软件来实现dsp。

图11是示出了电子设备1102的一个配置的框图,在所述电子设备中,可以实现用于缓冲比特流1114的系统和方法。电子设备1102包括接收装置1135和解码装置1137。接收装置1135和解码装置1137可以配置为执行结合图1、图5、图7和图9中的一个或更多个附图所述的一个或更多个功能。例如,接收装置1135和解码装置1137可以接收比特流1114。以上图9示出了图11的具体装置结构的一个示例。可以实现其它多种结构,以实现图1、图5、图7和图9的一个或更多个功能。例如,可以通过软件来实现dsp。

术语“计算机可读介质”指可以由计算机或处理器访问的任何可用介质。如本文所用,术语“计算机可读介质”可以表示非暂时性的且有形的计算机和/或处理器可读介质。作为示例而非限制性地,计算机可读或处理器可读介质可以包括:ram、rom、eeprom、cd-com或其它光学存储设备、磁盘存储设备或其它磁性存储器件、或可以用于携带或存储所需程序代码(以指令或数据结构形式)并可通过计算机或处理器访问的任何其它介质。如本文所用,磁盘和光盘包括:紧致盘(cd)、激光盘、光盘、数字多功能盘(dvd)、软盘和盘,其中磁盘通常磁性地再现数据,而光盘用激光光学地再现数据。

应注意,本文所述方法中的一个或更多个可以实现为硬件和/或使用硬件来执行。例如,可以在芯片集、asic、大规模集成电路(lsi)或集成电路等中实现和/或使用芯片集、asic、大规模集成电路(lsi)或集成电路等来实现本文所述方法或方案中的一个或更多个。

本文所公开的每个方法包括用于实现所述方法的一个或更多个步骤或动作。所述方法步骤和/或动作可以与其它步骤和/或动作交换,和/或合并为单个步骤,而不脱离权利要求的范围。换言之,除非需要特定顺序的步骤或动作来正确操作所述的方法,否则可以修改具体步骤和/或动作的顺序和/或使用,而不脱离权利要求的范围。

应理解,权利要求不限于以上所述的特定配置和组件。可以对本文所述的系统、方法和装置的布置、操作和细节进行多种修改、变形和改变,而不脱离权利要求的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1