Label Browsing and Upgrades

Been looking for years for a tool to sort and manage a large photo and home video library. Have tried many solutions, giving up on every one eventually.

Am now looking at Directory Opus, Xyplorer, and Total Commander.

Have only spent a short time with each and so far each has a critical missing feature. DO and TC have nearly the same critical problem for me. DO is better on the big issue, but worse on some smaller issues.

Labels - Is what I need, but they don't go far enough.

  1. I need a label system with some kind of tree structure. For example, lets say that I need to tag photos or videos with a city. Its not practical to list every city without any type of grouping. If they were in a tree structure, then I could add Frankfurt under Germany, and if I wanted to see all videos in Germany it would include all cities without having to tag Germany as well. Adobe years ago had an excellent product that did this and the other items perfectly, but its been discontinued, didnt work with videos, and had Adobe's #1 legendary trademark - BUGS!!!!!

  2. Need to be able to browse labels as if they were folders. That is, its too cumbersome to search each time. Should be able to browse the labels like folders can be done now.

I realize that the tags now are stored as file extended attributes and the limitations this entails. So it would be ok for a compromise such as a central "label database" that DO has to know where it is, and then the file extended attribs have a GUID or other tag if necessary to ref back to the label database.

Currently the only way I can see do to things is have labels like Country_Germany_Frankfurt and Country_Germany, etc... and of course this will get out of hand VERY quickly and location is not the only way I need to classify these files. I also need to classify by who is in the photos, type of photo, year and month, and other classifications.

Also the Video Preview window appears to not have any keyboard shortcuts?

1 Like
  1. You can apply multiple labels to a single file, so you could label a file with both Frankfurt and Germany. They are separate things, though, so there would not be an automated way to ensure all things tagged Frankfurt are also tagged Germany, unless you managed the labels through a custom script or something.

  2. I doubt you'll find anything that is perfect for that. If you use a central database, it will go out of sync when files are moved or renamed by other software. If you don't use a central database, you'll need to run searches to find where things are and what they are tagged with in the real filesystem.

    You could have something which uses indexing to combine both approaches, but then you have the problems inherent with indexing, needing something always running searches in the background, and a database that may not always be up to date. -- If you wanted something like that in Opus, a VFS Plugin could provide it, but it's not built-in.

    If the problem with searching is that you have to set up the Find parameters each time, you can avoid that by creating buttons that instantly initiate predefined searches for the labels you care about. But if you're aiming to avoid having to wait while the directories and labels are read from disk, then that won't help there.

The standard media keys (Play, Pause, etc.) should work with it, if your keyboard has them. (Most do these days, sometimes via a Fn key if not dedicated keys.) (Assuming we're talking about the Movie plugin. There are a few alternative ways to preview videos in Opus.)

1 Like
  1. Yes, but that is exactly the problem.

  2. You can move files and it would still work as they would be stored in extended file attribs which on NTFS can be copied. They could be fully stored as well, but space might be be an issue, thus the DB.

Even if browsing via media tags were implemented that might suffice a bit.

Can you point me to alternative ways to preview within DO? I need better keyboard support beyond play pause. Need skip forward, etc.

I did a quick search but didnt turn anything up yet, is the plugin API open?

Labels can already be stored in NTFS, but you cannot walk NTFS metadata like a folder tree. It has to be read out of the file system (like reading individual directory listings, or searching).

You could store it in NTFS and in a database, but then you have to somehow update the database when a file is moved/renamed/etc. by another program. That can only be done by searching the filesystem again, either at the time you want the tags or periodically in the background to build an index.

(Even trying to monitor filesystem events won't work in general, as there's no way to know when a program creates a whole new copy of a file and its NTFS metadata somewhere else. Filesystem monitoring would also miss changes made when the monitoring software wasn't running, and is also fairly unreliable in Windows generally, unfortunately.)

(Ignoring options like writing a whole new filesystem that the drive(s) could be formatted as and which would track and query metadata better while remaining compatible with existing apps/APIs. That's technically possible, but unrealistic. Microsoft tried doing that between XP and Vista but gave up when it became clear it wasn't going to work as they had hoped.)

The plugin API is published here: Download Directory Opus

  1. I realize the tech hurdles, but it could be done like this:
    "Browse by tags, from this dir".. then DO goes off and even if it takes minutes to traverse and compile a browsable tree thats fine. Sure it would be slow at first, but compared to the time that a user would have to suffer to work around this is far far longer.

It could be static - ie dont need to watch for file changes etc. Instead have a refresh option.

WinFS failure was more complex than that, I was working at Microsoft at the time and remember it well.

  1. What I'd really like is hot keys on the video preview so I can select a folder and use key to scan videos and update their data. With hot keys for next video etc.. this would allow fast sorting of videos.

And the ability to select only specific metadata fields to be displayed - that is I only need 5 or so, would be great if I could hide (with a quick show all option in case) meta data fields to lower the noise ratio.

  1. Thanks for the SDK. Has anyone made plugins using C# or Delphi to save me from having to translate .h files manually?