Aubin Paul wrote: > On Sat, Dec 13, 2003 at 11:01:25AM +0100, Dirk Meyer wrote: >> > Presumably we'd have to extend the plugin initialization function to >> > include this key... >> >> Yes, we could do that. BTW, why are you trying to add metainfo to a >> plugin? Don't we have the config stuff for plugin configuration. IMHO >> file metainfo is more important. What are you trying to do? > > I'm not really; it's just that certain plugins may track things (like > number of times an audio file has been played) and we should divide > those items up in someway. > > Maybe it shouldn't be in the plugins themselves, but in the "core" > > so, the main audio/ files would tag information like this: > > audio.PLAY_TIMES = 5 > > I think I mispoke when I talked about plugins, because it shouldn't > matter if it's Xine or Mplayer.
My idea would be something that stores metainfos about a file. This informations include the mmpython infos + some stuff Freevo wants to save (bookmarks, play times, etc.) > >> No, the thumbnail is not in the cache. In fact, there are less >> information about an image in the cache than about a mp3 file. > > Hmm... I've never seen many speed issues. (In fact the latest CVS is > VERY fast, even compared to 1.4) but I have an overpowered machine... > Athlon 2000XP, 512MB RAM, and a G400 card so their aren't many > bottlenecks. Even TV recording is done in hardware so the only time > their is much CPU usage is in cross fading or compiling a kernel :) And you use Python 2.3. Gentoo is still at 2.2.3 because the whole portage tree depneds on Python. They are testing very carefully. I'm thinking of all this metainfo stuff, and maybe you can do something. My knowledge of databases is close to zero, I got my diplom (similar to a master) without hearing anything about databases and how to structure them. My SQL knowledge is even closer to zero. If you have some time, maybe you can add some sqlite support. My ideas: create a new file in util to wrap the calls freevo makes to mmpython right now. If sqlite is installed, disable the mmpython cache and use sqlite. If not, use mmpython caching. The database should allow us to o check how many files of a directory are missing in the database o get infos about a file o store additional data o iterface to read/write freevo metainformations To do that, maybe we could use some ideas from shelve.py. Since sqlite can only handle strings, use pickle to store python objects (and let's hope pickle doesn't use the null character). About an object, we should be able to access: o all metadata freevo writes (bookmarks, play times, etc.) o basic infos like directory, filename, media id o the whole mmpython info, maybe as pickled object for fast access. But it won't be possible to search anything inside that strings, thats why we need... o some tags from mp3 files o thumbails. sqlite can store 1 MB on a row. I have no idea what a row is, but the current osd.py stores thumbnails as pickled pygame objects in less than 400kb. Using the db for this would speed up the image loading. This also includes mp3 covers from id tags. Comments? Dischi -- "The early worm gets eaten by the bird, so sleep late." ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel