Я использовал это:
http://ruby -mp3info.rubyforge.org /
или
gem install ruby-mp3info
(добавить правило sudo
для Mac или * nix)
Есть некоторая документация по rdoc, и это хорошо. С другой стороны, мне не очень нравится использование имен полей в верхнем регистре, которые кажутся слишком озабоченными, чтобы сохранить имена из спецификации. Может мне стоит взломать несколько псевдонимов. В любом случае, этот пример скрипта сканирует мою музыкальную библиотеку и считает слова в заголовках:
require 'mp3info'
count = 0
words = Hash.new { |h, k| h[k] = 0 }
Dir.glob("E:/MUSIC/**/*.mp3") do |f|
count += 1
Mp3Info.open(f) do |mp3info|
title = mp3info.tag2.TIT2
next unless title
title.split(/\s/).each { |w| words[w.downcase] += 1 }
end
end
puts "Examined #{count} files"
words.to_a.sort{ |a, b| b[1] <=> a[1] }[0,100].each { |w| puts "#{w[0]}: #{w[1]}" }