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
From: Dave Hooper (dave_at_beermex.com)
Date: 2004-10-13


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



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa