* Added integrated and standalone DGTweak() filter. HBD is supported.
Refer to the DGDecodeNV manual for details.
* Fixed a rare case of failure to create the video decoder. AYColumbia
* Updated the DGDecodeNV manual.
Need to look at Retinex also. https://github.com/Asd-g/AviSynth-Retinex Here's what I'm talking about regarding nonlinear curves: https://epicedits.com/2010/02/12/nonlinear-curve-adjustments-and-histograms/ We could have a series of selectable standard curves scaled between selectable input_high and...
Just brainstorming ... Regarding AutoLevels(), it uses histograms only to determine the input_low and input_high values to be used for linear contrast stretching. In fact, it borrows the Avisynth Levels() code to make the actual transformation. There is no histogram equalization or other method (suc...
Referring to AutoLevels(), some issues to be aware of from johnmeyer at doom9: 1. Scenes that are naturally supposed to be dark, like sunsets, get gained up too much. 2. Bright objects, like someone walking directly in front of the video light on a camera-mounted light, cause the main video to go pi...
Some initial thoughts, first regarding levels, not color balance. Obviously, judging by so many posts and threads about this everywhere, levels correction is an important and sought-after function. Some factors/features with examples: * contrast stretching (Avisynth Levels()) * contrast stretching w...
So guys, we're gonna need some form of auto levels and some form of auto color (white balance). Let's start with levels. Since the AutoLevels() plugin appears to be abandoned (maybe because the author hadn't the skills or motivation to implement HBD and multiple instantiation), what do you think of ...
The standalone CUDA version of DGTweak() is working in 8-bits. Next going to add 16-bit and then integrate it into the DGSource() CUDASynth framework. After all that, some form of white balance functionality.
I did some basic testing with just timing how long things take to play in VirtualDub. Script 1: Decode before and after, assumefps 5000 for after, loop 20 times. Time to play: 48 seconds import vapoursynth as vs from vapoursynth import core core.std.LoadPlugin(r'D:\Don\Programming\C++\DGDecNV\DGDeco...
Well, sheep are mentioned in the link. As are squirrels... cough ;) https://www.newsweek.com/21-animals-that-are-way-smarter-you-thought-1571299 Bullwinkle will not be happy. @ thechaoscoder I concur in your analysis, for which thank you. For stack we have two frame copies into a composite frame.
I converted the bat file to a simple VPY script that I can open in VirtualDub2. I duplicated the green screen. Investigating... import vapoursynth as vs from vapoursynth import core core.std.LoadPlugin(r'D:\Don\Programming\C++\DGDecNV\DGDecodeNV\x64\Release\DGDecodeNV.dll') before_video = core.dgdec...
That is great news, thank you! Honestly, I didn't think that would fix it, but I thought let's have a go and see. DGIndexNV was creating a CUDA stream other than stream 0 and then never using it. That was a leftover from some very early code where I was playing around with CUDA streams. Theoreticall...
I fired up my 1080 Ti machine with latest DGIndexNV and latest NV driver and everything is fine with your sample. Also, there have been quite a few downloads of your sample but no-one reports seeing the same problem. I'm kind of stuck right now unless your memory analysis turns up something.
@hydra3333 First I want to fix whatever green screen stuff you get. Tell me how to reproduce that in the simplest way possible. Regarding FPS stuff, how are you measuring fps? Is this for your full transcode pipeline or just simple decoding? While I appreciate the detailed report, it's very hard to ...
I don't see anything in the create params. But I just noticed you have error 2 on the failure, which is not enough memory. Can you please open GPU-Z Sensors tab and monitor Memory Used? What is its value when this failure occurs? What is the amount of memory on the card? Meanwhile, I am firing up my...