About relations and updating them (visual proxy context)

Started by Carlo Didier, August 12, 2019, 10:11:36 AM

Previous topic - Next topic

Carlo Didier

I didn't want to hijack any of the related threads, so here my question:

Mario repeatedly said that it would be complicated/impossible/highly resource heavy for iMatch to automatically update relationships in the context of visual proxies if the visual proxy is changed, but I can't understand the argumentation.

Let's say we have files A.raw and A_proxy.jpg in two completely seperate folders, both indexed by iMatch and a relation rule giving that A_proxy.jpg is the visual proxy for A.raw.
Also, by whatever mechanism, iMatch already knows that A_proxy.jpg is the visual proxy for A.raw.
Now, in order for iMatch to automatically update the display of A.raw when A_proxy.jpg changes, Mario says it has to be in the same folder or a subfolder under the one where A.raw is located.

BUT: iMatch should detect (and actually does) the change in A_proxy.jpg wherever it is and as it already knows that it is the visual proxy for A.raw, then it shouldn't matter where A_proxy.jpg is. The fact that it detects that A_proxy.jpg has changed and that it knows that A_proxy is the visual proxy for A.raw is all it needs to update the display for A.raw.

So, why doesn't it work?

Mario

When you modify the proxy (e.g. in an editor) IMatch will automatically update the file window.

QuoteNow, in order for iMatch to automatically update the display of A.raw when A_proxy.jpg changes, Mario says it has to be in the same folder or a subfolder under the one where A.raw is located.

This is not correct.

In order to detect new file relations (e.g. you adding a proxy, not updating an existing proxy) IMatch would have to scan the entire database (all folders) to find all potential masters for the new file which has just arrived and which might be a version of one of the other files in the database. And when IMatch rescans a folder and finds 1000 new files, it would have to search the entire database 1000 times to find masters for the new files. This would be impossible. Consider a typical database with 100,000 to 200,000 files...

Hence: IMatch detects all masters and versions when you rescan the folder which contains the master(s).
If you keep your proxies/versions in the same folder as the master, or in folders below the master folder, everything works automatically.
If you have to keep your proxy images in a totally unrelated folder hierarchy, you will have to rescan the master folders manually to detect new versions.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Carlo Didier

Quote from: Mario on August 12, 2019, 10:26:26 AM
If you have to keep your proxy images in a totally unrelated folder hierarchy, you will have to rescan the master folders manually to detect new versions.
That's the part which I don't understand. iMatch detects that the proxy image has changed und updates it, but not the display for the master, although it must know that the changed file is the visual proxy for that master.

Mario

Under which conditions does this fail? Where are your proxies located?

When i change a proxy image, IMatch picks up the change after a few seconds and rescans the folder.
After the proxy has been ingested, the visual representation of the master also changes. This is the correct behavior.

I've even tried with proxy versions stored on another hard disk (masters on C: proxies on drive D:).
When I change a proxy image in Photoshop, the master in IMatch changes to reflect the changes in the proxy as soon as has been re-imported by IMatch).
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook