SonicStage、WindowsMediaPlayer、iTunes for Windows、TVersityの全部で文字化けしないMP3ファイルを作る (4)

前回までの方法で作成したSTEPで編集できないタグを削除したID3v2.3(UTF-16)+ID3v1なMP3ファイルの認識状況は完璧です。TVersityはもちろんのこと、Windows Media Playerでも文字化けしません。

携帯プレイヤーへの転送についても、手元のNW-HD1、gigabeatでちゃんとID3v2のタグを読んでます。gigabeatで誤認識がなくなったのは個人的にかなり嬉しい。これまでは同じアーティスト名のはずなのにメニューで分かれちゃったりして使いにくくて仕方がなかったので。

…。

いろいろやってきてWindows Media Playerについてわかったことは、

  1. Windows Media PlayerはTTE2などのタグを見てリストを作っているらしい
  2. Windows Media Player文字コードの違いを吸収できないらしい
  3. Windows Media DRM採用のポータブルプレイヤーはWindows Media Playerと同じようにタグを読み込むとは限らない
    • ファイルの認識はポータブルプレイヤー任せ
    • TTE2を無視するかもしれないし、文字コードの違いを考慮するかもしれない

ということ。基本的にWindows Media Playerはタグの文字列をただのバイト列として扱うんですね。ダメな実装だなぁ。

…。

一方、SonicStageの方は文字コードが違っても大丈夫で、おそらく内部で適当な文字コードに変換して持っています。ポータブルプレイヤーで曲名などを表示するためのリストファイルもSonicStageで作っていて、プレイヤーはタグを読んでないのかもしれません。

これはSonicStageがMDなどの特殊な曲名表示機構を持つデバイスに対応していることや、ハードの設計と連携できることから出てくるものと言えるでしょう。それがいいか悪いかはわかりませんけど。

<追記>
一応「その3」と「その4」あたりが解決編になってますので、検索で来た方はそちらを読んでみてください。

その1( http://d.hatena.ne.jp/saburahu/20071104/1194190268
その2( http://d.hatena.ne.jp/saburahu/20071105/1194276427
その3( http://d.hatena.ne.jp/saburahu/20071106/1194365038
その4( http://d.hatena.ne.jp/saburahu/20071108/1194531185