1.基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,包括以下步骤:步骤1:主线程首先对整个HEVC解码器进行初始化操作,读取二进制码流文件,创建HEVC解码器以及对内存单元进行申请;
步骤2:从所读取的二进制码流中截取当前帧的码流并调用函数,对视频码流的设定单元进行解析,将得到的视频参数和全局信息保存至解码图像对象结构体中;
步骤3:根据配置参数分配预设数目的线程,通过多核函数库将每个线程与不同的核进行绑定;
步骤4:一个线程读取视频码流,对视频码流进行熵解码解析操作,在熵解码操作结束后将得到的量化系数QP和残差数据存入帧缓存中;
步骤5:当前CTU单元的熵解码操作完成后,若当前CTU单元的左相邻、左上相邻、上相邻、右上相邻的CTU单元像素解码重构若都完成则安排线程对当前CTU单元进行像素解码重构;若线程完成当前CTU单元的像素解码重构操作,转入任务队列并进入等待状态;
步骤6:当前CTU单元像素解码重构结束之后,且当前CTU单元左相邻CTU单元已完成垂直边界滤波操作,随即安排线程对当前CTU单元进行垂直边界的滤波处理操作,处理完成后,线程转入任务队列并进入等待状态;
步骤7:当前CTU单元完成垂直边界滤波操作后,且当前CTU单元的左相邻、上相邻CTU单元已完成垂直边界的滤波,则安排线程对其进行水平边界的滤波操作;
步骤8:若当前CTU单元的左相邻、左上相邻、上相邻、右上相邻的CTU单元样点自适应补偿操作都完成则安排线程对当前CTU单元进行样点自适应补偿SAO操作;
步骤9:对下一帧图像帧中重复步骤5~8直到一帧视频码流的解码完成;
步骤10:完成一帧视频码流的解码之后,检测视频码流是否全部解码完成,若完成则释放所有的资源和销毁线程池;若没完成,则返回步骤4。
2.如权利要求1所述的基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,若当前CTU单元的左相邻、左上相邻、上相邻、右上相邻的CTU单元像素解码重构操作都完成则安排4个线程流水线并行处理当前CTU单元的像素解码重构操作、CTU单元垂直边界滤波操作、CTU单元水平边界滤波和样点自适应补偿操作。
3.如权利要求1所述的基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,引入数据冗余减少机制,在垂直边界滤波处理时只将CTU单元四像素宽的垂直区域的像素点放到缓存空间中。
4.如权利要求1所述的基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,在水平边界滤波处理时只将CTU单元四像素高的水平区域的像素点放到缓存空间中。
5.如权利要求1所述的基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,利用线程池技术将固定数目的线程各自绑定到一个核上。
6.如权利要求1所述的基于多核平台多层次任务级与数据级并行的HEVC解码方法,其特征在于,将整个HEVC解码器划分为5个任务模块,分别为码流读取模块、熵解码模块、像素重构模块、去方块滤波模块以及样点自适应补偿模块。