2016-04-28 79 views
3

我正在编写一个应用程序及其基本的音乐平台。我想通过其元数据获取mp3的持续时间,并在将其上传到S3之前将其保存在表格中。使用载波上传到S3时获取mp3持续时间

我正在使用carrierwave和雾宝石的组合来上传。推荐用于保存到数据库的mp3元数据的推荐方式是什么?

回答

1

没有为这样的操作taglib-ruby

这里的宝石是一个例子

def set_duration 
    # :duration is an integer 
    # t.integer "duration",     :default => 0 
    TagLib::FileRef.open(file.file.path) do |file| 
     update_column(:duration, file.audio_properties.length) unless file.null? 
    end 
    end 

当然,你将拥有自己的ATTR的名字,但一般应该工作。

相关问题