PHP使用ffmpeg实现视频截图(Linux系统和windows系统)

环境:php5.6,apache2.2

windows7:

ffmpeg-windows下载地址:https://download.csdn.net/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用户相关权限。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值