[发明专利]一种在多核处理器平台上的多层次多任务并行解码方法有效
申请号: | 201610192698.0 | 申请日: | 2016-03-30 |
公开(公告)号: | CN105992008B | 公开(公告)日: | 2019-08-30 |
发明(设计)人: | 胡栋;方狄;束骏 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | H04N19/44 | 分类号: | H04N19/44;H04N19/436 |
代理公司: | 南京知识律师事务所 32207 | 代理人: | 汪旭东 |
地址: | 210003 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种在多核处理器平台上的多层次多任务并行解码方法。本发明方法针对高清视频的巨大数据量和HEVC解码的超高处理复杂度问题,利用HEVC数据中的依赖性,提出了一种在多核处理器平台上任务和数据有效结合的多层次多任务并行解码算法。本发明将HEVC解码分成帧层熵解码和CTU层数据解码两类任务,采用不同的粒度分别进行并行处理:对熵解码任务以帧级方式并行;对CTU数据解码任务以CTU数据行方式并行;每一个任务由独立的线程执行,并被绑定到一个独立的核运行,充分利用了多核处理器的并行计算性能,实现对未使用任何并行编码技术的HEVC全高清单一码流的实时并行解码。采用的多核并行算法相比于串行解码,大大提高了解码的并行加速比,并保证了解码图像质量。 | ||
搜索关键词: | 一种 多核 处理器 平台 多层次 任务 并行 解码 算法 | ||
【主权项】:
1.一种在多核处理器平台上的多层次多任务并行解码方法,其特征在于,包括以下步骤:步骤1、主线程首先完成一些初始化的工作,包括码流文件的读取,创建HEVC解码器以及必要的内存单元申请;步骤2、先从读入的未使用任何并行编码方式形成的高清单一码流中截取当前帧的码流并调用函数,进行解析NAL单元以及图像的PPS、VPS、SEI参数集信息和图像的Slice头信息,这些信息包含了解码所需的profile,level,图像的宽和高,环路滤波的参数信息,然后将其保存至解码图像对象结构体中;步骤3、根据步骤2中解析生成的参数信息,在线程池中创建与图像CTU行数相同数量的线程,通过多核函数库将每个线程绑定到不同的核,保证各个线程能够进行多核并行解码,然后进入主循环;步骤4、读取一帧图像,若检测到I帧或者P帧,则直接进行该帧的熵解码;若检测到同级相互独立的B帧,即可调用多核线程池中的线程进行帧级并行熵解码,一旦线程完成并行熵解码后,直接进行CTU行数据的解码,并将上述两种熵解码后的数据存入帧缓存中;步骤5、检测多核线程池中熵解码之后的CTU行数据的左侧,左上侧,上侧,右上侧的CTU解码是否完成,若解码完成,则可以从任务队列中获取执行当前行CTU的任务,即可实现CTU行之间的并行解码;步骤6、完成该CTU行内反量化,反变换,运动补偿,帧内预测的一系列解码过程,直到该CTU行解码结束,一旦工作线程解完一行CTU数据,则重新将其放到线程池之中;步骤7、一帧解码完成之后,检测视频码流是否全部解码完成,若完成则释放所有的资源和销毁线程池;若没有完成,则返回步骤3。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610192698.0/,转载请声明来源钻瓜专利网。