CDDB と Latin-1 とファイル名

CDDB のデータといい Ogg vorbis のコメントといい、Grip でも amaroK でも utf-8 が問題無く使えている。そんな状況なのでついつい Latin-1 の文字も使いまくってしまう。やっぱり Motley Crue や Bjork なんかはウムラウト付きで書いてあげたい訳です。そんなことをやってたら、ファイル名の化けた *.ogg が沢山できてしまってた(ファイル名は euc-jp な環境なので)。しまったこっちを忘れてた。

まぁ普段 shell から扱うファイルでもないし化けてても困らないっちゃー困らないんですが、どうやら化けてると amaroK が Collection として認識してくれないようだ。

% find ~/music -name '*.ogg' | wc -l

で数えたのと amaroK に表示される楽曲数が異なるので気付いた。

こりゃ困ったってことでディスク内の捜索開始。最終的にはなんとか全数を Collection に加えることが出来た訳ですが、ファイル名が化けてるものを探すうまいやり方ってあるんですかね。

自分はスマートな解を思い付かなかったので

% find ~/music/[A-Z]* -name '*.ogg' | wc -l

の数と

mysql> SELECT url FROM tags;

を書き出したやつを

% LANG=C grep -c '/home/userid/music/[A-Z]' DB

でカウントした数を比較して、あとは二分法で、みたいな非常にダサダサな方法でやったんですが。イケてねえよなあ…。