使用ffmpeg把视频文件拆分成多张ppm格式图片
-
思路
获得路径 - > 解封装 -> 获取视频流的信息 -> 解编码 -> YUV420转RGB -> 以ppm格式存放到文件里。 -
伪代码
step1. 注册
step2. 打开音视频文件
step3. 获取音视频流
step4. 查找视频类型得AVMEDIA_TYPE_VIDEO
step5. 查找解码器
step6. 拷贝视频流得AVCodecContext
step7. 打开解码器
step8. 获得视频流得总共大小并且申请堆空间
step9. 初始化YUV转RGB
step10. 创建循环读取视频流一帧数据并且判断是否已经是视频流最后一帧
{
解码一帧数据
正式处理YUV转RGB数据类型
保存文件为PPM格式
}
step11. 释放空间,关闭音视频文件 -
C语言写的全部源代码如下
#include <stdio.h>