Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Thumbnails of photos with Virtual Files #3407

Closed
3 tasks done
adripo opened this issue Jun 5, 2021 · 41 comments · Fixed by #4713
Closed
3 tasks done

Thumbnails of photos with Virtual Files #3407

adripo opened this issue Jun 5, 2021 · 41 comments · Fixed by #4713
Assignees
Labels
confirmed bug approved by the team enhancement enhancement of a already implemented feature/code feature: 💽 virtual filesystem

Comments

@adripo
Copy link

adripo commented Jun 5, 2021

  • research on windows API how to store those thumbnails
  • actual implementation
  • review

How to use GitHub

  • Please use the 👍 reaction to show that you want to have the same feature implemented.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Feature description

I am checking out the new feature released with version 3.2 for Virtual Drive and it works quite well.
However, there is one thing that is missing and makes the drive concept useless.
I'm talking about thumbnails for images. I have a lot of images shared on nextcloud and without a thumbnail I have no idea what I'm looking for so I have to download the whole folder every time I need to search for some particular photos. This is the same behavior as the old synchronization method.
I would be very grateful if you could take into account the addition of this feature in future releases.
Thank you!

@adripo adripo added the enhancement enhancement of a already implemented feature/code label Jun 5, 2021
@JMLatGitHub
Copy link

JMLatGitHub commented Jun 6, 2021

The Virtual Drive feature itself is really great, very useful and highly appreciated, but I strongly second this requirement for thumbnails support: if the filenames aren't descriptive, you are actually forced to either download them or identify them directly on the server. This appears really suboptimal and cumbersome to me. This applies to images and videos.

@jeffreybrown93
Copy link

Jumping in first to say thank you to everyone who worked on the new virtual files client as it's working great in my testing so far but also to second above comment. I store predominantly photos on my NextCloud instance and unfortunately have more files than can fit on my laptop SSD. Without seeing thumbnails all images in a folder need to be marked as "always keep on this device" to find anything.

Some additional conversation here - https://help.nextcloud.com/t/feature-request-virtual-files-image-thumbnails/117670/2

@FlexW FlexW added the confirmed bug approved by the team label Jun 9, 2021
@FlexW
Copy link

FlexW commented Jun 9, 2021

That would be a very useful feature. Help on implementing this would be welcome.

@alexanderdd
Copy link

This seems to explain how to implement this feature on Windows https://docs.microsoft.com/en-us/windows/win32/cfapi/build-a-cloud-file-sync-engine

(From the Nextcloud forum as linked above)

@Archangel001
Copy link

It looks nice as a feature, OneDrive and iCloud for Windows have this feature and it is very convenient. I have tons of photos on my Nextcloud instance.

@castillo92
Copy link
Contributor

This improvement could be very good

@godfuture
Copy link

godfuture commented Aug 2, 2021

I think what is requested in this ticket is more a bug fix than a feature. I have this problem as well. Files that were copied into the folder and uploaded do show a thumbnail. The rest does not. This was not the case before virtual drive.

If the user wants to have thumbnails, he could basically download everything (this is the opposite of what virtual drive was made for) or he can open the browser and visit the nextcloud instance online.

@crazytok
Copy link

I would also love to see this feature as all I use nextcloud for is Photo storage/backup!

@robermad1986
Copy link

Hello everyone. I am happy to see this implementation iscurrently going on.
I would just like to point out that this, more than a feature, a bug. Let me explain myself; since the pretended integration of Nextcloud with Windows File Explorer is documented by Microsoft but it hasn't been implemented, the integration with File Explorer is incomplete, not because it wasn't possible, but because the developing team never caught up on this when they designed the client.
This, would definitely give this fix a bigger priority on the dev queue.

@leapyear1969
Copy link

leapyear1969 commented Nov 1, 2021

👍 voted for this feature! i have tons of photos need to check via thumbnails, it will be great easier for me if bring this feature online.

@dawidmachon
Copy link

👍 For now Virtual Files in albums are pretty worthless. This idea is must have for current standard in UI.

@robermad1986
Copy link

Hey everyone. Here's my solution for now until the thumbnail view is integrated in NextCloud client app.

To get integration of nextcloud files and folders I connected File Explorer via WebDAV same way as I map a network drive. All documentation I found is in this link:https://docs.nextcloud.com/server/22/user_manual/en/files/access_webdav.html
I found there's a limit for files bigger than 50MB (Windows limitation that shouldn't occur in other Systrems.

When I try to use any file over that size comes the error: 0x800700DF this is known by Microsoft and the solution is provided a bit down in the same link.

Windows limits the maximum size a file transferred from or to a WebDAV share may have. You can increase the value FileSizeLimitInBytes in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters by clicking on Modify.

To increase the limit to the maximum value of 4GB, select Decimal, enter a value of 4294967295, and reboot Windows or restart the WebClient service.

In my particular case restarting WebClient didn't solve but restarting the computer did solve.

Now I can access my files from Nextcloud in my personal computer without sync'ing and I can see the thumbnails of all my files and open, download, share them with Windows File Explorer Integration.

Hope this is useful for everyone until we can have this feature in the Official Client/APP

@AndyScherzinger AndyScherzinger changed the title Thumbnails of photos with Virtual Drive Thumbnails of photos with Virtual File System Nov 11, 2021
@aze-dzn
Copy link

aze-dzn commented Nov 12, 2021

Would love to see that feature asap.

@watermelonpizza
Copy link

This is the one thing that is missing from the desktop client so badly. OneDrive client has it and it's amazing. I really hope someone can implement this soon. <3 I don't have the storage space to be able to sync all my files just for thumbnails.

@ados8
Copy link

ados8 commented Feb 27, 2022

I have done my first two Nextcloud projects, mine and a small business.
I really need this feature before I can consider it an option for media/photography platforms.
It completely renders the virtual file features useless if you have to download them.
I know the web works but then you have to upload them, please implement this.

@PhilippSchlesinger
Copy link

PhilippSchlesinger commented Mar 10, 2022

There is a Windows sample application available implementing the thumbnail provider feature in cfapi:
https://github.com/microsoft/Windows-classic-samples/blob/main/Samples/CloudMirror/CloudMirror/ThumbnailProvider.cpp

for the activity view, the analogous thumbnail feature seems to get implemented in #4189

@ados8
Copy link

ados8 commented Mar 10, 2022

Thanks NextCloud for approving this.
Is there any chance we can get this feature fast tracked.
Apart from bugs, I think this feature is fundamentally required to make use of the virtual file system.
Since the file system has been implemented some time ago, really need this. If there are betas sign me up!

@fskaeh
Copy link

fskaeh commented May 5, 2022

Just coming to +1 this. This is the one missing feature that is keeping me on Mountain Duck for the time being. Generally speaking, having the placeholder files look and feel like regular files, with thumbnails/metadata and without a separate .nextcloud file extension would be great.
For MacOS, this could (probably should) be done through the FileProvider API: https://developer.apple.com/documentation/fileprovider, which is what other cloud services use to implement virtual files and smart sync (OneDrive, Dropbox, etc).

@JojoBr0
Copy link

JojoBr0 commented May 25, 2022

+1 to see this feature implemented

@allexzander allexzander self-assigned this Jun 8, 2022
@allexzander allexzander changed the title Thumbnails of photos with Virtual File System Thumbnails of photos with Virtual Files Jun 14, 2022
@PedroLealJunior
Copy link

I'll love this feature.

@mkselim
Copy link

mkselim commented Jun 30, 2022

This is an important feature that would make the ones using nextcloud as their Photos data storage really happy.

I can't wait to see it implemented.

@Der-Zohan
Copy link

Would love to see this feature :)

@allexzander allexzander linked a pull request Jul 8, 2022 that will close this issue
@PhilippSchlesinger
Copy link

@allexzander Great to see your heavy work on this feature in PR #4713
The resulting feature will make a lot of people happy including me!

@adripo
Copy link
Author

adripo commented Jul 31, 2022

I am very happy to see this issue closed!
Thank you for the hard work done to enable this feature! ❤️
I'm looking forward to test it in the next releases.

@spacehitchhiker42
Copy link

Has this made it into a release?

@mgallien
Copy link
Collaborator

