FFMPEG : 视频文件转换命令行工具;
FFServer : 基于Http的多媒体服务器;
FFPlay : SDL + FFMPEG的媒体播放器;
libavcodec : 音视频编解码库;
libavformat : 音视频格式解析器和产生器;
SDL = Simple Directmedia Library : 开源的多媒体开发包
目前主流播放器底层大多基于FFMPEG:
MPC : Media Player Classic, windows 系统下的鼻祖;
MPlayer : linux下的鼻祖;
VLC : 最近很火的说。。。
播放器处理流程:
Media access -> ByteIOContext -> DEMUXER -> DECODER -> YUV -> Display
视频格式转换可以基于YUV来进行,就是先解码再编码的过程。
Media access -> ByteIOContext -> DEMUXER -> DECODER -> YUV
<- <- <- <- |
相关网上资源
ffmpeg官方 http://ffmpeg.org/
SDL 官方 http://www.libsdl.org/
FFPlay 0.5 + VS2005 by MCODEC
http://www.cnblogs.com/mcodec/articles/1933754.html
FFMPEG对MPEG2 TS流解码的流程分析 http://wenku.baidu.com/view/efe4d6d528ea81c758f57865.html
附注:SDL安装方式:
从官网获取安装包,SDL-devel-1.2.14-VC8.zip for VS2005
解压后有以下目录:
include : 所需要的头文件
lib : .lib + .dll
在VS2005中需要制定头文件和库文件目录: 在工具->选项->C++目录-> ..
此外还需要制定DLL路径,可以使用以下方式:
1) 添加解压出来的lib目录到环境变量PATHzhong
or 2) 拷贝SDL.dll 到 系统盘c:\windows\system32
or 3) 拷贝SDL.dll到VS工作目录下 ( 临时方案 )