最近因为要音频处理的研究,音频开发,但是有一个难题就是怎明纳么解析与提取音频的数据,于是就找到了 FFmpeg 。基本上只要做视频音频开发都离不开 ffmpeg
引用 wiki百科 的解析.
FFmpeg 项目由以下几部分组成:
FFmpeg 可以在Windows、Linux还有Mac OS等多种 *** 作系统中进行安装和使用。
这篇文章主要介绍其在Windows下面的安装:
用于转码的应用程序:
具体用法参考:ffmpeg参数中文详细解释
详细的使用说明(英文): http://ffmpeg.org/ffmpeg.html
主要用于播放的应用程序
具体的使用方法可以参考: ffplay的快捷键以及选项
详细的使用说明(英文): http://ffmpeg.org/ffplay.html
ffprobe是用于查看文件格式的应用程序。
详细的使用说明(英激橘没文)伍茄: http://ffmpeg.org/ffprobe.html
参考资料 :
Windows下FFmpeg快速入门FFmpeg简介
FFmpeg是什么?
FFmpeg是用于录制、转换和流化音频和视频的悔游完整解决方案,
包括
libavcodec
,一套领先的音/视频编解码类库。FFmpeg
在Linux上开发,当可以在大多数 *** 作系统下编译,包括Windows。
Note
FFmpeg对GCC的依赖很强,所以就算是在Windows上,
用VC编译FFmpeg也不是一件轻松的事情。请尽量使用
GCC来编译FFmpeg,比较事半功倍。
FFmpeg的组成结构
FFmpeg主要由一下几个部分组成:
libavcodec:
一个包含了所有FFmpeg音视频编解码器的库。
为了保证最优性能和高可复用性,大多数编解码器从头开发的。
libavformat:
一个包含了所有的普通音视格式的解析器和
产生器的库。
ffmpeg:瞎茄命令行的视频格式转换程序。
ffplay:视频播放程序。(需要SDL支持)
ffserver:多媒体服务器
三个实例程序,这三个实例较为复杂,基本可以作为API使用手册:
了解完组成结构后,你会发现,如果你在寻找一种视频格式转换
的方式,那FFmpeg绝对是你的第一选择,libavcodec
则又是重
中之重。如果遇上API不会使用的情况,可以参考ffmpeg.c、ffplay.c、
ffserver.c、apiexample.c(解码)和output_example.c(编码)。
FFmpeg的编译
要使用FFmpeg,第一步就是编译,编译FFmpeg是一个复杂的过程,如果你想加快速度,领略FFmpeg
的风采,则可以跳过这一步,直接进入下一章节。
FFmpeg的SDK
FFmpeg是一个复杂的工程,第一步编译,特别是Windows下的编译
过程,更是复杂。
因此,好心的网友提供了Windows下编译好的
dll和lib库文件,以及相关的头文件。新手们则可直接下载,并开始编写
FFmpeg库的程序了。
以上两者已经足以完成FFmpeg的入门,最新的SDK版本是3.0,
对应于FFmpeg的版本是
r10087。新手们可以从编译源代码库中的
output_example.c开始,同时参考
SDK入门宝典
。
编译output_example.c的时候需要注意以下问题:
VC的是不支持C语言中的inline,所以可以把相关的inline删除。
对于snprintf的支持,可以考虑下载
snprintf.h和snprintf.c放入磨前察工程中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)