Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
5th January 2017, 11:31 | #242 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
maybe in the future I will see what I can do here, anyway, -Vit- didn't make this (lsbd) or even the internal dither of dfttest, so I will make the change not Default if I do it
__________________
See My Avisynth Stuff |
5th January 2017, 11:33 | #243 | Link |
Registered User
Join Date: Nov 2016
Posts: 24
|
er what ErazorTT? if lsbd=false than it gets passed as dfttest(lsb=false) and makes dfttest dither to 8 bit internally. whereas dither= should be the number of the dither IF dithering is used internally. am i way off on this?
|
7th January 2017, 11:28 | #244 | Link |
Registered User
Join Date: Mar 2003
Location: Germany
Posts: 215
|
I tested that, and no, thats no the case. If lsbd=false than no dithering is done. This can be very clearly seen looking at the chroma planes only with UToY8() or VToY8(). There is a very clear banding going on if lsbd=false. To resolve that dither must be 1. And my point is, that this is much faster than using ditherpost.
Last edited by ErazorTT; 7th January 2017 at 11:37. |
9th January 2017, 16:25 | #246 | Link | ||
Registered User
Join Date: Dec 2003
Posts: 155
|
Quote:
Quote:
A few odd things that I need to fix in that log. One thing is that I had to replace avisynth.dll in both system32 and syswow64 with 32-bit MT-dll to make it load at all. Next question: What are the current recommended filter versions for use with QTGMC, if the plugin pack is outdated? Last edited by tebasuna51; 21st April 2017 at 12:48. Reason: code -> quote |
||
9th January 2017, 16:32 | #247 | Link | |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,782
|
Quote:
Please do not try to access system directories using a 32-bit file manager on a 64-bit Windows. Windows will hide the content of the 64-bit system directory from 32-bit applications. I am not sure about the listed error messages; but you seem to have mixed 64-bit and 32-bit DLLs in the same AviSynth plugin autoload directory. No surprise there are issues. Please take some time to scan this thread backwards; Groucho2004 listed a set of recommended plugins, and this list has been linked a few time since. It will certainly contain the term "RgTools" (search this thread for it). Last edited by LigH; 9th January 2017 at 16:37. |
|
9th January 2017, 16:35 | #248 | Link | ||
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
Quote:
1. Uninstall Avisynth, delete avisynth.dll and devil.dll from system32 and syswow64, delete the Avisynth directory in "Program Files (x86)". 2. Use the AVS+ installer from here 3. Add your plugins Once this is working (AVSMeter doesn't report errors), start updating to the latest AVS+ build. Quote:
__________________
Groucho's Avisynth Stuff Last edited by Groucho2004; 14th January 2017 at 13:12. |
||
11th January 2017, 20:17 | #249 | Link | |
Registered User
Join Date: Nov 2016
Posts: 24
|
Quote:
dither= "Controls whether dithering is performed when converting from float to unsigned char for output. Internally dfttest works on floating point values. For output the result must be quantized back to unsigned char values. Prior to v1.8 this was always done by simply rounding. " so I read that as meaning from float to 16bit regardless of lsb setting, if thats the case I would think running the following code with lsbd=false would allow dfttest to dither to 8 bit without the dithering issue you described Code:
dnWindow = (NoiseProcess == 0) ? NOP() : \ (Denoiser == "dfttest") ? noiseWindow.dfttest( Y=true, U=ChromaNoise, V=ChromaNoise, sigma=Sigma*4, tbsize=noiseTD, threads=FftThreads, lsb=lsbd, dither=1) : \ (Denoiser == "KNLMeansCL") ? noiseWindow.SMDegrain_KNLMeansCL(Chroma=ChromaNoise, lsb=lsbd, a=2, d=NoiseTR, h=Sigma, device_type="GPU" ) : \ noiseWindow.FFT3DFilter( plane=(ChromaNoise ? 4 : 0), sigma=Sigma, bt=noiseTD, ncpu=FftThreads ) dnwindow = (Denoiser == "KNLMeansCL" || Denoiser == "dfttest") && (NoiseProcess != 0) && lsbd ? dnWindow.ditherpost(mode=6, U=ChromaNoise?3:2, V=ChromaNoise?3:2, slice=false) : dnWindow dnwindow = (Denoiser == "KNLMeansCL" || Denoiser == "dfttest") && (NoiseProcess != 0) && yuy2 ? dnWindow.ConvertToYUY2() : dnWindow Last edited by PirateIce; 12th January 2017 at 00:42. Reason: removed extra code snippets, and rephrased a bit, lack of sleep... |
|
12th January 2017, 05:31 | #250 | Link | |
Registered User
Join Date: Nov 2016
Posts: 24
|
So, I still think the code just needs the addition of dither=1 as I wrote above, and that internally dithering is what happens when you set lsbd=false, IF you add dither=1 to the code, otherwise it is just quantized to 8 bit.
The part about dither=1 dithering something internally to 16bit i think was gibberish though, sorry ><, I believe it has no effect if lsb=true, but defaults to rounding if not set to 1 even if lsb=false. And the other part of the edit from ErazorTT seems to just remove the ability to use lsbd=true and should have no effect from what I can tell if lsbd=false. Im refering to the following: Quote:
|
|
12th January 2017, 10:49 | #251 | Link | |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
Quote:
__________________
See My Avisynth Stuff |
|
13th January 2017, 01:46 | #252 | Link |
Registered User
Join Date: Nov 2016
Posts: 24
|
ah so it IS a dither that occurs BEFORE the 8 bit conversion, as in float to 16bit Im thinking. In that case it still seems like the effect of dither=1 would still be prefered over rounding with either lsb=true or lsb=false and doesnt need to change in either case.
Last edited by PirateIce; 13th January 2017 at 02:18. |
14th January 2017, 01:22 | #253 | Link | |
Registered User
Join Date: Mar 2003
Location: Germany
Posts: 215
|
Quote:
Code:
..., lsb=lsbd, dither=lsbd ? 0 : 1) Last edited by ErazorTT; 14th January 2017 at 11:54. |
|
22nd January 2017, 12:32 | #255 | Link |
Registered User
Join Date: Nov 2016
Posts: 24
|
Well just to summarize for anyone else, these following changes should improve output when using dfftest and lsbd=false by using the basic dither from float, you can increase the value of the dither to further combat source banding, for example replace dither=lsbd ? 0 : 1 with dither=lsbd ? 0 : 9. All changes at end of first line just added the following lines to clarify with previous suggestions, they are unchanged.
if you are on the latest version of QTGMC 3.352, starting at line 559: Code:
(Denoiser == "dfttest") ? noiseWindow.dfttest( Y=true, U=ChromaNoise, V=ChromaNoise, sigma=Sigma*4, tbsize=noiseTD, threads=FftThreads, lsb=lsbd, dither=lsbd ? 0 : 1) : \ (Denoiser == "KNLMeansCL") ? noiseWindow.SMDegrain_KNLMeansCL(Chroma=ChromaNoise, lsb=lsbd, a=2, d=NoiseTR, h=Sigma, device_type="GPU" ) : \ noiseWindow.FFT3DFilter( plane=(ChromaNoise ? 4 : 0), sigma=Sigma, bt=noiseTD, ncpu=FftThreads ) dnwindow = (Denoiser == "KNLMeansCL" || Denoiser == "dfttest") && (NoiseProcess != 0) && lsbd ? dnWindow.ditherpost(mode=6, U=ChromaNoise?3:2, V=ChromaNoise?3:2, slice=false) : dnWindow dnwindow = (Denoiser == "KNLMeansCL" || Denoiser == "dfttest") && (NoiseProcess != 0) && yuy2 ? dnWindow.ConvertToYUY2() : dnWindow Last edited by PirateIce; 22nd January 2017 at 12:52. Reason: had line 558 in there |
29th January 2017, 19:20 | #258 | Link | |
Registered User
Join Date: Mar 2003
Location: Germany
Posts: 215
|
Quote:
https://github.com/jpsdr/NNEDI3/releases |
|
29th January 2017, 21:25 | #259 | Link | |
Registered User
Join Date: Mar 2016
Posts: 160
|
Quote:
__________________
I'm infected with poor sources. |
|
|
|