網上很多介紹的文章亂七八糟,說什么裝擴展,還得編譯。。。 等等都是些垃圾。
實現截取視頻的封面圖片簡單的很,只需要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