Page 15 of 17

DGDenoise

Posted: Wed Feb 02, 2022 12:53 pm
by Sherman
People could smell it from miles away. Peww!

DGDenoise

Posted: Wed Feb 02, 2022 12:55 pm
by Curly
Who puts foinature in the kitchen? Is that a frog thing?

DGDenoise

Posted: Wed Feb 02, 2022 12:58 pm
by Britney
Frogs don't have kitchens, do they?

DGDenoise

Posted: Thu Feb 03, 2022 9:41 am
by Guest 2
Rocky wrote:
Wed Feb 02, 2022 12:30 pm
Nope. The low bits are filled with zeros anyway when upconverting the bit depth.
And if I feed it with UHD 10/12 bit video, it work on YUV420P16 internally with 16 bit precision, right?

DGDenoise

Posted: Thu Feb 03, 2022 9:44 am
by Guest 2
Britney wrote:
Wed Feb 02, 2022 12:58 pm
Frogs don't have kitchens, do they?
We prefer to eat raw food. Whatever it comes. Popstars too.

DGDenoise

Posted: Thu Feb 03, 2022 10:07 am
by Rocky
Guest 2 wrote:
Thu Feb 03, 2022 9:41 am
And if I feed it with UHD 10/12 bit video, it work on YUV420P16 internally with 16 bit precision, right?
Yes. of course. But I doubt you gain much by feeding it YV12 converted to YUV420P16, versus just processing in YV12.

DGDenoise

Posted: Thu Feb 03, 2022 10:09 am
by Britney
Guest 2 wrote:
Thu Feb 03, 2022 9:44 am
We prefer to eat raw food. Whatever it comes. Popstars too.
Goodness gracious, you want to eat me? No! But I do appreciate you still putting me in the star category. Maybe we can hang out.

DGDenoise

Posted: Fri Feb 04, 2022 12:28 pm
by Guest 2
Rocky wrote:
Thu Feb 03, 2022 10:07 am
But I doubt you gain much by feeding it YV12 converted to YUV420P16, versus just processing in YV12.
Well, it actually does, both in speed and size. :D

Test on extract from Eternals BD, x265 -crf 22 --preset slow.

Code: Select all

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
DGSource("F:\In\2_35 Eternals\eternals.dgi",ct=140,cb=140,cl=0,cr=0)
DGDenoise(strength=0.15, cstrength=0.15, blend=0.1, cblend=0.1, searchw=9)
encoded 4488 frames in 983.53s (4.56 fps), 1220.50 kb/s, Avg QP:25.91

Code: Select all

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
DGSource("F:\In\2_35 Eternals\eternals.dgi",ct=140,cb=140,cl=0,cr=0)
ConvertBits(16)
DGDenoise(strength=0.15, cstrength=0.15, blend=0.1, cblend=0.1, searchw=9)
fmtc_bitdepth (bits=10,dmode=8)
encoded 4488 frames in 945.80s (4.75 fps), 1185.53 kb/s, Avg QP:25.94

DGDenoise

Posted: Fri Feb 04, 2022 4:37 pm
by Rocky
You have to clear the windows cache between the two encodes. Need a special utility for that, or reboot.

DGDenoise

Posted: Sat Feb 05, 2022 3:09 am
by Boulder
It's faster because x265 works faster if the bitrate is lower.

DGDenoise

Posted: Sat Feb 05, 2022 5:30 am
by Rocky
Why is the bitrate lower?

DGDenoise

Posted: Sat Feb 05, 2022 7:49 am
by Boulder
The increased precision might cause a stronger denoising effect, or it simply stabilizes the image more and x265 is able to utilize reference frames better. It would also be interesting to know if the frame type decisions also change - I'd expect them to be different.

DGDenoise

Posted: Tue Jan 03, 2023 7:28 am
by Selur
Any plans to add DGDenoise to Vapoursynth too?

Cu Selur

DGDenoise

