关于视频截取封面图

释放双眼,带上耳机,听听看~!

这里要说明,ffmpeg是一款软件,拓展调用软件的功能,代码实现截取对应帧数的图片.所以整个过程有3步,安装软件,安装拓展,代码调用.因为ffmpeg分windows和linux,下马就分别记录一下windows和linxu的安装使用过程

  1. windows下的安装和使用

    a. 安装软件,官方有下载地址: http://www.ffmpeg.org/download.html ,下载速度还可以

    关于视频截取封面图插图

    关于视频截取封面图插图1

    关于视频截取封面图插图2

    下载之后,解压出来.这两个文件的路径后面代码会调用

    关于视频截取封面图插图3

    b. ffmpeg拓展安装,我比较懒,直接composer安装: composer require php-ffmpeg/php-ffmpeg

    关于视频截取封面图插图4

    c. 代码调用

    $config = [

    ‘ffmpeg.binaries’  => ‘D:phpstudy_proExtensionsffmpegbinffmpeg.exe’,    //为了方便调用,我将解压包移到了phpstudy里面,这里填写你的解压地址

    ‘ffprobe.binaries’ =>  ‘D:phpstudy_proExtensionsffmpegbinffprobe.exe’    //为了方便调用,我将解压包移到了phpstudy里面,这里填写你的解压地址

    ];

    $ffmpeg = FFMpegFFMpeg::create($config);   //实例化ffmpeg对象

    $videoname = ROOT_PATH .’public/uploads/202004/07/1.mp4′;   //视频地址,可用绝对地址和网络地址

    $video = $ffmpeg->open($videoname);

    $frame = $video->frame(FFMpegCoordinateTimeCode::fromSeconds(1));   //获取视频的第1帧作为封面

    $frame->save(‘radio.jpg’);   //封面的保存地址,根据实际使用场景自定义

    print_r(getimagesize(‘radio.jpg’));    //获取图片属性,宽/高/大小

    d. 查看结果

    关于视频截取封面图插图5

    关于视频截取封面图插图6

  2. linux下的安装和使用

    a. 安装软件,官方有下载地址: http://www.ffmpeg.org/download.html

    关于视频截取封面图插图7

    左右两边应该都可以,不过建议下载最新的

    关于视频截取封面图插图8

    我是在usr/local下安装

    cd /usr/local

    wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz    //下载安装包

    xz -d ffmpeg-release-amd64-static.tar.xz      //初次解压

    tar -vxf ffmpeg-release-amd64-static.tar      //二次解压

    关于视频截取封面图插图9

    cd ffmpeg-release-amd64-static  ,这两个文件的路径后面代码会调用

    关于视频截取封面图插图10

    b. ffmpeg拓展安装,我比较懒,直接composer安装: composer require php-ffmpeg/php-ffmpeg

    关于视频截取封面图插图11

    c. 代码调用,这里有个小坑,ffmpeg会使用php的proc_open函数,在php.ini里需要把这个禁用函数取消掉

    $config = [

    ‘ffmpeg.binaries’  => ‘/usr/local/ffmpeg-4.2.2-amd64-static/ffmpeg’,     //linux中软件的解压地址

    ‘ffprobe.binaries’ =>  ‘/usr/local/ffmpeg-4.2.2-amd64-static/ffprobe’     //linux中软件的解压地址

    ];

    $ffmpeg = FFMpegFFMpeg::create($config);

    $videoname = ROOT_PATH .’public/uploads/202004/07/1.mp4′;   //视频绝对地址或者网络地址

    $video = $ffmpeg->open($videoname);

    $frame = $video->frame(FFMpegCoordinateTimeCode::fromSeconds(1));   //获取视频的第一帧作为封面

    $frame->save(‘radio.jpg’);   //保存地址

    print_r(getimagesize(‘radio.jpg’));    //获取图片属性,宽高

    d. 查看结果

    关于视频截取封面图插图12

    至此,基本结束了,如果还有问题,欢迎留言探讨

文章来源于互联网:关于视频截取封面图

人已赞赏
PHP学习笔记技术杂烩

thinkphp 模板中很好用的几种写法

2020-11-17 17:52:58

PHP学习笔记技术杂烩

php 获取ip所在地

2020-11-17 17:53:06

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索