Don’t you just sigh when you want to use a LUT out of the 20 or more that you have and you have to go through each one individually to find the one with the effect that you are looking for?
Then sigh no longer. I have created a LUT-3D (.cube file) Viewer that you can feed an image into along with all thos LUTs and will give you a preview of how the image wood look with each LUT applied.
For Shotcut: just export a frame from a typical scene in your video as a PNG or JPG, feed that into the viewer, size it (if necessary), feed in the LUTs (.cube files) and hey presto, the previews appear. When you decide which one you like just hover your cursor over it and the name of the .cube file appears,
I was fed up with going through each one at a time. I downloaded a viewer from the internet, it was written in Python and Qt, had almost 150 files spread over 15 folders, only ran on Windows and took forever to generate each preview. Mine is just 440 lines of code, runs in (almost) any browser, on any system and works considerably faster, so I thought I’d make it available for the community.
I have this crazy idea of a display-LUTs-in-a-single-column option.
Some LUTs are very subtle so when scrolling up and down, it would make it possible to compare each of the LUTs side by side with the original image.
What do you think?
I’ve been using the LUT viewer quite a lot yesterday, and if you don’t mind, I came up with a couple of improvement suggestions.
But first, you need to know that I have more than a few LUTs. Around 600 or 700 maybe? At one point, I downloaded every LUTs pack I could find. This is way more LUTs than I will ever need, but now that I have them, I hate the idea of deleting even a small part of my collection.
Call me NUTs, but I will NOT make a CUT in my LUTs
So, to sum up, I have a ton of LUTs sorted in different folders and some folders contains up to 50 LUTs.
With that in mind, here are my suggestions:
A way to clear the loaded LUTs.
With LUTs already loaded, when you click this button the new LUTs are added to those already in the LUT Viewer.
That’s useful in some cases, but sometimes, I’d prefer to clear the LUTs before loading a new bunch. I know you can clear them by reloading the browser page. But that also deletes the imported image. So you need to go back to the image folder, import the image again and then go to another folder to select the new LUTs. So, I don’t know. Maybe a *Clear LUT(s)" button?
A way to replace the image currently in use, without loosing the loaded LUTs.
I think that would be useful in some occasions.
Remove the text animation when displaying the name of the LUT.
If I have many LUTs loaded and I scroll Up or Down, depending on where the mouse cursor is located, the display of the LUT names can’t keep up.
Even if you don’t use those suggestions, the LUT Viewer will still be an invaluable tool and I thank you again for giving it to us
No problem. My wife has gone back to the UK tp see my daughters an grandchildren, so I have quite a bit of spare time (after golf), so I’ll look at providing these new features. I’ll update the post when they are ready.
Your wish is my command oh master, says the genie of the lamp.
I have put a new improved version of the LUT viewer up on the website and updated the description at Resources for Shotcut.
You can now change the image and the LUT displays will change to reflect the new image. You can clear all the LUTs (you will be asked to confirm this action). You can add more LUTs to be previewed. To see the name of a LUT you now need to click (no longer hover) on the LUT image. You can delete the ribbon showing the name by clicking on its “close” button (a red ‘X’).
Don’t forget, you can copy the source to a local (.html) file and run it as an app on your system without needing to have an internet connection.
My application is designed to give a quick overview of what an image would look like when a selection of LUTs are applied to it. It is a reasonable representation, but e,g, it uses Bi-Linear interpolation, not Bi-Cubic, so it does not strictly conform to the .cube “standard” (though the difference is mostly indistinguishable).
It works in RGB-space with each component ranging from 0 to 1023. Note that .cube files can specify the range over which the LUT applies by directives (DOMAIN_MIN & DOMAIN_MAX), but my app currently ignores these, as these directives are rarely used, but I do plan to remedy this.
If you are talking about applying the LUTs in Shotcut (and not my viewer app), then my understanding, from a post @brian wrote:
Most (all?) NLE color grading workflows operate in the RGB space.
Conversion from YUV to RGB is not mathematically lossless because not all YUV values can be mapped to the RGB clolor space. But video images that come from a camera originated in RGB because camera sensors are RGB. So unless your source material originated from a non-RGB source and used YUV values that don’t map to the RGB colorspace, you shouldn’t have any pixel values that get grossly modified. Any loss in the conversion should be limited to rounding errors of a single bit.
For Shotcut, we aspire to limit the pixel errors to one bit.
OK I’ve put a new version up on the website that you can download (Use View Page Source and copy to a ,html file) and then use offline. I had to include a minified version of jQuery and a data URL pf the color-cube rather than the PNG file.