admin 管理员组

文章数量: 887007

环境:php5.6,apache2.2

windows7:

ffmpeg-windows下载地址:https://download.csdn/download/qq_39545346/10312836

说明:

将ffmpeg中的所有dll文件和ext文件扔到C盘下的system32文件夹。

执行下面的代码:
$name = md5(date('YmdHis')).".png";  
        $from = "E:\\1.mp4";  
        $to = "E:\\cover_images\\";  
        $str = "ffmpeg -i ".$from." -y -f mjpeg -ss 3 -t 1 -s 740x500 ".$to.$name;  

        system($str);

Linux(centos6.8):

根据安装教程在linux上安装完ffmpeg
直接使用exec函数,在php代码中执行linux命令,即可进行截图:
exec('/usr/local/bin/ffmpeg -ss 00:00:01  -i ./1.mp4 ./pic/423.jpg  -r 1 -vframes 1 -an -f mjpeg 1>/dev/null');
注意,运行时应保证以下几点:
1.保存截图文件的文件夹有相关权限,
2.截取的视频文件有相关权限,
3.php没有禁用exec()函数,在php.ini中可以查看disabled_function
4.web访问用户,即apache服务默认用户有执行ffmepg的权限,
apache默认用户在httpd.conf中查看。
5.修改etc下的sudoers文件,新增加
Defaults visiblepw
%apache ALL=(ALL) NOPASSWD:/usr/bin/sudo, /usr/local/bin/MP4Box, /usr/local/bin/ffmpeg
给予apache用户相关权限。


本文标签: 系统 截图 视频 php ffmpeg