9

現在、私は音楽プロジェクトに取り組んでおり、ユーザーの mp3 アップロードを扱っています。問題は、すべてのファイルに対して正しく機能する id3 ライブラリが見つからないことです。ライブラリを試してみid3-rubyましMp3Infoたが、一貫して正しい結果が得られるものはありません。たとえば、最も一般的な問題は次のとおりです。

  • 間違ったストリーム パラメータ (ビットレートとサンプル レート、場合によってはデュレーション)
  • 拡張タグをサポートしていません

ユーザーがアーティストやタイトルなどのオプション情報を入力できるフォームを追加することにしました。それは少し役に立ちましたが、問題を完全に解決することはできませんでした。

Ruby 用の最も使いやすく強力な ID3 ライブラリは何ですか?

4

5 に答える 5

6

http://www.hakubi.us/ruby-taglib/

これをプロジェクトに使用しましたが、非常にうまく機能しました。非常に移植性の高い taglib のラッパー。

于 2009-06-09T21:18:04.613 に答える
4

私はこれを使用しました:

http://ruby-mp3info.rubyforge.org/

また

gem install ruby-mp3infosudo( 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]}" }
于 2009-06-10T09:32:36.547 に答える
0

http://id3lib-ruby.rubyforge.org/

私はこれが特に気に入りました。ファイルにタグを書き込むこともできます。

于 2009-06-09T23:17:33.980 に答える