【发布时间】:2011-04-01 20:40:36
【问题描述】:
我有一个使用 ffmpeg 将视频转换为 MP4 格式的 ruby 程序。我使用 crontab 每 15 分钟运行一次 ruby 程序。 crontab 实际运行的是 ruby 程序,但是文件的转换没有完成。该过程在完成转换之前停止。我的 testin 示例代码如下。
def convert(y)
system "ffmpeg -i #{SOURCE_FOLDER + LOCATION_SOURCE}/#{y} -acodec libfaac -ar 44100 -ab 96k -vcodec libx264 #{DEST_FOLDER + LOCATION_DEST}/#{y}"
end
SOURCE_FOLDER = "/home/someone/work/videoapp/public/"
DEST_FOLDER = "/home/someone/work/videoapp/public/"
LOCATION_SOURCE = "source"
LOCATION_DEST = "dest"
files = Dir.new(SOURCE_FOLDER + LOCATION_SOURCE)
files.each do |x|
convert(x)
end
如果我在控制台中手动运行,此代码可以正常工作。
【问题讨论】:
-
你能发布 crontab 条目吗?另外,这是完整的脚本吗?
标签: ruby-on-rails ruby process ffmpeg crontab