速播是一个基于FFmpeg和SDL的多媒体引擎和多媒体播放器,其中多媒体播放器是基于多媒体引擎上开发的。速播安装后的图标如下所示:
现在发布的有win32平台和IOS平台,我现在只分析win32平台的多媒体引擎源码和多媒体播放器源码。
一、多媒体引擎
多媒体引擎整体架构设计图如下:
多媒体引擎(MediaEngine)一共包含9个文件目录,分别是:
1.1 Base
Base 目录下,是整个项目用到的基本代码,列表,队列,锁和线程等等,全部是跨平台封装接口。Base 中一共包括3个文件目录,分别为Common、Include、Thread。
(1) Common
这个文件的作用为通用软件配置接口的实现。其中包括文件操作接口、DLL加载的定义和封装、数学API接口、内存操作接口、操作系统工具方法、字符串定义和操作接口。
(2) Include
这个文件中包含了c++的基本数据类型以及这些数据类型的操作方法