1. HEVC 解码过程 HEVC解码框架
HEVC码流组成
HEVC/H265 是以NAL方式组织数据的,解析VPS,SPS,PPS,SEI,SEI_SUFFIX 后,其他的是一个个slice的NAL数据,而Deblocking & SAO Filters 等滤波是对整个picuture进行滤波操作,出现从第二帧开始,每帧的第一个slice两次进行解析。
解码和滤波后当然就是输出重构数据,xWriteOutput( pcListPic, ), 如果slice是NAL_UNIT_CODED_SLICE_IDR
,
NAL_UNIT_CODED_SLICE_IDR_N_LP,
NAL_UNIT_CODED_SLICE_BLANT
,,
NAL_UNIT_CODED_SLICE_BLA_N_LP
NAL_UNIT_CODED_SLICE_BLA中的一种,将解码产生的picture全部清空,没有任何参考帧,相当于一个新的sequence进行解码了。
HEVC 解码流程
图2.1 HM解
码器代码框架-1
图2.2 HM解码器代码框架-2
. HEVC CU的解码
函数xDecodeCU是对一个CU解码的入口,在xDecoderCU 中首先获取分割模式split_cu_flag 来判断是否对当前CU做进一步划分,若有划分则进一步递归调用xDecoderCU。
(后续完成)