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



Rockbox mail archive

Subject: Re: ID3 database browsing

Re: ID3 database browsing

From: Alexandre FLAMENT <a.flament_at_free.fr>
Date: Thu, 14 Oct 2004 17:13:17 +0200

My ideas, perhaps too complexe or confused :

- If user want to browse database while playing music, rockbox hasn't 2M
but something like 32kb ?

- About file list, if the database contains the list of all mp3 file, I
think the order is important. For example if all file are sorted in
alphabetic order, if a album contains a track name begining with A, and
another with Z; the disk need to seek a lot. But if filename are sorted
by album, all track are grouped.

- An idea of database : to handle selection with fragment. In above
suggestion, tracks are grouped by album. In that case, the list of all
track of a album can save in memory with two integers : first track and
last track (selection = from first track to last track).
So when user start browsing database we can suppose that all file are
seleted : one fragment from 1 (first file) to "the number of file in the
database".

When user chooses an artist (for example), the selection is modified :
the selection is filtered. Each "filter" give access to list of other
filters.

So database can look like that :

Header
------
    - offset of first filter
    - list of offset to filename (position give the Id of the filename)

Filter
------
    - # of fragment (to modify selection : filter for a album give one
fragment, first and last track)
        - list of fragment (two integer : Id of first file, Id of last file)

    - # of filter (pointer to other filters, if the current filter is an
artist, this list can give all albums of this artist)
        - list of filter offset in database
        - list of names

File name
---------
   - text referrenced by header, null terminated.

About the number of file : I have about 4000 different files on my
archos with a 20Go hard drive. 60Go/65535 files = 983Ko. Perhaps the
database can limit the number of file to 65535 ? In that case, Id of
file can a 16bit integer. This limit the used memory.

The key is to sort the list of file correctly.

I don't know if you can understand my english ;)
_______________________________________________
http://cool.haxx.se/mailman/listinfo/rockbox
Received on 2004-10-14

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy