我需要你的帮助。目前我使用的是Mac OS X 10.9.4和xampp apache 1.8.3-3。我需要使用ffmpeg(版本3.2)通过php exec()
转换视频文件,但我无法使其工作。我做了一些运行终端命令行的测试,系统正常运行。只在php中它不起作用。
ffmpeg是通过brew编译和安装的。
我进行了以下测试:
exec("/usr/local/Cellar/ffmpeg/2.3/bin/ffmpeg -i /Applications/XAMPP/xamppfiles/htdocs/teste/trailer.mp4 /Applications/XAMPP/xamppfiles/htdocs/teste/trailer2.flv 2>&1", $o, $v);
var_dump($o);
var_dump($v);
并得到以下内容:
array(4) {
[0]=> string(51) "dyld: Symbol not found: __cg_jpeg_resync_to_restart"
[1]=> string(82) "Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO"
[2]=> string(63) "Expected in: /Applications/XAMPP/xamppfiles/lib/libJPEG.dylib"
[3]=> string(67) " in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" } int(133)
答案 0 :(得分:7)
问题与DYLD_LIBRARY_PATH设置为xampp libraries文件夹
相关联尝试在exec之前解决这个问题 exec之前的任何一个都可以工作
exec('unset DYLD_LIBRARY_PATH ;');
putenv('DYLD_LIBRARY_PATH');
putenv('DYLD_LIBRARY_PATH=/usr/bin');