Why are the thumbnails so slow?

I have given the thumbnails a really large cache. But yet every time i open some folder, which was previously indexed, i see the thumbnails being build one by one. Aren't they supposed to show instantly, once they are in the cache?

They would normally, unless the files look like they have changed.

Hmm, not really. I think i have even moved the cache to one of my SSDs to speed things up. At least i didn't change anything editwise. I have no explanation. Not a big deal really, but i was curious.

Can I make it so it doesn't regenerate them even if they've changed? Sounds like an odd choice for the default behavior. I imagine most people don't wanna sit and wait for several minutes just because they edited a minute little thing (that might not reflect visually in the first place). Thumbnails are there to have a rough idea of what the file is, it's better to have that quickly rather than wasting time waiting for a "precise" version.

I'm having the same problem as OP. It's just very slow. That's not to say File Explorer isn't slow, it is! But File Explorer is admittedly not that high of a bar in the first place (otherwise none of us would be here).

I've set my thumbnail cache size to as high as it went, and Opus is installed on an Nvme SSD, though some files that are being accessed are on hard drives (local). Every time I visit a folder with a lot of pictures or videos I'm staring at a wall of thumbnails for a good 5 minutes. Then it generates anywhere from 30 to 80% of the thumbnails, gets stuck, I refresh, it takes 30 more seconds to regenerate those same thumbnails (why) then proceeds to generate the rest. If I revisit the folder later we're back to square one. My plugins are all unchecked (although they used to be checked - except for movie - and things seemed the same), my settings are as follows:


Not sure what else I can do. It seems like the thumbs occupy a good chunk of memory, but:

  1. They still get regenerated all the time, and
  2. Even if they don't get regenerated, they take rather long (5-10 secs) to load. The Load all thumbnails option doesn't seem to work, because I can see things getting loaded as I'm scrolling.

Why can a little tool written by some random guy (please don't judge by the name) generate all thumbnails quickly and consistently without a hitch, store them all without a hitch and load the stored ones immediately without a hitch? That means it must be possible. Does Opus rely heavily on File Explorer for thumbnail generation? If so, you can see why it's a bad idea from the MS Community link above.

No, if a file changes then its thumbnail will be recalculated, because its contents may have changed.

If people edited an image file and the thumbnail still showed the old version, that would not be good.

1 Like

If you want faster thumbnails, I'd recommend downloading Icaros and disabling thumbnailing in Directory Opus's Movie plugin. Icaros captures better thumbnails to boot.

1 Like

Neither is sitting there waiting every time. Actually the latter is definitely worse for most people. Minutes add up to hours, hours add up to days of wasted time. At the very least, why not give an option?

Also "file change" is a vague term. If there is a visual change then sure, regenerate. But why does it need to regen on something like a filename change? Why does it need to regenerate when there are no changes at all (the date modified stays the same)?

I have all the plugins disabled, so the movie plugin cannot be the culprit. I've tried WinThumbsPreloader, but when entering the folder things still regenerate; and even if they don't regenerate, this doesn't solve the other problem of the already generated thumbnails taking forever to load.

Being reliant on File Explorer generation could be the culprit of all this, but my question about it was ignored so I can't really make definitive claims.

There is no way for software to know that the visual aspects of the file have not changed if the file has changed. I doubt you will find many programs which work the way you want.

If a file has a new name the next time you enter that folder, there's no way to know it is the same as an older file, at least in general. (Without tracking all operations done in all folders all the time (has its own drawbacks, and not really possible with removable media, network drives, etc.) or reading the file's contents (as slow as thumbnailing it).)

One thing you can do is use something which embeds thumbnails into the files and then returns those to programs (like Opus and File Explorer) when they ask for them. I think there are some video thumbnailers which work that way, but it isn't something I've looked at in detail myself.

IME, most formats do not take that long to thumbnail, so if you're finding thumbnail generation takes too long, solving that might make the question of when generation happens moot, since it should be fairly fast (unless on slow/remote media or something like that, which you may not be able to speed up that much).

1 Like

If the thumbnails come from the shell then Opus is barely involved at all. It doesn't cache those thumbnails, since the shell caches them. When and how the shell chooses to cache or (re)generate them is up to the shell, and you should see identical behavior in Opus and Explorer for those files.

But that's exactly what I'm trying to avoid. File Explorer is notoriously bad with thumbnail handling (see MS community link). It's why third party tools (like the one I linked in my first comment) that don't rely on it fare so much better in that regard. Is there a way to ignore the shell and have Opus handle everything?

