MusicBeeに登録したビデオのメタデータ(特にカスタムタグ)を移行するのにDBの内容を直接使おうとしたので、DBのフォーマットを解析してみた。全容は解明できていないが、結構分かったので書く。なお、実際の移行にはDBを使わないことにしたので、これ以外の情報は追加しない。
- 使用したMusicBeeのバージョン: 2.5
- DBのファイル名: MusicBeeLibrary.mbl
※以降で"0xMN"は16進数。
ファイル構造:
- (ファイルの先頭) 1 0 0 : DBの開始
- 0 2/3/5 1/6 0xff : エントリの開始
- 2バイト目: エントリのタイプ?: 3= 音楽, 5= ビデオ
- 3バイト名: 不明
- 11バイトの0 またはデータ(内容不明)
- 0 + ファイルのパス: 可変長データ
- タグ(可変長データ)の連続
- 0x77 1 (0x4d/0x46)= エントリの終わり?: ない場合もある。
- (次のエントリの開始)
※ただし、フォーマットが違う部分がある。また、DBの最初付近しか見ていないので、後半に別の構造があるかも知れない。
可変長データの構造:
- データタイプ (1バイト。ただし、ファイルのパスでは2バイトで 0xf0 1になっている場合がある)
- データの長さ (1バイト)
- データ (可変長。文字列はUTF-8と思われるが、未確認)
データタイプ:
- 0= ファイルのパス>
- 2, 8= アルバムアートのファイル名?
- 0x1e= アルバム名?
- 0x1f= アーティスト
- 0x20= ?
- 0x2b= アルバムアーティスト?
- 0x3b= ジャンル
- 0x41= タイトル
- 0x49= レーベル?
- 0x58= 年?
※上記以外のほとんどはカスタムタグ。私の環境では、最初のカスタムタグのタイプは0x2eだった。
コメントを書く / Write a comment