• 痞子衡嵌入式:基于恩智浦i.MXRT1060的MP4视频播放器(RT-Mp4Player)设计



      大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是基于i.MXRT1062的MP4播放器参考设计

      i.MXRT1062是恩智浦i.MXRT四位数系列的中端型号,外设搭配上很均衡,辅以600MHz主频的炸裂性能。

      为了让大家见识到i.MXRT1062的能力,特给大家分享一个基于i.MXRT1062-EVK开发板的MP4播放器设计,mp4源文件从SD卡获取,使用FFmpeg库进行软解码,最后将解码出的视频(yuv)数据经PXP转换后通过LCD屏显示,音频(pcm)数据通过板载Codec(WM8960)连耳机进行播放。

      功能模块简图:

      这个设计其实已经断断续续开发优化一年多了,核心的mp4文件解码与播放已经全部搞定了。设计主要参考了SDK包里的三个例程:从SD卡里读取音频源后配置Codec使用SAI和DMA进行数据的传输(sai)、配置eLCDIF模块驱动LCD屏显示、配置PXP模块进行图片色彩空间转换(yuv2rgb)与缩放。

    SDKoardsevkmimxrt1060demo_appssai
    SDKoardsevkmimxrt1060driver_exampleselcdif
    gb
    SDKoardsevkmimxrt1060driver_examplespxpscale
    

      此外,核心mp4解码功能是使用了大名鼎鼎的FFmpeg库,库的裁剪颇费周折,因最新库版本4.x与之前版本差异较大,而3.x版本资料较多,故我们选择的是经典的3.0.11版本。关于FFmpeg库的学习,从雷霄骅的CSDN博文中收获颇多,感谢雷神!

      全部硬件清单:

    1. MIMXRT1060-EVK (Rev.A)
    2. LCD屏(适配了三款分辨率480x272、800x600、1280x800),标配 RK043FN02H-CT
    3. SD卡
    4. 耳机(3.5mm接口),或音箱
    5. USB线(连主机供电)
    

      实物连接图(搭配1280x800的屏):

      代码是开源的,会持续添加功能(考虑加入GUI,实现一般播放器的选片、暂停、快进等控制功能),欢迎感兴趣的小伙伴加入一起开发!

    欢迎订阅

    文章会同时发布到我的 博客园主页CSDN主页知乎主页微信公众号 平台上。

    微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

      最后欢迎关注痞子衡个人微信公众号【痞子衡嵌入式】,一个专注嵌入式技术的公众号,跟着痞子衡一起玩转嵌入式。

    痞子衡嵌入式-微信二维码 痞子衡嵌入式-微信收款二维码 痞子衡嵌入式-支付宝收款二维码

      衡杰(痞子衡),目前就职于恩智浦MCU系统部门,担任嵌入式系统应用工程师。

      专栏内所有文章的转载请注明出处:http://www.cnblogs.com/henjay724/

      与痞子衡进一步交流或咨询业务合作请发邮件至 hengjie1989@foxmail.com

      可以关注痞子衡的Github主页 https://github.com/JayHeng,有很多好玩的嵌入式项目。

      关于专栏文章有任何疑问请直接在博客下面留言,痞子衡会及时回复免费(划重点)答疑。

      痞子衡邮箱已被私信挤爆,技术问题不推荐私信,坚持私信请先扫码付款(5元起步)再发。


  • 相关阅读:
    bilibili安卓视频缓存生成mp4
    Java实现kmp算法,少量注释
    小程序MQTT、mqtt超简单的连接、附带Demo
    【STM32H7】第15章 ThreadX GUIX定时器更新功能
    【STM32F429】第15章 ThreadX GUIX定时器更新功能
    【STM32H7】第14章 GUIX Studio设计窗口切换
    【STM32F429】第14章 GUIX Studio设计窗口切换
    【STM32H7】第13章 ThreadX GUIX窗口任意位置绘制2D图形
    【STM32F429】第13章 ThreadX GUIX窗口任意位置绘制2D图形
    【STM32H7】第12章 GUIX Studio生成代码移植到硬件平台
  • 原文地址:https://www.cnblogs.com/henjay724/p/13922857.html
Copyright © 2020-2023  润新知