关于ffmpeg /iis 8.5 服务器下,视频截取第一帧参数配置

Posted china/xin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ffmpeg /iis 8.5 服务器下,视频截取第一帧参数配置相关的知识,希望对你有一定的参考价值。

ffmpeg 视频截取第一帧参数配置: 网站找了很多资料,但是都不能满足要求,然后自己写下解决过程。

首先看自己php 版本,安全选项里面 php5.4  跟php5.6 是不一样的。去除里面的system 函数限制。

然后,继续调整 system 函数的参数。做到cmd里面不报错误。

方法:

 1 /**
 2 * 获得视频文件的缩略图
 3 * 接口编号 : T1807-07-01
 4 * 
 5 * @param $file : 视频的位置
 6 * @param $time : 截取时间
 7 * @param $name : 截取之后的文件名称
 8 */
 9 public function getVideoCover($file,$time =1) {
10 if(empty($time))$time = 1 ;//默认截取第一秒第一帧
11 $strLen = strlen($file); // 函数返回字符串的长度
12 $videoCover = substr($file,0,$strLen-4);
13 $videoCoverName = $videoCover.‘.png‘;//缩略图命名
14 
15 
16 //exe 文件在 项目的上两级目录
17 $path = "D:HwsHostMasterphpwebphp56"; 
18 
19 $str =$path . "/ffmpeg -ss ".$time." -i ".$file." -y -f mjpeg -vframes ".$time." -s 320x170 ".$videoCoverName;
20 
21 $result = system($str);
22 }

$path 为php环境跟目录,因为 iis 8.5 服务器 不支持在web/跟目录运行系统函数。 -s 后面的 320*170 为所要截取的图片的大小,单位为像素。

如果系统函数不能运行,先输出$str 字符串,在cmd命令行窗口 直接运行。

另外如果需要 ffmpeg.exe 这个 文件,可以邮箱找我 。
        //-i:输入文件名  
            //-r:设定帧 此处设为1帧  
       // -y:覆盖 //-f:设定输出格式 //-ss 从指定时间截图
       //-s 图片宽高比例 //-vframes 设置转换多少桢(frame)的视频 //-an 不处理声音 ,用不到
其他参数自己百度搜下,这里只是用到的参数。

$str="d:/php/ffmpeg -ss 1 -i D:wwwpubliccontentvideo20180803/df4da985a22d053070f4df478feb01aa.mp4  -y  -f mjpeg  -vframes 1 -s 320x170 D:wwwpubliccontentvideo20180803/df4da985a22d053070f4df478feb01aa.png"

 










以上是关于关于ffmpeg /iis 8.5 服务器下,视频截取第一帧参数配置的主要内容,如果未能解决你的问题,请参考以下文章

关于ffmpeg推流,如何推流一个文件夹里的所有视频或者多个视频?

把asp.net挂到IIS上去之后就不能启动ffmpeg无法转换视频了 但是我在直接用VS2008测试的时候是可以的

如何在不同域中的远程服务器上启动或停止IIS-8.5网站

IIS 8.5 上的 SNI 和 SSL

IIS 7.5、8.0、8.5 HTTP 错误 403.14 - 安装干净的 Windows 后被禁止

如何让我的 Blazor 服务器端应用程序 IIS 8.5 保持活力