mp3 のタグについて最後に調べたのは2年も前で ID3v2 の仕様を 忘れてしまったのでバイナリデータは後できちんと検証してみますが、 STEP_K(STEP_M も STEP にも) には、以下の不具合が存在します。
・ID3v2.4 でフレームの非同期化が必要なデータを書き換えると 文字化けする
BOM 付のユニコード文字列を使ったり、画像を使ってる場合に 発生しやすいです。
この不具合は ID3v2.3 なら発生しません。
もし ID3v2.4 なら、他のソフトで ID3v2.3 に変換して下さい。 STEP_K では ID3v2.4 の使用はお勧めしません。
きちんとした検証は後でやるとして、バイナリを見る限り、 ff 00 fe という箇所が点在しています。おそらく BOM 付 ユニコード文字列(リトルエンディアンのUTF16)を使った データです。
STEP_K によってフレームの非同期化がされて文字化けするの だと思います。おそらくそのデータは mp3infp/u とか、国産 のソフトの多くでは文字化けせずに表示されるのではないで しょうか。
この不具合は mp3infp にも存在していて、不具合を修正すると 国産の音楽再生ソフトの多くで文字化けしてしまう(おそらく 国産ソフトの多くが mp3infp でタグを書き換えたデータをタグ 取得の動作確認に用いてるからと思います)という大変厄介な 不具合です。
2年前のことなので現状では違うかもしれません。
v1.02 正式版を公開しようとする直前に気づいて、その後 どう対応すべきか考えるのもイヤになって開発を中断して しまいました。
このまま放置しとくのがまずいのは分かっているのですが、 私は STEP_K に関してはあまり開発意欲がないんですよね。
タグの書き換えとしては個人的には十分な機能を備えている し、元々自分で書いたものではないので、メンテナンスする のは正直シンドイです。
繰り返しますが、STEP_K で MP3 のタグを書き換えるなら、 ID3v2.3 をお使い下さい。ID3v2.4 はお勧めしません。
いずれは何とかしたいと思いますが、対応の仕方をまじめに 考えると頭痛がしてきてしまって…。
誰か STEP_MP3 だけでも作り直してくれると良いのですが…。 |