У меня есть рубиновая программа для преобразования видео в формат MP4 с использованием ffmpeg. И я использую crontab для запуска программы ruby каждые 15 минут. 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
Этот код отлично работает, если я запускаю его вручную в консоли.