Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: ID3 database browsing

Re: ID3 database browsing

From: Dave Hooper <dave_at_beermex.com>
Date: Wed, 13 Oct 2004 14:05:02 +0100

Just realised the logical way of representing the crossreferencing indices
correctly would actually be:

index.db
"SONGS", count, songs-offset
"ALBUMS", count, albums-offset
"ARTISTS", count, artists-offset
...
>songs-offset:
""
"song title",filename
"song title",filename
... (alphabetically sorted by song title)
>albums-offset:
"SONGS",
"album name", song-index 1, song-index2, ...
"album name", song-index 1, song-index 2, ...
... (alphabetically sorted by album name)
>artists-offset:
"ALBUMS","SONGS"
"artist name", album-count, album-index 1, album-index 2, ... song-index1,
song-index2, ...
"artist name", album-count, album-index 1, album-index 2, ... song-index1,
song-index2, ...

i.e. each section in the db file starts with a list of all the
cross-reference index entries. If the list is empty, then each entry
contains the filename. Otherwise, each entry contains an index into the
corresponding named tags section. If there's more than one entry in the
list of cross-referenced indices (i.e. "ALBUMS", "SONGS") then each entry
contains the count of cross-references for all but the last index (i.e.
artist name is followed by the count of album-index offsets, followed by the
album-index offsets themselves, followed by the song-index offsets until the
end of the line)

d

_______________________________________________
http://cool.haxx.se/mailman/listinfo/rockbox
Received on 2004-10-13

Page was last modified "Sat May 23 08:12:40 2020" The Rockbox Crew