mgallien commented Sep 7, 2022

Has this made it into a release?

very soon will be in a public release
you can test our latest 3.6.0 RC2 in the meantime
https://github.com/nextcloud/desktop/releases/tag/v3.6.0-rc2

@spacehitchhiker42
Copy link

Thanks. Looks good so far!

@ados8
Copy link

ados8 commented Sep 10, 2022

Excellent work team!!
Testing on a few Nextcloud servers has been terrific.
Thumbnails load without having to download the image, there are no confusing hidden files for users and forcing online mode doesn't affect the thumbnails.
Another reason I promote this platform over Dropbox or OneDrive, shudders at the thought.

@opi1994
Copy link

opi1994 commented Sep 15, 2022

Thank you for implementing this feature, it works like a charm. This feature improves the usability of Nextcloud so much.
I can now manage my pictures without download the whole folder.

@snowwolf3388
Copy link

Amazing! Can I bump this same feature for MacOS? #4335

@somedude305
Copy link

Has this made it into a release?

very soon will be in a public release you can test our latest 3.6.0 RC2 in the meantime https://github.com/nextcloud/desktop/releases/tag/v3.6.0-rc2

Awesome!! Thank you guys

@somedude305
Copy link

Pictures are working great. But still no video thumbnails... :(

@opi1994
Copy link

opi1994 commented Oct 3, 2022

Pictures are working great. But still no video thumbnails... :(

Do you have video thumbnails in your nextcloud webinterface? If not, this is a problem with your nextcloud server, not with the windows client.
Make sure ffmpeg ist installed on your server/docker

@allexzander
Copy link
Contributor

@somedude305 Thumbnails for videos are not enabled by default, as @opi1994 suggested, you need to configure your server.

@somedude305
Copy link

somedude305 commented Oct 3, 2022

Pictures are working great. But still no video thumbnails... :(

Do you have video thumbnails in your nextcloud webinterface? If not, this is a problem with your nextcloud server, not with the windows client. Make sure ffmpeg ist installed on your server/docker

Ohh I see. Unfortunately I'm using a shared webhost, not a VPS, so I dont have server access and cant install ffmpeg and such, so looks like I'll have to stick this one out

@tomasz-lasko
Copy link

hello, can a user (for desktop client on Windows with virtual file system) mark a whole folder tree to preload thumbnails? So that thumbnails begin loading immediately, and each time a new subfolder appears there (sync'ed from server) they are loaded to. This is in order not to wait for loading the thumbnails each time when opening a new folder full of photos (i.e. "new folder" means a folder that hasn't been open before).

Our users have hundreds or thousands of photo directories on Nextcloud, and new photo directories are coming each day, and their job is to very quickly browse through all these folders (old and new folders), so that they can choose photos to be published. So, for them, it is unacceptable to wait for thumbnails to load each time when a new folder is opened. In other words, for them this is the same as they didn't have the thumbnail feature at all.

So is there an option, a command or something to mark a folder tree to always (pre)download thumbnails immediately (when using virtual file system)? This would be the same as the existing option of (pre)downloading whole directory tree under virtual filesystem. Well... I'm not sure if the opposite option of "freeing space" is neccessary for thumbnails, as it is for files/directories. And I don't think it would put extreme load on the server, because now the users are forced not to use the virtual file system but classic syncing in order load all thousands of images to their desktops (so that they have thumbnails immediately), so that is even worse for the server (I guess).

@allexzander
Copy link
Contributor

hello, can a user (for desktop client on Windows with virtual file system) mark a whole folder tree to preload thumbnails? So that thumbnails begin loading immediately, and each time a new subfolder appears there (sync'ed from server) they are loaded to. This is in order not to wait for loading the thumbnails each time when opening a new folder full of photos (i.e. "new folder" means a folder that hasn't been open before).

Our users have hundreds or thousands of photo directories on Nextcloud, and new photo directories are coming each day, and their job is to very quickly browse through all these folders (old and new folders), so that they can choose photos to be published. So, for them, it is unacceptable to wait for thumbnails to load each time when a new folder is opened. In other words, for them this is the same as they didn't have the thumbnail feature at all.

So is there an option, a command or something to mark a folder tree to always (pre)download thumbnails immediately (when using virtual file system)? This would be the same as the existing option of (pre)downloading whole directory tree under virtual filesystem. Well... I'm not sure if the opposite option of "freeing space" is neccessary for thumbnails, as it is for files/directories. And I don't think it would put extreme load on the server, because now the users are forced not to use the virtual file system but classic syncing in order load all thousands of images to their desktops (so that they have thumbnails immediately), so that is even worse for the server (I guess).

The desktop client has no control over when thumbnail loading starts. Windows Explorer triggers it when necessary.
There is no known way to change that. A thumbnail gets requested by Windows Explorer for each Shell Item (an image file) separately.

You can mark a folder as "Always available locally" which will be identical to not using VFS for that folder.

In any case, you'd still need to wait till the preview gets generated on the server (as it gets generated and cached during the first request) so it takes time if there are many files. Still, fetching previews is generally faster than downloading all the files, as preview size is quite small (typically around 1MB), while a file can be 5 or 10 MB or more, depending on the format, etc.

One way to make previews show up faster is to allow fetching them for multiple files with a single /index.php/core/preview request. But this is not supported on the server. And I don't know if they have plans on implementing that in the foreseeable future.

@tomasz-lasko
Copy link

tomasz-lasko commented Jan 24, 2023

Ok thank you for clearing that out. So most of all now I know it is not implemented.

But anyway it would be good to tell Nextcloud Desktop Client to always download the thumbnails anyway for a particular directory tree (and make the server generate/push each thumbnail), before even Explorer asks for it (well that is now with pre-downloading the files/folders, before Explorer or any app asks for them).

@PhilippSchlesinger
Copy link

But anyway it would be good to tell Nextcloud Desktop Client to always download the thumbnails anyway for a particular directory tree (and make the server generate/push each thumbnail), before even Explorer asks for it (well that is now with pre-downloading the files/folders, before Explorer or any app asks for them).

Maybe it would be worth trying the speed to download previews while accessing a folder via Explorer which the server already holds pre-generated (e. g previously
triggered via another client) thumbnails for.

@tomasz-lasko
Copy link

tomasz-lasko commented Jan 26, 2023

Maybe it would be worth trying the speed to download previews while accessing a folder via Explorer which the server already holds pre-generated (e. g previously triggered via another client) thumbnails for.

Comparing to the solution I proposed, I don't know if your solution brings less or more complexity and demand spikes.

Well I am just reporting a use case of browsing many folders, and the most wanted is that thumbnails were already there, otherwise they user can wait max several seconds for each 50-100 thumbnails to load. So we shouldn't be affected if the server is at the moment loaded or not.

My solution proposal would be to (for a chosen directory tree) pre-download thumbnails in background, it would be nice if it could be implemented in low priority (both on client and server). But I am not a Nextcloud developer, so it's hard for me to judge if it is easily implementable. Anyway, my proposed solution in theory: sounds simple & perhaps elegant (relatively simple design pattern) and at the same time, what's most important, providing thumbnails immediately when Explorer requests them.

You can mark a folder as "Always available locally" which will be identical to not using VFS for that folder.

Of course the point of my suggested solution is that you do not download 200-800 GB of photos to your harddrive, because most of them is not needed and we don't want to fill up the hard drive. Instead, the user marks "Always available locally" only to a subset of only mostly used folders. But the majority of folders should have thumbnails downloaded, so the user should mark them, in order to quickly browse the folders. And these thumbnails local cache would not fill up whole drive.

I also don't know if use case of my users is representative to world population, but if I were to need thumbnails in very many folders, I think I too couldn't wait for them to load each time.

@PhilippSchlesinger
Copy link

Comparing to the solution I proposed, I don't know if your solution brings less or more complexity and demand spikes.

I just proposed to empirically find out in the first place if the thumbnail generation time or the loading time is the part that takes most of the time.
If one finds out that a previews for a folder with pre-generated thumbnails on the server would load fast enough for your use case, a solution could be based on that information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
confirmed bug approved by the team enhancement enhancement of a already implemented feature/code feature: 💽 virtual filesystem
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.