PHP中使用ffmpeg截取视频图片笔记
网上很多介绍的文章乱七八糟,说什么装扩展,还得编译。。。 等等都是些垃圾。
实现截取视频的封面图片简单的很,只需要3步: 1. 安装ffmpeg软件(什么系统都有对应的安装包),2.PHP中composer安装php-ffmpeg库,3.代码中调用就OK
1. 安装ffpeg软件
下载ffmpeg软件包 : http://www.ffmpeg.org/download.html#build-windows
我的是在本地win下测试的,下载参考:https://blog.csdn.net/sinat_41612591/article/details/82314420
下载下来就是编译好的软件包,不需要再安装
ffmpeg.exe ffprobe.exe 这两个可执行文件程序中会用到
环境变量其实可以不用配置,我全路径执行程序。
2. composer安装php-ffmpeg
composer require php-ffmpeg/php-ffmpeg
https://github.com/PHP-FFMpeg/PHP-FFMpeg/
有介绍很多基本的用法
3. 视频封面图截取PHP 简单实例代码
$file_path = __DIR__.'/'.date('Ymd').'/test01'.uniqid().'.jpg';
require '../vendor/autoload.php';
$ffmpeg = FFMpeg\FFMpeg::create([
'ffmpeg.binaries' => 'D:\ffmpeg-20190805-5ac28e9-win64-static\bin\ffmpeg.exe',
'ffprobe.binaries' => 'D:\ffmpeg-20190805-5ac28e9-win64-static\bin\ffprobe.exe'
]);
$video = $ffmpeg->open('test01.mp4');
$video->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(5))->save($file_path);
linux下是一样,只是ffmpeg执行路径不一样,这个可以根据环境变量配置即可。
就是这么简单,记录下方便使用。
相关参考:
https://www.cnblogs.com/peteremperor/p/6477743.html
http://www.itgo.me/a/9081031061961753199/unable-to-load-ffprobe-driver-for-ffmpeg
https://blog.csdn.net/sinat_41612591/article/details/82314420