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