Ruby получает длину звука - ошибка mp3info - PullRequest
0 голосов
/ 28 декабря 2011

Я пытаюсь использовать гем mp3info для получения длины аудиофайлов mp3 (в секундах), которые я сохранил на S3. Я получаю сообщение об ошибке NoMethodError: undefined method <'для nil: NilClass` </p>

Моя функция выглядит следующим образом:

def length
    require 'mp3info'
    if self.audio?
        tempfile = File.new("#{Rails.root.to_s}/tmp/recording_#{Process.pid}.mp3",'w+')
        uri = URI.parse(self.audio.url)
        IO.copy_stream(open(uri),tempfile)
        audio_length = Mp3Info.open(tempfile).length
        File.delete(tempfile)
        return audio_length
    end
end

Куда я иду не так?

Кроме того, в идеале я хотел бы использовать что-то, что может также определять продолжительность WAV и других типов аудио, поэтому, если у вас есть предложение, как это сделать с heroku, дайте мне знать.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...