まァね、ファイル管理ってのは今回の主題であるMP3に限らず正解のないものでして、ましてや同一ファイルを最低でもパソコンとスマホ一台ずつで不具合なく扱おうと思えば、やはりそれなりのルールが必要です。
それこそテキストファイルなんかは、もう何度も書いてるけどUTF8でないと話にならない。ま、今さらshiftjisで新規テキストを作成する人もいないだろうけど、昔作成したものはそうとは限らない。
つかね、今から10年以上前に作られたウェブサイトの改変はそこが大変でして、単にHTMLをUTF8にするだけなら簡単だけど、ウェブプログラムで制御している場合、当然そこも変えなきゃいけない。知識がある言語ならともかくまったく経験のない言語なんかだとマジで大変なんですよ。
テキストファイルやHTMLの場合は文字コードだけの問題だけど、ではMP3のタグ、つまりID3の場合はどうか、です。
もちろん文字コードもあるけどもうひとつ、バージョンの問題があるんですよ。
最初これに気づかなくて、つか多少のバージョン違いなんて扱うソフトウェア側で吸収してくれるだろ、と安易に考えていたのですが、大半の音楽アプリでID3を正しく扱ってもらうと思うなら、バージョンの統一が如何に大切かよくわかった。
ID3の何がややこしいかと言えば、違うバージョンのデータを同時に保持出来てしまうことろで、これがミスの原因となる。
だから違うバージョンのデータを削除してやる必要があるのです。
具体的に書きます。
・バージョン 2.3(他の2.1や2.4などは削除)
・文字コード UTF16
このふたつは絶対に守った方がいい。
他に、これはあくまで個人的な設定だけど
・ID3に埋め込むジャケット画像は480x480のJPEG
・ゲインは90dB
この辺も統一しておくと後々扱いやすくなります。
他の注意点としては、実はUTF8を基本にする場合、Macで使われる「utf8-mac」(NFD)ってのがあって、これも文字化けの原因になる。
具体的には濁点がひとつの文字として扱われるというか、例えば「が」であれば見た目は「が」なんだけど、実際には「か゛」になってるっつー。
Macを使ってなければ関係ないじゃん、と思われるかもしれませんが、ウェブサイトから曲名なんかをコピペした時、そのサイトのHTMLがMacで制作されたものだったりしたら、やっぱりおかしなことになる。
しかもこれ、とくにWindowsではちゃんと詰めて表示される=パッと見ではわからないのでメチャクチャ面倒です。
MacはもちろんWindowsでも大丈夫なら別に直さなくても良くないか?と思われるかもしれませんが、アプリによるとは言えAndroidでは例えば「か゛んは゛れ」と表示されたりするので、やっぱり直しておいた方がキレイです。
圧縮形式やエンコーダーにこだわって音質的に「キレイ」な音楽ファイルを作ってる人はいくらでもいると思うけど、本当にキレイなID3を記述しようとしている人は、たぶんほとんどいないと思う。
でもね、ここを本気でちゃんとやっておかないとアタシが目指すものが作れない。つまり「自家製音楽ストリーミングサービス」です。
ま、実際はストリーミングではなくローカルにファイルを置いてるけど、極端な話、ID3を制する者が音楽のフォルダ管理を制する、と思っているもので。
実際にアタシがどういうことをしようとしているかは、だいぶ前からtumblrとかに書いてたのですが、ま、そのうち続きを書きます。