On Tue, Aug 12, 2014 at 5:02 AM, François Revol <revol@xxxxxxx> wrote: > On 11/08/2014 03:13, John Scipione wrote: >> Oh and btw I have more, much more. This work and the style work I did >> earlier are laying the groundwork for starting to really fill out the >> feature set of Tracker to be more modern. Things like image thumbnail >> support, attributes for media files that actually get filled in for you, > > I'm not sure it's Tracker's job to extract media attributes. Well, my work has been on image files so far but my vision also extends to things like audio and video files. There are certain attributes we can extract out of the file using the Media Kit and Translation Kit for instance we can get the runtime and dimensions of a video, we can also get the runtime of an audio file. For an image we can get the height and width of the image. I suppose you could dedicate a separate process to extract this info in the background, but, Tracker already has all the node monitoring code in place to check for changes so it makes sense to do this work in Tracker (I think). My vision is that when you run Get Info on a media file it would show you this extra information we've collected, video runtime, image height and width and other stuff, or you could turn on the appropriate attributes in list mode to see it. This info would get produced on the fly when you open a folder that has one or more of these files in it and then it would get stored in a BFS attribute. If the file wasn't on BFS (or more precisely on a file system that doesn't support extended attributes) then you just wouldn't get this extra info. Again, we are already doing node monitoring in Tracker so it's a matter or calling the right hook functions when a file is created or the modification time of the file changes. Would this slow the system down to an unusable level if you open a folder with 10,000 video files in it? I have to admit that right now I don't know but I would hope that we ought to be able to either do this processing in a low priority background thread so that the UI doesn't get bogged down. You say that you're not sure that it's Tracker's job to extract media attributes, but, if it's not Tracker's job, who's job is it? Do you envision a Spotlight-like background process running to collect the info perhaps, or maybe a dedicated app that you'd run on demand? Maybe several dedicated apps each dedicated to a specific set of media attributes ala Swiss Army Knife?