私の音楽ライブラリを整理するために、私のシステムで最も倍増している曲に注意を払います。私はちょうどそれらをすべてリストし、並べ替え、手動で行うことができますが、それは時間がかかりすぎます。私は、リストが最も重複したものを並べ替えるようにしたい。だから、曲に10個の重複がある場合は、お互いに似ている10の曲名があることを意味するので、最初にその曲に注目して、最高のバージョンを保つようにします。インデックスや文字列のインデックスやハッシュを比較する
私はレーベンシュタイン文字列比較技術や宝石を使用して
require 'levenshtein'
Levenshtein.distance("string1", "string2") => 1
を使用して2つのsongnamesを比較だがさんは、私は曲のx数を持っているとしましょう可能性があり、私は「私ができるので、それぞれの曲のx回を比較しなければなりません通常のファイル共有に頼っていると、重複してしまいます。例えば
The Beatles - Hey Jude
Beatles, The - hey jude
Beatles_-_Hey_Judy_(remastered)
はビートルズを与える必要があります - ちょっとジュディ(×3)
は、ソートすることができ、降順ですべての重複を与えるだろう、ファイル名に基づいてインデックスを生成する方法はありますか?比較できるハッシュの一種?
私は方法を比較する他の音楽を知っていますが、彼らの欠陥があり、これは他の種類のファイルを比較するのにも役立ちます。
[pHash](https://github.com/toy/pHash)のようなものを見て、実際のオーディオを比較し、それらが一致する信頼水準を与えることができます。 –
はおもしろい宝石のようですが、インストール後に私が必要なときは、C:/Ruby193/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/lib/ffi/library.rb:121:in 'block in ffi_lib ':ライブラリ' .dll 'を開けませんでした:指定されたモジュールが見つかりませんでした。 (LoadError) – peter
宝石が使用する[phashライブラリをダウンロードしてインストールする](http://phash.org/download/)が必要です。 –