ffmpeg is a complete solution to record, convert and stream audio and video. It includes libavcode, the leading audio/video codec library. FFmpeg is developed under Linux, but it can compiled under most operating systems, including windows.
组成结构:
ffmpeg项目由以下几部分组成:
ffmpeg视频文件转换命令行工具,也支持经过实时电视卡抓取和编码成视频文件
ffserver基于HTTP(RTSP正在开发中)用于实时广播的多媒体服务器,也支持时间平移
ffplay 用SDL和FFmpeg库开发的一个简单的媒体播放器
libavcode 一个包含了所有FFmpeg音视频编解码的库,为了保证最优性能和高可复用性,大多数编解码器都从头开发的
libavformat一个包含了素偶有的普通音视格式的解析器和产生器的库
ffdshow is DirectShow and VFW codec for decoding/encoding many video and audio formats, including DivX and XviD movies using libavcode, xvid and other opensourced libraries with a rich set of postprocessing filters.
vfw和dshow里的CODEC分别是通过fourcc码和guid机制寻找的,可以在系统注册codec后调用,比自带编解码库形式更加统一,便于使用。
时间平移(Time-Shifting)功能
简单的说,就是同步进行录、放的功能