ARM AVI 视频播放 基于 2440 freambuffer 绘制
Posted 宁次
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARM AVI 视频播放 基于 2440 freambuffer 绘制相关的知识,希望对你有一定的参考价值。
AVI 文件格式 图解
整理:
AVI 是一种容器,里面放什么格式的数据都可以
视频编码:格式可以是 H264, MPEG-4, MJPEG ,因为 MJPEG 比较简单,所以仅支持 MJPEG 的 avi 视频。
音频编码:PCM16, mp3 因为 PCM 编码,文件实在过大,所以仅支持 mp3 编码。
难点:
1, 由于ARM 内存比较小,不能使用 mmap ,不能一次性全部读进 内存。
2,mp3 音频解码,暂不支持。
使用 狸窝全能视频转换器进行格式转换
数据块说明
movi 中是保存有,视频,音频数据。
00dc 表示是 视频数据,然后是4个字节的长度
全部 avi 文件中只有一个 movi LIST 里面就是数据流,视频流、音频流。
音频编码 PCM 导致文件过大,解码倒是很方便,暂不支持,Mp3 ACC 比较不错,后期添加。
MJPEG 不是 JPEG 图片,但都可以使用 libjpeg 解码。
完整代码,可以关注置顶的 github 。
以上是关于ARM AVI 视频播放 基于 2440 freambuffer 绘制的主要内容,如果未能解决你的问题,请参考以下文章
.avi 文件视频无法在 MPMoviePlayerController ios 播放器中播放