-
-
Notifications
You must be signed in to change notification settings - Fork 6
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
UHD mode causing encoding failure. #4
Comments
TL;DR - It's probably never worth using TTA. UHD is broken. TTA is some kind of undocumented filtering that's normally done (on GPU) by:
Some variants have a CPU implementation as well, and I'm not in the mood to decipher it, the pointer math would be far easier to read in assembly language. Those have 3 nested for loops; color channel, then row, then column. The inner two loops each set their own set of 4 float pointers which are then used to construct a final value in some other location, because sure, why not store the colors in planar format like nobody has done since the 80s and specialized graphics file formats. This particular repo randomly decides to +1, -1, -1, +1 the first 4 values it uses to calculate the pixel, while realsr does +1, +1, -1, -1. I'm not sure if these are in any order related to their position because of the pointer mess so I won't attempt to come up with whatever convolution filter that is, but if they're in rough order this one produces an artifact-inducing blur where the other is a very slight unsharp mask type thing that seems to thin lines. I don't know why UHD is doing that for you. I looked at the source for that, too. The command line processor sets a variable that's never used by anything again after parsing it, so it does nothing... that would be the expected behavior of using it. :D |
Simply put, having UHD mode active causes two failing attempts at encoding (I think, might be decoding) the first image, followed by the third image being a successful attempt at the first image. Unfortunately, this means the first working frame is named the third in the series (from 0 of course). And in my experience, this option also just reduces stability and consistency of success in general. Perhaps delete an unsuccessful file (or put it in the working location and move if/when it's saved properly) and/or make it more clear that it's not skipping frames due to failing processing other ones?
Also, what's this mode supposed to actually do anyway? Just wondering. And what's TTA?
Thanks in advance, and great work.
The text was updated successfully, but these errors were encountered: