HEVC 视频参数集 VPS说明

HEVC 视频参数集 VPS说明
视频层描述
在H.264/AVC的码流结构中,没有类似VPS这样的参数集去描述时域各层之间的依赖关系。它的扩展部分可伸缩视频编码中,SEI信息提供了相关各层信息,以用于不同业务和不同终端的访问。但在一些应用场景,例如广播和多播,由于SEI中的部分信息会重复出现在SPS中,这样造成参数重传而引起延迟等问题。因此在H.265/HEVC中引入VPS,以克服H.264/AVC中存在的不足,同时为设计简洁,可扩展多层视频编码提供方便。VPS主要用于传输视频分级信息,有利于兼容标准在可分级视频编码或多视点视频编码的扩展。
一个给定的视频序列,无论它每一层的SPS是否相同,都参考相同的VPS。VPS包含的信息有:
①多个子层和操作点共享的语法元素;
②会话所需的有关操作点的关键信息,如档次、级别;
③其他不属于SPS的操作点特性信息,例如与多层或子层相关的虚拟参考解码器(HypotheticalReferenceDecoder,HRD)参数。对每个操作点的关键信息的编码,不要求可变长编码,这样有利于减轻大多数网络组成单元的负担。H265/HEVC 的扩展版本将会在当前VPS中添加更多的语法元素,以使会话更加灵活高效并使编码码率具有更高的自适应性。
视频层参数集表
下图给出了VP中包含的各个语法元素以及它们的描述子。描述子即语法元素的熵解码算法,描述子符号表示如下。
ae(v):基于上下文自适应的二元算术编码。
b(8):读进连续的8bit。
f(n):读进连续的nbit。
se(v):有符号指数Golomb熵编码。
u(n):读进连续的nbit,且它们解码后的值为无符号整数。
ue(n):无符号指数Golomb熵编码。
上面描述子中括号内的参数为n时,表明该语法元素是定长编码;参数为v时表示语法元素采用变长编码。
表1VPS内的语法元素
VPS语法元素
VPS内的语法元素
VPS内的语法元素

vps_video_parameter_set_id:当前VPS的标识号,以供其他句法元素引用。
vps_reserved_three_2bits:保留位,其值为3。
vps_max_layers_minus1:当前保留,其值为0,用于以后的3D视频编码或可分级视频编码的使用。
vps_max_sub_layers_minus1:表示比特流中可支持时域子层的最大数目减1,取值0~6,即最大可支持7个子层。
vps_temporalid_nesting_flag:当vps_max_sublayersminus1为0时,这个参数值为1;当vps_max_sub_layers_minus1大于0时,这个参数指定是否对帧间预测进行额外限定。该参数用于指示时域子层升档,即从低子层切入高子层。vps_reserved_0xffff_16bits:两字节的保留位,其值等于0xFFFF。
vps_sub_layer_ordering_info_present_flag:其值为1时表示vps_max_dec_pic_buffering_minus1[i]、vps_max_num_reorder_pics[i]、vps_max_latency_increase_plus1[i]存在并用于第vps_max_sub_layers_minus1+1子层;其值为0时表示这三个语法元素可以用于所有子层。
vps_max_dec_pic_buffering_minus1[i]:规定了HighestTid等于i时,CVS的图像存储单元中解码图像所需要的最大缓存。
vps_max_num_reorder_pics[i]:规定了HighestTid等于i时,在CVS中解码顺序在某一幅图像之后,而显示顺序在该幅图像之前的图像的最大数量。vps_max_latency_increase_plus1[i]:当HighestTid等于i时,该语法元素用于计算VpsMaxLatencyPictures[i]的值。
vps_max_layer_id:指定CVS中所有的NAL单元的nuh_layer_id的最大值。vps_num_layer_sets_minus1:指定VPS中图层集的数量。在该版本中,该语法元素值被要求等于0。但解码器应该允许其可取0~1023之间的其他值。layer_id_included_flag[i][j]:该语法元素取值为1时,表示图层标识列表layerSetLayerldList[i]中包含nuh_layer_id等于j的情况;其值为0时,则表示图层标识列表layerSetLayerIdList[i]中不包含nuh_layer_id等于j的情况。vps_timing._info_present_flag:该语法元素取值为1时,表示在VPS中语法元素vps_num_units_in_tick、vps_time_scale、vps_pocproportional_to_timing_flag、vps_num_hrd_parameters存在;其值为0时则表示在VPS中不存在这四个语法元素。
vps_num_units_in_tick:该语法元素规定当时钟频率为vps_time_scale Hz时,所花的时间单位的个数。以秒为单位时,一个时钟周期等于vps_num_units_in_tick除以vps_time_scale。例如,当一个视频的帧率为25Hz时,vps_time_scale等于27000000Hz,vps_num_units_in_tick就等于1080000,因此一个时钟周期就是0.04s。
vps_time_scale:一秒内时间单位的个数。
vps_poc_proportional_to_timing_flag:该语法元素值为1,表示CVS中的每一幅图像(不包括第一幅图像)的POC与它的显示时间和第一幅图像的显示时间的比值成正比;否则,不成比例。
vps_num_ticks_poc_diffone_minus1:表示POC之间差值为1时,时钟周期的数目。
vps_num_hrd_parameters:指定VPS RBSP中语法结构体hrd_parameters()的数目。
hrd_layer_set_idx[i]:规定第i个语法结构体hrd_parameters()使用的图层集的索引。
cprms_present_flag[i]:表示第i个hrd_parameters()中是否存在所有子层公用的HRD参数。
vps_extension_flag:该语法元素取值为0,表示在VPS PBSP中没有语法元素vps_extension_data_flag。在该版本中,vps_extension_flag取值等于0;其值等于1用于保留为将来使用。
vps_extension_data_flag:可以是任意值。在该版本中,其取值不影响解码器,解码器可以忽略该语法元素。

摘自《新一代高效视频编码 H.265/HEVC:原理、标准与实现》 万帅 杨付正 编著

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水笙赵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值