我试图在我的本地环境中进行简单的Imagick操作,例如
$im = new Imagick("File.mp4[100]");
准备视频文件帧捕获。不幸的是,我得到一个奇怪的例外:
UnableToOpenBlob`C:/Temp/magick-5924U7hGfaatgEtF.pam':没有这样的文件或目录@ error / blob.c / OpenBlob / 2657
我已将C:\ Temp目录完全写入" Everybody" - 没什么变化。
当我从命令行操作成功运行convert File.mp4[100] File.jpg
时,会生成JPG文件。
我的环境: PHP版本5.6.12 Imagick模块版本3.1.2 ImageMagick版本ImageMagick 6.8.9-1 Q16 x86 2014-05-08
答案 0 :(得分:1)
它可能是运行"委托"的权限。 ImageMagick用来解码视频。找出ImageMagick委托代理的方法是运行:
convert -list Delegate
然后找到将为MP4选择的那个。
我建议尝试通过PHP运行委托程序,例如类似于exec(" C:/ Program Files(x86)/mp4/bin/mp4converter.exe")或者它实际上来自PHP内部的任何程序,然后弄清楚它是否成功运行.. 。