我有这个应用程序,我需要将视频文件转换为MP4,然后压缩它。我正在尝试使用FFMPEG来实现这一点。尝试了控制台中的命令行,它工作得很好
转换
ffmpeg -i teste.avi teste.mp4
压缩
ffmpeg -i teste.mp4 -acodec mp2 teste.mp4
但当我在PHP脚本中执行同样的操作时,它开始大喊没有安装GLIBCXX
。这就是错误:
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib/i386-linux-gnu/libjack.so.0)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/i386-linux-gnu/libjack.so.0)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/lib/i386-linux-gnu/libjack.so.0)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/i386-linux-gnu/libzmq.so.3)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/libzmq.so.3)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib/i386-linux-gnu/libopencv_core.so.2.4)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/i386-linux-gnu/libopencv_core.so.2.4)
ffmpeg: /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/libopencv_core.so.2.4)
这是我的脚本
$r = shell_exec("ffmpeg -i $file_path $output_path 2>&1"); //convert
$r = shell_exec("ffmpeg -i $file_path -acodec mp2 $file_path 2>&1"); //compress
我正在Ubuntu 上运行脚本
@编辑例如,我可以运行shell_exec('ls')
为了解决这个问题,我去了/usr/lib,搜索了libstdc++(这个目录有更新的版本),并将其复制到/opt/lamp/lib。
我备份了原始文件,粘贴了新文件和BOOM!成功了!:)
我希望它也适用于你。