ffmpeg是一个开源的编解码框架,利用它你可以对市面上大多数视音频格式进行编解码,格式转换等,功能非常强大,最近因为项目需要,花了点时间了解了一下这个开源库,在linux下用ffmpeg+OPengl做了一个简单的本地播放器和流媒体播放器,把视频在不同的3D模型上播放(例如在正方体的六个面播放不同的视频,在Opengl的多视口播放不同的视频等)。
ffmpeg主要有如下Library:
libavutil:是一个轻量级工具库,不是libavcodec 和 libavformat编译必需的库.例如加解密等等
libavcore:一个编译核心库,好像是新版本才加上去的。
libavcodec:就是编解码库,里面有各种格式的定义等。
libavformat:主要负责文件格式处理,例如mux和demux
libavdevice:这个比较少用。
libavswscale:缩放库,一些格式的转换也用这里的函数,例如RGB转YUV等。
还有个libavfilter,不过也比较少用。
以后会介绍一些这方面的知识,作为自己学习的一个积累。