0

Rails 4.2 ap 和 taglib-ruby gem

我尝试了几种方法来使用 taglib-ruby 标记我的音频文件。

我已经尝试过作为载波进程,现在,我正在尝试标记 after_save。

我的问题,如果我正在做一个回调 after_save:

 def tag_id3v1(tags)
   TagLib::MPEG::File.open(file.path) do |file|
   tag = file.id3v1_tag(true)
   tag.title = :title
   file.save
end

结尾

我的文件路径应该是什么?我尝试过:file、:file_name 和上传器版本 url,#{track.mp3.url}

我正在尝试重新打开保存的文件并将标签写入文件。有人对执行此操作的最佳方法有任何提示吗?

4

1 回答 1

0

最后

TagLib::MPEG::File.open(file.file) do |file|

总是类似于“file.file”。无论采用哪种方法,这对我来说都是诀窍。

我最终在 :version 内的载波回调中执行此操作。最终代码

version :mp3 do
  process :convert => [:mp3] 

  def full_filename(for_file)
   "#{super.chomp(File.extname(super))}.mp3"
  end  

  after :store, :tag_id3v2

  end


 def tag_id3v2(for_file)
  TagLib::MPEG::File.open(file.file) do |file|
  tag = file.id3v2_tag(true)
  tag.title = "#{model.title}"
  file.save
 end
 end 

(...)
于 2016-04-18T03:28:48.237 回答