PHP exec调用ffmpeg自动转码视频不执行了
程序员文章站
2024-01-23 19:08:46
...
给一客户做PHPCMS的字段开发,实际上传视频转码功能,本机测试通过,UAT环境也通过。客户上传到生产环境后转码不执行了,UAT环境与生产环境一样,都是WIN2003+IIS6.
CMD.EXE与ffmpeg.exe的权限都给了,everyone,iis,guest等,全部是完全控制,运行exec('ipconfig');可以正常输出用户IP信息,证明CMD.EXE权限没错,但是运行exec('ffmpeg.exe -i test.wmv test.mp4')这样的命令始终无法执行.可以排除ffmpeg.exe与视频文件的路径问题,相对路径与绝对路径都测试过了。
GOOGLE,百度找了一堆资料,还是无解,有没有大神帮忙分析下可能会是什么原因?
CMD.EXE与ffmpeg.exe的权限都给了,everyone,iis,guest等,全部是完全控制,运行exec('ipconfig');可以正常输出用户IP信息,证明CMD.EXE权限没错,但是运行exec('ffmpeg.exe -i test.wmv test.mp4')这样的命令始终无法执行.可以排除ffmpeg.exe与视频文件的路径问题,相对路径与绝对路径都测试过了。
GOOGLE,百度找了一堆资料,还是无解,有没有大神帮忙分析下可能会是什么原因?
回复讨论(解决方案)
又搜到自己的问题了,求人品
这种东西还真不好说问题出在哪,基本上要排除的错误问题你都已经排除过了,在单独的执行这个转码指令功能是正常的吗?或者将你的这个功能部分到其他的win2003系统上再做个测试看看。
ffmpeg.exe 需要有匿名用户执行权
ffmpeg.exe与视频文件都需要使用绝对路径
你可以通过 php 文件同目录下的 cmd 文件来验证这一点
ffmpeg.exe 需要有匿名用户执行权
ffmpeg.exe与视频文件都需要使用绝对路径
你可以通过 php 文件同目录下的 cmd 文件来验证这一点 都可以使用相对路径