-
Notifications
You must be signed in to change notification settings - Fork 0
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
Strange artifacts in version compiled for macOS #4
Comments
What about with |
cpu=0 didn't help |
By the way, i test on macOS 10.14.6 Mojave. Could it be some incompatibility or maybe some missing OpenCl options in it? |
Do you get these artifacts when using the no-op LUT (attached)? |
Yes. I still see artifact when use identify LUT.
|
What about this script?
Also, does cube work in Linux? |
Also i noticed that 10 bit Grayscale gradient ramp show 8-bit like reduced bit depth if look very close. But no color artifacts. |
please specify where to add those code lines? Should i add both of them? I am not extra advanced in vapoursynth codes. |
Here is my script:
|
It is a complete script. Create an empty text document add the normal VS header
Then add the test script
|
When i open script in VS viewer i got this error: Failed to evaluate the script: Traceback (most recent call last): |
Replace "identity.cube" with the full path of identity.cube. |
Failed to evaluate the script: Traceback (most recent call last): |
In quotes... |
The test script is intended to produce a purple square, so it is working. What if you use your 601_709_PAL cube? |
I test Technical color space transfocm LUTs, 1D contrast curve only LUTs and Film emulation LUTs. The all give the same glitch. |
It sounds like the issue is unrelated to TimeCube. Maybe it is caused by one of the other lines in the original script. EDIT: I tested the full script on Windows, except I replaced the source with BlankClip, and it works. I can't fix the issue without a way to reproduce it. |
Ok, got it. Hope someone somewhere may help with test on Linux or test on another macOS version. |
In the script you pasted, the input is converted to 8-bit before it reaches TimeCube:
|
Yep, i see. Other filters don't use that transformation. Is it a mistake in script? |
TimeCube can work on any RGB format, not just RGB24, so it is an issue with the script generator. |
Ok, that make sense. I will report to Hibrid UI developer. |
Ok. Some updates:
How do you think, maybe we just need somehow in script convert limited to full range levels, before apply TimeCube and next convert range back to video/tv/limited levels? |
Do the artifacts go away if the video is full range? EDIT: Also, in case the issue is with the source filter, have you tried using ffms2 or some other source filter? |
Yes. Currently when i apply limited to full (TV to PC) range convert filter before TimeCube artifact is 100% gone. In older script version when filter was operated in 8 bit depth and i apply limited to full (TV to PC) range convert filter before TimeCube, artifact was almost gone (some glitch dots where still visible). Probably it was due not enough bit and not too precise range transform. |
Please try the latest commit, which may solve the limited range issue. |
Same artifacts with latest commit. Let's wait till tomorrow, maybe Selur will change script or something... |
Also seems like ColorMatrix filter somehow conflicts with RangeConversion filter.
|
Here is current script with applied color range filter when artifacts disappear.
|
Please share the source image. |
It is ProRes video file. But it was transcoded from highly compressed MPEG1 source, so there are just compression blocks amplified by TimeCube artifact. Any compressed image or video will look like this. |
Maybe try these example videos https://www.dropbox.com/sh/bak63hnr7mnpgbj/AAAf-rMK0LvHYTAFjPuQaaxFa?dl=0 I rendered same test patters with and without sub blacks and superwhites data in ProRes422HQ. If you want i can put video with compression blocks to same folder. |
Those artifacts looks pretty cool and artistic on high compressed source videos. Love to see a separate glitch filter with same effect :) |
I reproduced the corrupted image https://user-images.githubusercontent.com/35053925/91674740-98ac0280-eb42-11ea-824b-227d28f756da.jpg on commit d3982b2 and confirmed that it was fixed by a4cde0e. The issue is caused by incorrect handling of superwhite/black. Please do a clean build and try again. |
Yep, i use eversion a4cde0e it is named vscube now. Old and new compiled versions shared here https://www.mediafire.com/folder/wvdlnjapm1vvw#8amumhhefmoiy but i still see problem in Hybrid UI. Can you share you script to run in VS viewer without Hybrid UI? Just to make sure if problem still exists (or don't) with same basic script? I'll just change paths to to source file and to lut in script. |
I used this script:
|
Some concept idea: Maybe it is somehow related to Windows vs macOS system default "range" representation? TimeCube or Vapoursynth itself somehow passes image through some default color system that uses TV range on one OS, but PC range on other OS. As a result with same settings problem reproduced only on one system. |
Also if i just use clip = core.resize.Bicubic(clip, format=vs.RGB48) - There is no conflict with ColorMatrix filter. I can do 601 to 709 correction and have no any additional artifacts. |
Please clear out your autoload folder and explicitly load the plugins to rule out the possibility of old builds. There is no difference between OSes on color range, besides which, the resize.Bicubic line explicitly sets the range flag. |
Artifact is still there.
|
There is no artifact if i use change code line to: |
Please use manual plugin load, not autoload. |
Just curious what is the benefit to use limited data range for this filter in script? What is the real life purpose to transform input to range_in_s="limited", range_s="limited" for this plug-in? .cube LUTs works with images as well as with video so they are natively operate in RGB and in full range. |
The CUBE always operates on full range (actually 0-1 floats) internally. The issue is with converting limited-range inputs when they contain WTW/BTB information. I looked at it again and realized that the fix was incomplete. Please try commit cb4227b |
Strange artifacts in version compiled for macOS. Please see example in this discussion posts https://forum.selur.net/showthread.php?tid=1495&pid=8759#pid8759
https://forum.selur.net/showthread.php?tid=1495&pid=8774#pid8774
No problem with Windows version.
The text was updated successfully, but these errors were encountered: