Rails tag_id3v1 已售出

Rails tag_id3v1 mp3

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}

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

终于

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 

(...)