One thing you can do is use something which embeds thumbnails into the files and then returns those to programs

Those seem to take forever to load. I have files with embedded thumbnails, and those are the ones I can stare at for minutes before they get loaded. I think thumbnail embedding is also limited to the mkv container, so mp4 is out of question.

IME, most formats do not take that long to thumbnail, so if you're finding thumbnail generation takes too long, solving that might make the question of when generation happens moot, since it should be fairly fast

So it gets stuck on certain formats / codecs / containers? Why can't those be skipped?

That's what happens if the Movie plugin generates your thumbnails, but you've disabled that. (I doubt it would be better than the shell, though, in terms of speed, and it can be a pain to get working at the moment in terms of which codecs it needs vs the ones Windows 10 comes with, which is something we plan to improve.)

If no native Opus plugin handles the files then Opus will fall back by asking the shell if it can generate thumbnails for them (and the shell in turn will ask the installed thumbnailers which other software has installed).

Embedded thumbnails should be almost instant, since they've already been calculated and just need to be read straight out of the file.

If they are slow, it sounds like either the embedded thumbnails aren't being used at all by the component that's handling video thumbnails, or there's something wrong with that component. (Or something else, like antivirus, is causing a huge slowdown when it opens the video files, but that'd probably also slow down playback.)

Try a different thumbnailer, e.g. Icaros.

So it gets stuck on certain formats / codecs / containers? Why can't those be skipped?

So you don't want thumbnails at all for some file types?

Ideally I want thumbnails for all files and filetypes. But it's definitely better to have 90% of thumbnails show instantly (with a missed one here and there) than have it be stuck on the 3rd file for minutes trying to resolve it and the rest not showing at all as a result.

Disabling Defender doesn't seem to speed things up.

As in, a component within Windows? Why would this be the case? Could me using an older Windows 10 version (1809) cause problems? I could see that happening looking at how, for example, PowerToys is about to drop support for any version below 1903.

If you make a process snapshot when the thumbnails are frozen we can look and see what DLLs, if any, the thumbnail threads are stuck in.

OK, it's veering off topic, I know, but why do people insist on making statements like this to justify a request for a particular behavior? For all you or I know most people might want accurate, up to date thumbnails. I'm not saying your preference is any more wrong than anybody elses, just suggesting that it's possible that "most people" might not want the same thing.

2 Likes

I don't know about those "people" you're referring to, but I'm going off of what's objectively more sensible for the average user. The average user wants to see a rough outline of images and doesn't care about minute details, because the average user isn't a creative professional who relies on extreme precision. Frankly, I don't see why even most professionals would want to do that with thumbnails.

So we have a small subset of another small subset that wants the behavior that's currently default.

I'll ask a counter question though, do you have a justification for the current default behavior that doesn't involve a niche group (subset of a subset) of people? Who would choose wasting time (and getting a precise thumbnail) over getting a quick (but less accurate) thumbnail?

So to answer your question: because sensible defaults are important, and such "requests" are often times justified.

The average user wants the thumbnail to reflect what's actually in the file.

There's also no way for software to know (without calculations that take as long as thumbnail generation) that only a "small" change was made to a file, nor that a file with a new name is the same as another file seen in the past.

We're talking about how Windows works, not how Opus works, anyway, which makes the debate somewhat moot. We can't change the way Windows caches thumbs that come via the shell.

Please send us the snapshots and we may be able to use those to tell you which components are being slow to generate movie thumbs.

1 Like

I've had the the exact issue you describe multiple times before even with the opus movie thumbnailer disabled. This issue can stem from multiple sources

First thing I would try is Icaros as that will fix a lot of windows thumbnailing issues. Make sure it's enabled for thumbnails and I'd also recommend enabling it's file handler features as well as it fixes several other bugs.

Second, if the first doesn't fix it, is to download a program called ShellexView and disable 3rd party shell extensions you may have installed. For me, resilio sync's shell extension (installed with the program) was the cause.

Last, if the above two don't work, is to fix potential issues with the window's cache. Windows has two common causes for the above issue. The first is that cache folder permissions are not set correctly. The second is that windows may be continuously deleting your cache folder, which results in thumbnails being regenerated every time. There are many many threads on these issues and plenty of help articles on how to fix them. Neither of these issues are the result of user error, just the OS seemingly at random deciding to create issues.