Androidでのミュージックファイルアートワーク(カバーアート)仕様
正確にはAndroidの仕様なのかアプリケーションの仕様なのか分からないが、少なくともHT-03Aの標準音楽プレーヤと、meridianでは以下のような動作になっていた。
- アートワークはアルバムごとに1つ
「アルバム」の定義は後述するが、上記の意味するところは、同一アルバム内の楽曲ファイルに異なるアートワークを設定したとしても、プレーヤ上はどれも同じアートワークが表示される。
どのアートワークが用いられるかは
- アルバム内で最初にアクセスした「アートワークが設定されたファイル」のアートワークを、アルバムアートワークとしてキャッシュする
ということのようだ。一旦キャッシュされると、次回以降はそのキャッシュを使用しているように見える。
- キャッシュはルート直下のalbumthumbsディレクトリに保存される
このディレクトリ以下に保存されているファイルを画像ビューアで開くと、アートワーク画像そのものだということがわかる。
次に「アルバム」の定義だが、
- 異なるディレクトリに保存されたファイルは必ず異なるアルバムとして扱われる
- 同一ディレクトリに保存されたファイルでも、ID3タグ上のアルバム名が異なるファイルは異なるアルバムとして扱われる
逆に言うと、
- 同一アルバムとして扱うためには、以下の条件を満たす必要がある
- 同一ディレクトリに保存されたファイルである
- ID3タグのアルバム名が同一である
ということになる。
ところで、HT-03Aでの楽曲管理にdoubleTwistを用いている方も多いと思うが、このアプリで同期すると音楽ファイルは単一ディレクトリに保存される。
したがって、アルバム名を設定していないと、全て同一アルバムの楽曲だとみなされてしまう。
ipumではニコニコ動画音楽ファイルにID3タグを付与する設定にしていても、アルバム名の設定は行わない。このため、初回アクセスしたファイルのアートワークが、全てのファイルで表示されてしまう。対策としては
- ファイルごとに保存ディレクトリを変える
- ファイルごとにアルバム名を変える(ファイル名をアルバム名に設定する、など)
といったことが考えられるが、前者はファイル管理が煩雑になる(し、同期アプリに依存する)、後者はAndroid上だけで扱うファイルであれば良いかもしれないが、タグの本来の意味と異なるものを設定することになるため、相互運用で問題が出るだろう。
追記:
Google code の Issuesでは、Issue 2945: Music player doesn't recognize different images in the id3 tags of multiple files in one album で”Defect”として登録されているので、仕様ではなくバグのようだ。
| 固定リンク | コメント (0) | トラックバック (0)






最近のコメント