On Sat, 15 Dec 2012, Krzysztof wrote:

Hi,
I need similar functionality like mp3 players have (e.g rhythmbox, banshee, 
clementine). I have some experience with databases (I worked in company which 
make
ERP systems), but don't know how to connect it with file handling.

My general questions are:
1. I have big collection of music. First indexing in random music player take 
some time, but refreshing collection take only a second. How they do this? They
are saving folders last change date?

When indexing the first time they must see if a file is known or not. This 
takes time.
During refresh they know the names, they just need to update.

2. Some players have option which detect when collection is changed and 
automatically can refresh it (even if player is actually running). How it 
works? Some
hook for folders?

The inotify calls are available on Linux. It tells you when a file/folder 
changes:

function inotify_init: cint;
function inotify_init1(flags:cint):cint;
function inotify_add_watch(fd:cint; name:Pchar; mask:cuint32):cint;

These calls are available in the linux unit. I have an article that describes 
how it works, if you want.
There is a similar mechanism on windows, but I haven't had time to look at it 
yet:
I wanted to make a unified architecture for this kind of things.

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to