Posted: Tue Jan 03, 2023 10:21 am
by Rocky
If you take care of my request in the link below, I will do it.

https://www.rationalqm.us/board/viewtop ... 0a0#p16782

DGDenoise

Posted: Thu Jan 05, 2023 9:19 am
by Selur
No problem. Done.
btw. is there an option in the board software (could find it) to enable that I get an email when I get a notification?

Cu
Selur

DGDenoise

Posted: Thu Jan 05, 2023 1:25 pm
by Rocky
Great thanks. At the bottom of the thread hit the wrench pulldown and select subscribe topic.

DGDenoise

Posted: Fri Jan 06, 2023 11:26 am
by Selur
I'm subscribed, but I don't get any email notifications.
(yes, I did check my spamfolder)
I'll switch to another email and see if that helps. :)

Cu Selur

DGDenoise

Posted: Sat Jan 07, 2023 2:27 am
by Guest 2
Selur wrote:
Fri Jan 06, 2023 11:26 am
I'm subscribed, but I don't get any email notifications.
I have (had?) the same problem too.

DGDenoise

Posted: Sat Jan 07, 2023 7:01 am
by Selur
Thanks for letting me know it's not just me. (Changing the email didn't help.)

Cu
Selur

DGDenoise

Posted: Sat Jan 07, 2023 8:27 am
by Rocky
admin will look into it.

DGDenoise

Posted: Sat Jan 28, 2023 10:28 am
by Rocky
As promised here is a stand-alone Vapoursynth native (API4) version of DGDenoise. If it works fine for you, I will release it officially.

https://rationalqm.us/misc/DGDenoise_selur.rar

DGDenoise

Posted: Sat Jan 28, 2023 5:08 pm
by thechaoscoder
Cool :hat:

I noticed some minor things:
- strength/cstrength can go over 1.0? Documentaion says range is 0.1-1.0, but it accepts 8.0
- typo in error msg: DGDenoise: searchw must be 5, 7, or 90
- Normally function names in VS start with a capital letter. To keep it consistent with the rest I would suggest dgdenoise.DGDenoise()
or even better dgdenoise.Denoise(), <-- we already know it comes from dgdenoise via namespace

DGDenoise

Posted: Sat Jan 28, 2023 5:34 pm
by Rocky
Greetings thechaoscoder! Thank you for the feedback.
thechaoscoder wrote:
Sat Jan 28, 2023 5:08 pm
- strength/cstrength can go over 1.0? Documentation says range is 0.1-1.0, but it accepts 8.0
The documentation says "Typically 0.1-1.0", so I'll leave it as is. It's inconsequential.
- typo in error msg: DGDenoise: searchw must be 5, 7, or 90
Fixed.
- Normally function names in VS start with a capital letter. To keep it consistent with the rest I would suggest dgdenoise.DGDenoise()
or even better dgdenoise.Denoise(), <-- we already know it comes from dgdenoise via namespace
I changed it to DGDenoise(). I prefer to leave the DG prefix to show that it is the same algorithm as the one in DGDecodeNV.

The RAR file was updated on line.

DGDenoise

Posted: Sun Jan 29, 2023 6:30 am
by thechaoscoder
Rocky wrote:
Sat Jan 28, 2023 5:34 pm
The documentation says "Typically 0.1-1.0", so I'll leave it as is. It's inconsequential.
:agree:

Another small thing:
YUV444P8 - YUV444P16 are also accepted + Output is in YUV444P* then.
Perhaps the error message and docs need to be updated?

DGDenoise: input must be YV12 or YUV420P16

Doc: The input clip must be in the YV12 or YUV420P16 format. DGSource() delivers YUV420P16 when the source stream has a 10/12/16-bit depth.

DGDenoise

Posted: Sun Jan 29, 2023 7:59 am
by Rocky
I need to reject the 444 formats as the filter is not designed for them, and the result is undefined. Do you need 444 support?