ruby-on-rails - 如何使用Rails读取音频文件信息,我想读取音频文件的总持续时间(以秒为单位)

标签 ruby-on-rails audio

正如您在Timeline.rb模型中看到的那样,我通过源大小定义Size,但是我想将其更改为音频文件的源持续时间。

当前设置

  def size
    (source.size.to_f/10000000).round(1)
  end

我尝试了很多 gem 和东西,但似乎无法正常工作?
附言文件存储在S3 Amazon中。

有什么想法吗?
问候,
克里斯

最佳答案

您将不得不使用taglib之类的库,因为Ruby和Rails都没有内置的音频支持。

在taglib中,您将执行以下操作:

require 'taglib'

  def size(file_reference)
    properties = file_reference.audio_properties
    return properties.length
  end

您还需要在模型中设置一种方法来设置文件引用(通过打开音频文件,但是您可以自己查找)。

关于ruby-on-rails - 如何使用Rails读取音频文件信息,我想读取音频文件的总持续时间(以秒为单位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38795599/

相关文章:

javascript - 将 Controller 放入单独的文件后, Angular rails 应用程序无法工作

javascript - Rails jquery 新手

c - 您能想到的为计算机游戏制定简单音频均衡器的最简单方法是什么?

java - 录音期间发生异常……!

c++ 将 FFT 应用于 wav 文件数据

javascript - Rails 数据表选择过滤器

ruby-on-rails - 使用关联数据发布 JSON

ruby-on-rails - 当我想要 rails 中的全局对象时,如何避免常量?

java - Java 中用于音频的循环 ShortBuffer

python - Pydub - 如何在不改变播放速度的情况下改变帧率