场景概述
1
我们想要实现这样一个Demo或者简单的App,首先我们需要预览视频的界面,然后给出多种特效的选择菜单,当用户选择其中某种特效时会实时显示该特效的预览效果,并且将特效的开始作用时间和作用时长记录到内存的结构体中,最后当用户点击保存按钮时,可以离线保存为视频文件。
预览
1
2
3
播放器的基本功能包括了解码和音视频的渲染,此外再加上逻辑控制、音视频对齐就可以成为一个视频播放器。
视频播放器中视频解码模块是非常重要的,通过它可以将视频文件解码为视频帧,并且输出到解码纹理队列中,接下来就是本App最核心的工作——处理,视频处理模块会按照时间戳将对应的纹理进行处理,并放入到渲染队列,最后输出模块会将渲染队列中的纹理输出到屏幕上,而在离线保存场景下,则是将渲染队列中的纹理编码输出到本地,也就是封装成mp4或者flv等等格式写入本地磁盘。