ffmpeg官方使用说明:http://www.ffmpeg.org/ffmpeg-doc.html
1、下载ffmpeg-php:http://myownhomeserver.com/wp-content/uploads/2012/12/ffmpeg6-php54-win32-vc9-all.zip ;
【测试php版本是5.4】
2、 解压ffmpeg6-php54-win32-vc9-all.zip 后有下面几个文件:
swscale-0.dll
avcore-0.dll
avutil-50.dll
avcodec-52.dll
avformat-52.dll
pthreadGC2.dll
php_ffmpeg.dll
3、将(swscale-0.dll , avcore-0.dll , avutil-50.dll , avcodec-52.dll , avformat-52.dll , pthreadGC2.dll)六个文件拷贝到windows\system32文件夹下面。
将php_ffmpeg.dll拷贝到php文件夹的ext文件夹下(测试:H:\upupw\PHP5\ext)。
4、 修改php.ini文件,加入extension=php_ffmpeg.dll
开启extension=php_gd2.dll, extension=php_gettext.dll,(去掉前面的分号就代表允许执行):
修改后如下:
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_ffmpeg.dll
5. 重新启动Apache后使用phpinfo()函数看到如下图信息配置就表明ffmpeg在php环境中配置成功了。
6.测试,新建test.php输入以下代码
<?php
extension_loaded('ffmpeg');
$ffmpegInstance = new ffmpeg_movie('H:\upupw\htdocs\test.mp4');
echo "getDuration: " . $ffmpegInstance->getDuration()."<br>" .
"getFrameCount: " . $ffmpegInstance->getFrameCount()."<br>" .
"getFrameRate: " . $ffmpegInstance->getFrameRate()."<br>" .
"getFilename: " . $ffmpegInstance->getFilename()."<br>";
?>
//获取参数的方法还有很多,这里举例以上几个
访问test.php文件,如果有输出
getDuration: 4.5199999809265
getFrameCount: 113
getFrameRate: 25
getFilename: H:\upupw\htdocs\test.mp4
到这里测试配置的环境成功。
7.下一步截取视频图片
$ff_frame = $ffmpegInstance->getFrame(2);//截取视频第2帧的图像
$gd_image = $ff_frame->toGDImage();
$img=$_SERVER['DOCUMENT_ROOT']."/test.jpg";//要生成图片的绝对路径
imagejpeg($gd_image, $img);//创建jpg图像
imagedestroy($gd_image);//销毁一图像