FFmpeg的安装使用及结合win2008服务器IIS7+PHP7+TP6配置使用

PHP 773 0 2021-12-22

FFmpeg的安装使用及结合win2008服务器IIS7+PHP7+TP6配置使用

开始之前先来认识什么是FFmpeg,简单说FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

第一:安装FFmpeg

官网下载:https://ffmpeg.org/download.html,注意这里是下载windows版,如下图:

选择最新版或是合适自己的版本。比如我下载的是这个版本:

上面的压缩包解压到D盘并重新命名为ffmpeg,然后配置环境变量path,加上D:\ffmpeg\bin;

配置完后重启服务器,然后打开命令窗口cmd,输入:ffmpeg -version,如显示以下窗口说明安装成功:

如提示错误可确认下windows server 2008服务器是否安装这些功能,如没有先安装,安装步骤:

1、打开“服务器管理器”;

2、依次单击“功能” → “添加功能”;

3、勾选“桌面体验”和“优质Windows音频视频体验”;

4、单击“安装”按钮;

5、安装完毕,根据提示重新启动服务器即可。

安装完以上功能后如还提示缺少DLL文件,那就按提示的从网上下载补完即可。

注意:如服务器是64位的,DLL文件需要下放在两个目录下:System32 和 SysWOW64

第二:配置IIS

一般服务器端IIS对调用exe程序是有权限限制,没有正常启动插件,须要给调用插件的应用程序池赋予足够权限。

操作步骤如下:IIS ->    应用程序池   -> 选择你的应用  ->   右键选择高级设置  ->   找到进程模型  ->  标识 -> 选择自定义帐户  ->  输入administrator 帐号密码 ,重启应用程序解决。

第三:安装php-ffmpeg

这里用composer来安装(推荐),打开cmd命令窗口,切换到你TP项目的根目录下,然后输入:

composer require php-ffmpeg/php-ffmpeg


安装完成后测试,代码如下:

# ffmpeg和ffprobe为上面下载的扩展在你项目中的路径
$file = '你上传的视频路径';
$ffprobe = \FFMpeg\FFProbe::create([
     'ffmpeg.binaries'  => 'D:/ffmpeg/bin/ffmpeg.exe',	# 你本身安装的位置
     'ffprobe.binaries' => 'D:/ffmpeg/bin/ffprobe.exe'	# 你本身安装的位置
 ]);
 # 获取视频时长
 $video_time = $ffprobe->format($file)->get('duration',0)/60;
 # 获取视频大小(单位可能不许确)
 $video_size = $ffprobe->format($file)->get('size',0)/1000000; 

更多实操再百度上面自己查学哦


以下附上官方说的其它系统引用ffmpeg方法:

上一篇:PHP实现echarts5返回折线状option代码,可动态刷新折线图

下一篇:PHP中private、public、protected 和 self、$this的区别

讨论数量:1

天涯网魂 3 杠 5 星2022-06-22 16:37:11

windows service 2012 服务器注意:

其实这个 mfplat.dll 文件是跟多媒体处理有关的,但是 Windows service 2012 默认是没有安装 Windows Media Player,只需要在系统里面安装 Windows Media Player 即可解决安装 ffmpeg 缺少 mfplat.dll 文件的问题。

一直下一步知道角色选择那里,勾选“桌面体验”和“优质Windows音频视频体验”

选中以后直接下一步,直到程序执行完成,然后重启服务器即可。

请先登录再发表讨论。 2023-02-03

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链