我正在使用 resque 对一些编码作业进行排队。我有工作人员接手这些工作并进行一些转码。
问题是系统“mencoder ..”
工作正常,但系统“ffmpeg ..”
抛出未找到,与系统“qt-faststart ..”相同”
我使用 sudo apt-get install 安装了 mencoder。
ffmpeg 和 qt-faststart 是从源代码构建的。
所以 mencoder 位于/usr/bin 中,另外两个位于/usr/local/bin 中。
因此,我尝试的下一件事是在系统命令中使用完整路径,该命令也返回未找到。
然后我将 ffmpeg 和 qt-faststart 复制到/usr/bin 中。仍然得到“Not Found”
我的工作代码独立运行,但是当上帝运行它时,ffmpeg 和 qt-fasstart 无法执行。是的,我已经配置了上帝来观看resque。现在,我不知道还能尝试什么!有什么想法吗?
最佳答案
显而易见且最简单的方法就是给出系统方法的完整路径。 像这样
system("/usr/local/bin/ffmpeg")
但实际上,这首先不应该作为一个问题存在,尤其是你说应对没有帮助。
尝试从resque执行方法打印ENV['PATH']
这可能有助于理解问题所在,当然还要确保 ffmpeg 位于/usr/local/bin/
which ffmpeg
关于ruby-on-rails - Resque 找不到 ffmpeg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13910781/