处理媒体文件的工具ffmpeg

2006-09-03 bailing
用c++编译器编译win下的版本 ,十分麻烦,但是绝对可行。
msys是一个模拟Linux运行环境的东西,在它下面可以运行configure等编译安装命令。这样我们就可以
在windows下编译跨平台的c程序源代码了。

下载 mingw , msys , bash  , 这3个都在sourceforge.net/projects/mingw里下载。
MINGW下载地址:http://prdownloads.sourceforge.net/mingw/MinGW-3.1.0-1.exe?download
然后在下载MSYS :http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download
下载lame(mp3解码器):http://prdownloads.sourceforge.net/lame/lame-3.97b2.tar.gz?download

如果需要支持别的格式,参考这里下载对应的包来编译集成
张微波的BLOG
http://blog.5ilinux.com/archives/2006/08/ffmpeg.html#comments

安装mingw,msys,将bash解开,将bash.exe放进msys的bin文件夹。
运行msys安装lame

$cd c:你的lame所在的盘符
$cd 你的lame所在的目录

然后执行configure,make,make install三步。

具体怎么操作参考图文并茂的
http://bbs.chinavideo.org/viewthread.php?tid=232&extra=page%3D1&page=1

重要说明:

1。ffmpeg的源代码要用svn客户端下载,我用的是tortoise svn。
下载地址:http://tortoisesvn.tigris.org/

svn://svn.mplayerhq.hu/ffmpeg/trunk
2.mingw 5.0编译得到的ffmpeg是可以使用的,我用的就是5.0,如果你不行,请用3.0

3.如果安装ffmpeg遇到,configure时,找不到bash的错误,在mingw的下载列表里有MSYS的下载选项,点开,可以选择下载bash
下载bash解开,放到1.0的bin目录下,目前的地址是:
http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=82724&release_id=158862

4.msys里不可以直接复制粘贴,你可以把
./configure --enable-memalign-hack --enable-mingw32 --enable-mp3lame --extra-cflags=-I/local/include --extra-ldflags=-L/local/lib

这么长的复制到一个shell脚本里,放进ffmpeg的根目录执行。
这样我们只要敲这个脚本就行了 

php调用说明
必须在最后补上 2>&1 ,意为错误输出从stderr转到stdout,这样exec才能得到返回的处理报告
调用示范:
$cmd = 'D:\web\youtube\ffmpeg\ffmpeg.exe -i "D:\docs\movie\jp23.mpg" -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 "D:\f.flv" 2>&1';

exec($cmd , $outputArr); 
prt($outputArr);
 
最后感谢:ffmpeg开发小组,chinavideos.com小组
感谢:http://www.zjtmd.net/show.php?id=794   
这篇文章的作者
感谢: http://www.cnblogs.com/xufung/archive/2006/07/03/441483.html  的作者
感谢所有开放源码,开放自己经验的兄弟

Posted on 2006-09-09 15:33  古代  阅读(1547)  评论(2编辑  收藏  举报