Cortex-M7处理器的中心实质为微操控器,却具有高达600MHz的主频,高密度的512KB TCM SRAM和16MB的高速SDRAM,超快的实时呼应,超强处理功用赋予了RT1052视频编解码的才能。
关于视屏运用来说,当处理器内部不具有GPU单元时,编解码库对视频文件的解码需要由CPU供给快速的运算才能以及很多的内存作为缓冲,这是传统单片机无法担任的主要因素,所以视频运用多选用M6Y2C Cortex-A7\M6708 Cortex-A9这类运用处理器的中心板。
M1052作为Cortex-M7核的跨界中心板,已兼备了体积小、低功耗、简略易用、低成本等长处,是否还能具有微弱的音视频编解码才能呢?
图 1 M1052跨界中心板
i.MX RT1052对视频运用的支撑
i.MX RT1052尽管选用了MCU内核,但根据运用处理器的架构方法,既能完成运用处理器的高功用和丰厚功用,一起又兼具传统MCU的易用性和实时低功耗运转特性,添补高功用与易用性之间的空白。
i.MX RT1052的内核运转速度高达600MHz,内置高密度的512KB TCM SRAM,并能够完成超快的实时呼应,中止推迟低至20纳秒。并支撑SEMC接口,可挂载SDRAM作为内存扩大。eLCDIF外设可轻松完成显现屏的驱动,并内置的SAI音频接口和MQS声卡,为音视频运用供给了杰出的支撑。
图 2 RT1052结构图
一、M1052中心板视频运用开发
M1052中心板尽管以工业操控运用为主导,但也能够用于多媒体运用,辅佐产品多元化。M1052中心板板载16MB SDRAM,赋予数据极大的缓冲空间,可挂载TF卡、U盘、Nand,QSPI Flash,为体系运用供给大容量的存储扩展。支撑超高分辨率的1366X768 LCD显现屏,支撑硬件浮点运算,刷图速度可达80帧/S,丰厚的资源和微弱功用为视频运用开发打下了坚实的根底。
M1052中心板配套AWorks SDK软件包,现已为用户装备好了开发视频运用相关的外设驱动,用户无需联系底层外设驱动,可直接开端视频运用的开发,并供给一个视频播映器Demo程序,为用户进行视频运用开发供给必定的参阅。
图 3 视频播映器示例
二、集成专业编解码函数库
libjpeg是一个开源的JPEG紧缩/解紧缩函数库,具有稳定性高,兼容性强,解码速度快等长处。解码库悉数由C言语完成的,十分简单移植到不同平台上。比照i.MX RT1052的功用和资源,解码库运用libjpeg是个不错的挑选。因而,视频播映器Demo程序中运用libjpeg完成对JPEG格局的AVI视频解码。
图 4 支撑libjpeg编解码函数库
多元化视频播映方法
视频播映Demo程序完成了一个比较完善的视频播映器结构,GUI界面使命担任图画显现和触屏处理,操控状况机对播映逻辑进行状况转化,音、视频的解码和播映使命协同作业,达到了杰出的音视同步的作用,程序规划结构所示。
图 5 视频规划结构
视频播映器支撑从的TF卡、U盘、Nand Flash读取视频文件,支撑文件列表预览,文件选取,播映进展操控等功用。在音视频同步的情况下,能流畅播映480 X 272分辨率的25帧/s视频,CPU占用率约为35%,可见i.MX RT1052完全能够满意视频运用的需求。