MP3 ID3タグの文字エンコードがShift-JISの場合、Linuxのメディアプレーヤ(RhythmboxやTotemなど)で文字化けが起こって表示されない。
Googleで先人の経験を調べると、
・ID3 version 1 タグは削除する
・ID3 version 2 タグは version 2.3 を指定する
・文字エンコードはUTF-16
とするのがよいらしい。ID3タグについてはWikipedia『ID3タグ』に詳しく書かれている。
AppleのiOS(iPodなど)やGoogleのAndroidなど、米国発のグローバルスタンダード製品が日本製品を次々と駆逐していく中で、そろそろ保有しているMP3ファイルも脱日本(脱Shift-JIS)を図っていったほうがよいと思う今日この頃。
■ (Linux) EasyTagでの設定
設定ダイアログでの設定例
・ID3v2 の設定を ID3v2.3 を選択、Unicode(UTF-16) を選択する。
・ID3v1 のチェックを外す
■ (Windows) STEPでの設定
オプション ー プラグイン設定 ー MP3設定
・ID3v2の形式 : v2.3, UTF-16
・ID3v1を削除(上の画面のダイアログの、左側のタブ内)
■ (Linux)メディアプレーヤ上での状況
Ubuntu 10.04の標準メディアプレーヤRhythmbox
Shift-JISの部分は文字化けしている
xbmc
Shift-JISであっても正しく認識するプログラムも存在する
■ (Windows) Windows Media Player
Windows Media Player
Windows上のメディアプレーヤは、大抵の場合Shift-JISを正しく認識して表示できる。(逆に、標準規格であるUTF-16の場合に、文字化けするメディアプレーヤも存在する)
■ 規格
Wikipedia英語版『ID3』によれば、
『 ID3v2 ...
The internationalization problem was solved by allowing the encoding of strings not only with ISO-8859-1, but also with UTF-16. 』
ということで、ISO-8859-1 (ASCII) または UTF-16 が決まりごとのようだ。
■ 参考資料
・MP3 ID3 文字コード関係を仕様書にあたってみる
・mp3のID3タグについて
・MP3のタグの設定を考える
・RhythmboxでのMP3 ID3タグ文字化け
(環境変数に GST_ID3_TAG_ENCODING='CP932' を追加することで、SJIS表示も出来るという回避手段が書かれている)