基于异构多核全高清H264解码系统设计
3.2 Cortex-M3软件实现
本文引用地址:https://www.eepw.com.cn/article/271885.htm双核Cortex-M3运行TI BIOS实时操作系统,负责与主处理核的virtio缓存队列通信及通过codec engine调用IVA-HD加速引擎实现H264解码,运行流程图如图6所示,主要包括以下内容:
1) virqueue_create( virtio发送及接收缓存队列。
2) Message_get_queue( M3的消息队列中。
3) App M3将获取消息链表的消息,设置IVA-HD加速引擎的工作状态并初始化,如果为解码消息则通过Codec Engine调用IVA-HD加速引擎来完成解码过程。
4)将解码后的图像缓存封装成virtio缓存,调用Message_send_queue()通过virtio缓存队列发送回主处理核A9调用DRM进行显示输出。
4测试
本文在OMAP4430开发平台上设计实现了基于异构多核的全高清H264解码,为了测试解码器的性能,将针对不同比特率的720P、1080P的网络视频文件Big_Buck _Bunny_Sunflower进行解码测试,测试结果如表1所示,同时采用FFmpeg开源库项目的软解码进行测试,其对比图如图7所示

图7 IVA-HD硬解码和软解码效率对比图
从图6可以看出本次设计的H264解码器在解码720P(1280*720)和1080P(1920*1080)视频时分别达到60和34帧每秒,相比FFmpeg开源H264软解码器效率提高了一倍。而普遍全高清流畅视频的帧率为30帧每秒,达到实时解码性能需求。
5结束语
随着移动互联网时代的到来,在移动终端上流畅播放全高清视频成为任务日常需求。为此本文采用移动Soc OMAP4430异构多核处理器为实验平台,通过基于virtio缓存队列和RPMsg消息框实现了异构多核间多媒体数据通信,同时结合IVA-HD多媒体硬件加速引擎设计了一款全高清H264视频硬解码系统。实验结果表明设计的解码系统比开源FFmpeg软解码器在性能上提升了一倍,达到实时性要求。具有解码速度快、解码过程由硬件加速器完成无需消耗主核运算资源、核间通信效率高、功耗小等优点。
评论