Log in

View Full Version : Dogway's Filters Packs


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 [33] 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

Boulder
10th October 2022, 13:41
Would it be possible to make deep_resize use linear space scaling for downscales by default?

madey83
12th October 2022, 12:00
@Dogway,

coud it be an option to add paramiter to SMDegrain to look ahead, let say 24 frames and calculate some avarage value for thSAD to be more "dynamically" insted fix value?
i think this is used for X265 encoder: option: --rc-lookahead - of course i could be wrong.....

tormento
12th October 2022, 15:12
@Dogway

I think I have missed some SMDegrain iteration but did you add support for DTL cpu and/or gpu mvtools?

Dogway
12th October 2022, 18:39
No I haven't, I think I was waiting for support of blocksize of 16, not sure if that's possible now? Does he have a git?
If so I can make a fork version but I don't think I can benchmark it as I don't have DX12 (Win7 here), will install W10 in a month though, when 22H2 arrives.

@madey83: You don't need to lookahead, you can access the whole scene range stats with ScenesPack, without overflowing into adjacent scenes.
Here's an example for SMDegrain (https://forum.doom9.org/showthread.php?p=1969107#post1969107).
And here's another one for GrainFactory3mod (https://forum.doom9.org/showthread.php?p=1975232#post1975232)so you can get the gist of it.

You can get an idea of the GrainFactory3mod example to derive the thSAD for SMDegrain example.

Would it be possible to make deep_resize use linear space scaling for downscales by default?

Not by default, you can mimic linear space downscaling with SSIM2 kernel, but I can add an option to resize in linear space if it doesn't modify much the structure of the function.

I'm off now to work a little.

LeXXuz
12th October 2022, 20:41
What do you use for halo removal on bad DVD sources?

Tried Blinddehalo and Dehaloalpha. But all they did was (over)smoothing the picture no matter what parameters I changed. Although their edgemasks looked fine, the result was poor.

tormento
12th October 2022, 22:38
No I haven't, I think I was waiting for support of blocksize of 16, not sure if that's possible now? Does he have a git?
https://github.com/DTL2020/mvtools

Plus a couple of threads in Avisynth Development subforum.
as I don't have DX12
There are a CPU branch and a GPU one, with different (almost) capabilities each.

DTL
12th October 2022, 23:32
"CPU branch and a GPU one, with different (almost) capabilities each."

The current sources are single now. The build may be created with DX12_ME define so it will be Win10 (DX12 and later) compatible to load mvtools2.dll and its DX12 dependencies. And this build can use optSearchOption 5 or 6 for MAnalyse for hardware if found. If build without DX12_ME compiler define it will be standard mvtools2 (may be only no 32bit directly because of a few new functions in MAnalyse need to be fixed). optSearchOption 5 or 6 for MAnalyse will throw error message to mark it was no DX12 build. Compatible with Win7 at least.

Block size 16x16 with DX12ME runs somehow buggy and my remote debug do not breaks at crash. May be it is local non-compatibility with my Win 10 + GTX1060 or bug somewhere. So I not use this. Only 8x8. So we need some more developers with complete build and debug system with Win10 and HW accelerator to try to check what cause crash.

Much more sad for Dogway public scripts may be next notes:
1. Currently 2.7.45 mvtools2 version from pinterf was fine tuned for many years to fix possible bugs and support many blocksizes and bitdepths and colour formats. But current my builds have many new features but support only very limited blocksizes/bitdephts/colour formats. Some combinations not implemented, some will use slow C-reference. Some may simply crash. Most new features were only tested at 8x8 8bit YV12.
2. The most sad issue for plugins users - the 2.7.45 and my builds can not be separated in single process because they use equal functions names. And so it looks not possible to run some complex scripts without modifications (like QTGMC). So my build can not be complete replacement of 2.7.45 version - it may cause bugs somewhere (may be crashes). The only typical use case is keep it in current working directory and load as local .dll (not from common plugins folder). Currently it is mostly somehow working tech demo and can be used for production only in very limited scenarios (like simple degrain script). All other use cases of mvtools of 2.7.45 version may or may not work.

Most of new features are about onCPU processing now so not use accelerator. May be I will add SSIM (and/or some more) metric to compute shader someday if tests will show some good use cases for it. Currently I not found them. The SSIM metric only shows some significantly different resulting MVs with onCPU MAnalyse (though direct MDegrain with there MVs also not visibly better) so currently planned use case is higher quality IVS mask of using SAD and SSIM different searches and combined metric from MVs difference. It is to be tested in future.
Most of DX12-dependent simple search features is finished many months ago (planned some fix to compute shader to have more equal SAD result with onCPU but still not finished).

guest
12th October 2022, 23:35
I don't have DX12 (Win7 here), will install W10 in a month though, when 22H2 arrives.

FYI, Windows 10 22H2 has been "out" for a month or more...

DTL
13th October 2022, 00:00
Minimum required Windows version is looks like 19H1 - https://devblogs.microsoft.com/directx/new-in-d3d12-motion-estimation/ from May 2019.

madey83
13th October 2022, 08:26
No I haven't, I think I was waiting for support of blocksize of 16, not sure if that's possible now? Does he have a git?
If so I can make a fork version but I don't think I can benchmark it as I don't have DX12 (Win7 here), will install W10 in a month though, when 22H2 arrives.

@madey83: You don't need to lookahead, you can access the whole scene range stats with ScenesPack, without overflowing into adjacent scenes.
Here's an example for SMDegrain (https://forum.doom9.org/showthread.php?p=1969107#post1969107).
And here's another one for GrainFactory3mod (https://forum.doom9.org/showthread.php?p=1975232#post1975232)so you can get the gist of it.

You can get an idea of the GrainFactory3mod example to derive the thSAD for SMDegrain example.



Not by default, you can mimic linear space downscaling with SSIM2 kernel, but I can add an option to resize in linear space if it doesn't modify much the structure of the function.

I'm off now to work a little.

@Dogway,

thank you answering.

i tried to test the code you pointed me to, but it requires Avisynth 3.7.3 which is not available for download.

kedautinh12
13th October 2022, 08:41
@Dogway,

thank you answering.

i tried to test the code you pointed me to, but it requires Avisynth 3.7.3 which is not available for download.

Here:
https://gitlab.com/uvz/AviSynthPlus-Builds

kedautinh12
13th October 2022, 08:43
neo_f3kdb seems to simply add noise instead of dithering so output is noisier and consumes more bitrate. Yes it's a few times faster but for me quality is first.

The lines you mention are source specific. In this case it's a heavily compressed clip so you want to get rid of blocking. CCD removes chroma macroblocks, while Deblock_QED removes luma blocking. Unfortunately Deblock_QED is not perfect so some high contrast lines (quant1 arg) are left jagged. I run ex_smooth() on top for that, it's a bit destructive but since it's passed through mfilter it will only be applied on motion areas.


####################

By the way, wanted to share some experiment I have been working on these days. Per-shot grain adjustment.

First you output some scene stats (use SceneStats (https://github.com/Dogway/Avisynth-Scripts/blob/master/ScenesPack.avsi), updated today)
# First Pass
setmemorymax(2048*3)
DGSource("Q:\source.dgi",cl=0,ct=0,cr=0,cb=0)

SceneStats(mode="Range+Motion",path="Q:\Range+Motion.log")

Prefetch(1)


Now we are going to detect grain level an a per-shot basis. One assumes that the difference between source and a degrained/denoised version estimates the amount of grain level, so that's what we do. First degrain, then compare source with degrained for a diff mask, and subtract edges from it. Export new stats (we want average diff mask values per-shot).

# Second Pass
setmemorymax(2048*3)
DGSource("Q:\source.dgi",cl=0,ct=0,cr=0,cb=0)

ReadStats("Q:\Range+Motion.log")
ExtractY()
dirt = last
# If this is too slow use a faster spatio-temporal denoiser
SMDegrain(1, 400, ContraSharp=false, RefineMotion=false, LFR=400)

gm = ex_edge (cln,mode="frei-chen", scale=1.0, invert=true).ex_inpand(2,mode="disk")
ex_lutxyz(dirt,gm,"x y - abs z range_max / *") # dirt mask
SceneStats(mode="Stats", path="Q:\Stats.log") # per-shot dirt mask average

Finally we load both stat files and do some parametrization. I intentionally lower grain level slightly when scene has higher motion.

# Third Pass
setmemorymax(2048*3)
DGSource("Q:\source.dgi",cl=0,ct=0,cr=0,cb=0)

ConvertBits(16)
CCD(15)
mb = Deblock_QED(quant1=30, quant2=40,UV=1)
mb = mb.ex_smooth(1, mode="SG", limit=true, sharp=true)
pre = ex_BM3D(sigma=10,preset="normal",radius=2,UV=1,gpuid=0,tv_range=true)

SMDegrain(6, 400, prefilter=pre, mfilter=mb, ContraSharp=true, RefineMotion=true, plane=4, LFR=300, limits=false, DCTFlicker=false)
GradFun3plus(thr=0.25, radius=10, mask=2, smode=0,UV=1)

ReadStats("Q:\Range+Motion.log")
ReadStats("Q:\Stats.log")

# per-shot modulated grain
ScriptClip(function [] () {

avg = propGetAsArray("_SceneStats")[4]
mot = propGetFloat ("_SceneMotion")
navg = avg / (mot + 1)
size = 2*navg + 0.4 # between 0.7 and 1.1 mostly
str = navg + 0.5 # between 0.6 and 0.8 mostly

GrainFactory3mod(g1str=6*str,g2str=8*str,g3str=7*str,g1size=1.20*size,g2size=1.50*size,g3size=1.40*size,g1cstr=0.5,g2cstr=0.3,g3cstr=0.1,temp_avg=1)
} )

ConvertBits(8, dither=1)

You can trans it for one pass encode??

Boulder
13th October 2022, 09:10
Not by default, you can mimic linear space downscaling with SSIM2 kernel, but I can add an option to resize in linear space if it doesn't modify much the structure of the function.

Hmm, I figured it would only mean calling ConvertFormat with the appropriate scale_space parameter. Of course, if deep_resize could pass that parameter on, it would require only a minor change (I would then just add it to my template).

madey83
13th October 2022, 10:31
Here:
https://gitlab.com/uvz/AviSynthPlus-Builds

Thank you :D

Dogway
13th October 2022, 10:39
@Boulder: I had a look, it works so unless you use nnedi3. I will study the possibility to call nnedi3wrap through ConvertFormat.

FYI, Windows 10 22H2 has been "out" for a month or more...
Those are insider's preview releases, AFAIK the stable release is happening at the end of the month.
Will surely be updated in the wiki (https://en.wikipedia.org/wiki/Windows_10)when that happens.

@kedautinh12: It's basically the next script, but good luck making it run, it iteratively runs out-of-order calls with the several SceneStats and SMDegrain calls.
You are better off creating a batch script that execute each pass back-to-back, it will run orders of magnitude faster.

# Denoise highly compressed grainy MP4 and regrain back
# First Pass
setmemorymax(2048*4)
DGSource("Q:\source.dgi",cl=0,ct=0,cr=0,cb=0)

SceneStats(mode="Range+Motion")

# Second Pass
ExtractY()
dirt = last
# If this is too slow use a faster spatio-temporal denoiser
SMDegrain(1, 400, ContraSharp=false, RefineMotion=false, LFR=400)

gm = ex_edge (cln,mode="frei-chen", scale=1.0, invert=true).ex_inpand(2,mode="disk")
ex_lutxyz(dirt,gm,"x y - abs z range_max / *") # dirt mask
SceneStats(mode="Stats") # per-shot dirt mask average

# Third Pass
ConvertBits(16)
CCD(15)
mb = Deblock_QED(quant1=30, quant2=40,UV=1)
mb = mb.ex_smooth(1, mode="SG", limit=true, sharp=true)
pre = ex_BM3D(sigma=10,preset="normal",radius=2,UV=1,gpuid=0,tv_range=true)

SMDegrain(6, 400, prefilter=pre, mfilter=mb, ContraSharp=true, RefineMotion=true, plane=4, LFR=300, limits=false, DCTFlicker=false)
# Debanding, optional
GradFun3plus(thr=0.25, radius=10, mask=2, smode=0,UV=1)

# per-shot modulated grain
ScriptClip(function [] () {

avg = propGetAsArray("_SceneStats")[4]
mot = propGetFloat ("_SceneMotion")
navg = avg / (mot + 1)
size = 2*navg + 0.4 # between 0.7 and 1.1 mostly
str = navg + 0.5 # between 0.6 and 0.8 mostly

GrainFactory3mod(g1str=6*str,g2str=8*str,g3str=7*str,g1size=1.20*size,g2size=1.50*size,g3size=1.40*size,g1cstr=0.5,g2cstr=0.3,g3cstr=0.1,temp_avg=1)
} )

ConvertBits(8, dither=1)

Boulder
13th October 2022, 13:28
@Boulder: I had a look, it works so unless you use nnedi3. I will study the possibility to call nnedi3wrap through ConvertFormat.

My tests did show a difference between the default value "gamma" and "linear" for scale_space in ConvertFormat when using deep_resize to downscale. I've only used the Zopti presets in deep_resize so NNEDI3 is not involved there.

guest
14th October 2022, 00:58
Those are insider's preview releases, AFAIK the stable release is happening at the end of the month.
Will surely be updated in the wiki (https://en.wikipedia.org/wiki/Windows_10)when that happens.

Oh, OK, well, I was obviously misled there...

But why don't you just go to W11 22H2, that's what I use, and it's great, especially once you "tweak" it up :)

guest
15th October 2022, 01:12
FrameRateConverterMIX

Would someone be so kind as to give me a basic explanation of what this can do ?

With maybe a simple script :rolleyes:

And is it different to this :-

http://avisynth.nl/index.php/SVPflow

kedautinh12
15th October 2022, 07:04
FrameRateConverterMIX

Would someone be so kind as to give me a basic explanation of what this can do ?

With maybe a simple script :rolleyes:

And is it different to this :-

http://avisynth.nl/index.php/SVPflow
Full info for you
https://github.com/mysteryx93/FrameRateConverter

guest
15th October 2022, 07:24
Full info for you
https://github.com/mysteryx93/FrameRateConverter

Thanks K, but I have been there several times already.

I'd actually like to know what it is used for...

But as per usual, I can't get it to work for me.

I doubt that I would use it....anyway.

poisondeathray
15th October 2022, 15:30
I'd actually like to know what it is used for...


It's for changing framerates using interpolation (in contrast , vs. inserting or deleting frames via blends or duplicates). Think of it as synthesizing "in between" frames at new intermediate points in time, so the result is smoother than blends or dupes. The main issue is artifacts - some types of content work ok, others are terrible

You can use it for slow motion, reversing some types of conversions, adapating to some specific standards where you need a specific frame rate

The original used mvtools2, but dogway's version has been modified to use rife as an option and can produce better results in some scenarios. FRC is more advanced than standard methods because of additional features such as artifact masking and blending

Dogway
15th October 2022, 22:32
Oh, OK, well, I was obviously misled there...

But why don't you just go to W11 22H2, that's what I use, and it's great, especially once you "tweak" it up :)

Yeah, Microsoft decided it wasn't a good idea to install on old systems. Anyway I'm not too fond of installing OS in a productive environment that are still too "green". Win11 22H2 might resolve some, but still...

FrameRateConverterMIX

Would someone be so kind as to give me a basic explanation of what this can do ?

With maybe a simple script :rolleyes:

And is it different to this :-

http://avisynth.nl/index.php/SVPflow

Yes, it's similar but CPU mvtools2 based with some masking to hide artifacts. I simply reviewed MysteryX's script to see if I could improve performance, later I added RIFE as he explained.

In any case I ditched the idea and with Asd-g's latest RIFE update I prefer to directly use RIFE (I made a wrapper (https://forum.doom9.org/showthread.php?p=1976257#post1976257) for it), better quality and similar speed, haven't benchmarked though.

Still working on the updates, had an issue yesterday where I almost lost all files from my Desktop :scared: Luckily could restore most with Recuva.

guest
16th October 2022, 01:12
Yes, it's similar but CPU mvtools2 based with some masking to hide artifacts. I simply reviewed MysteryX's script to see if I could improve performance, later I added RIFE as he explained.

In any case I ditched the idea and with Asd-g's latest RIFE update I prefer to directly use RIFE (I made a wrapper (https://forum.doom9.org/showthread.php?p=1976257#post1976257) for it), better quality and similar speed, haven't benchmarked though.

Still working on the updates, had an issue yesterday where I almost lost all files from my Desktop :scared: Luckily could restore most with Recuva.

Great explanations from both you & poisondeathray, but I still can't seem to get it to work properly, and does RIFE need any other dependencies ??

Might have to try it out of the ResizersPack...

guest
16th October 2022, 01:24
Yeah, Microsoft decided it wasn't a good idea to install on old systems. Anyway I'm not too fond of installing OS in a productive environment that are still too "green". Win11 22H2 might resolve some, but still...

You know you can download a genuine .ISO from MS, and then use Rufus 3.20 to create a bootable USB, and ALL the restrictions are disabled, so you should be able to install it just about anything...

Works for me :)

PS:- Rufus can actually download the .iso itself ;)

UPDATE (just for Dogway):- I just did a test install of W11 22H2, on an OLD (2008) i7 920 CPU, on an ASUS P6T WS PRO....EFI BIOS, worked like a charm :)

poisondeathray
16th October 2022, 02:01
and does RIFE need any other dependencies ??


Dependencies are listed under the Requirements section

https://github.com/Asd-g/AviSynthPlus-RIFE

Post any error messages

kedautinh12
16th October 2022, 03:24
You need GPU with Vulkan support to use with RIFE

StainlessS
16th October 2022, 04:34
You know you can download a genuine .ISO from MS, and then use Rufus 3.20 to create a bootable USB, and ALL the restrictions are disabled, so you should be able to install it just about anything...

Works for me :)

PS:- Rufus can actually download the .iso itself ;)

Could install W11 on external Hard drive via hard drive dock. [I'de BIOS/FIRMWARE disable ALL SSD, Harddrive's before install so as to not be dependent upon existing boot loader],
can use HDV in external dock like you can a USB flash drive or SD Card and boot OS or tools from it.
One of my docks:- https://www.amazon.co.uk/FIDECO-Docking-Station-Aluminum-External/dp/B075TZJMWW/ref=sr_1_3?crid=3QQIJLZWES0SV&keywords=fideco&qid=1665891234&qu=eyJxc2MiOiI0LjI0IiwicXNhIjoiMy44NiIsInFzcCI6IjMuNTgifQ%3D%3D&sprefix=fideco%2Caps%2C228&sr=8-3
FIDECO Aluminum Hard Drive Docking Station, USB 3.0 Docking Station for 2.5 and 3.5 inch SATA HDD or SSD, Support Offline Clone and 2x 16TB Hard Drives
Above, just for testing, obviously speed would suffer a bit compared to eg internal nvme SSD.

EDIT: I was booting emergency Linux Cinnamon Mint [already got mint on SSD with W10] from dock HDV, but recent update to HP FIRMWARE causes boot failure on mint and Dragon OS [linux], but other linux
distros work OK [eg LMDE ie Debian edition mint]. Probably a problem with [EDIT: Ubuntu based] mint booting rather than HP firmware (some extra security added).
HP will not let me revert to old firmware, and Mint from New Setup has same problem, so we are a bit stuffed.

guest
16th October 2022, 04:52
You need GPU with Vulkan support to use with RIFE

Hi K,

I had a sneaking suspicion that I would need that....now I need to suss out my GPU's.

Cheers

madey83
16th October 2022, 20:08
@Dogway,

could you please tell me how can i use more GPU power/performance in regard using prefilter=7? Currently it uses only 15-20% of my mobile RTX2060.

tormento
16th October 2022, 20:13
I saw the CCD filter named many times here.

I have tried to find with no luck. Where can I find it?

Reel.Deel
16th October 2022, 20:18
I saw the CCD filter named many times here.

I have tried to find with no luck. Where can I find it?

Avisynth-Scripts/EX mods/DeblockPack.avsi (https://github.com/Dogway/Avisynth-Scripts/blob/master/EX%20mods/DeblockPack.avsi)

tormento
16th October 2022, 20:27
DeblockPack
TIL

Thanks!

LeXXuz
16th October 2022, 21:48
@Dogway,

could you please tell me how can i use more GPU power/performance in regard using prefilter=7? Currently it uses only 15-20% of my mobile RTX2060.

DGDenoise() is very fast and well optimized as CUDA filter. Your CPU will most likely be the bottleneck. That's why your GPU usage is only ~20%.

madey83
17th October 2022, 09:25
DGDenoise() is very fast and well optimized as CUDA filter. Your CPU will most likely be the bottleneck. That's why your GPU usage is only ~20%.

Hi LeXXuz,

thank you for answer.
have you used Dogway's settings from SMDegrain file or do you have some additional configuration for prefilter=7 to do more denoise on GPU and gain some CPU performence for x265 encoder?


Edit:

Could you please advice what could be the best avisynth filter (performance/efficiency) to do resize from 2160p to 1080p?

tormento
17th October 2022, 09:40
DGDenoise() is very fast and well optimized as CUDA filter. Your CPU will most likely be the bottleneck. That's why your GPU usage is only ~20%.
I prefer (a lot) BM3D_CUDA filter. IMHO DGDenoise is a bit too soft when used as a prefilter too.

madey83
17th October 2022, 09:58
I prefer (a lot) BM3D_CUDA filter. IMHO DGDenoise is a bit too soft when used as a prefilter too.

Hi tormento,

could you please share your settings for it?

LeXXuz
17th October 2022, 10:44
I prefer (a lot) BM3D_CUDA filter. IMHO DGDenoise is a bit too soft when used as a prefilter too.

I'd say that highly depends upon the source material and the kind of noise you're facing. I always use the show function to have a look at the preview how good the prefiltering works. I noticed with some types of noise, block matching filters can produce terrible artifacts where non-local means don't. Here, I clearly prefer NLM or even a simple prefilter like Fluxsmooth which also does a good job for many scenarios at great speeds.

Hi LeXXuz,

thank you for answer.
have you used Dogway's settings from SMDegrain file or do you have some additional configuration for prefilter=7 to do more denoise on GPU and gain some CPU performence for x265 encoder?

Could you please advice what could be the best avisynth filter (performance/efficiency) to do resize from 2160p to 1080p?

There really is no best way to do something in video filtering. The art is to find a good balance between noise removal and keeping as much source detail as possible.

Sadly, there is no general recipe for noise removal. If you want good results, you always have to tinker around anew for every source.

If you need smaller files you either have to increase the strength of your filtering or have to chose smaller bitrates in your encoder (or set higher CRF values if you do CRF encodes).

Look into the prefiltering section of SMDegrain (lines 252-264).
There you'll find the used settings for BM3D (prefilter 6) and DGDenoise (prefilter 7). You can tweak the strength/sigma values here.
But don't overdo it! The default values here are already a fair compromise between noise removal and detail retention. Too strong values may oversmooth your source and you will lose too much detail. ;)

Hi tormento,

could you please share your settings for it?

You could just try prefilter=6 :)

kedautinh12
17th October 2022, 15:03
Hi tormento,

could you please share your settings for it?

settings from Dogway:
# Prefiltering with radius 3 for more coherence. I found preset "normal" to clean edges better.
pre=ex_BM3D(sigma=10,preset="normal",radius=3,UV=1,gpuid=0,tv_range=true)
# Large radius for more coherence. LFR to recover some smearing. limits=false to don't sharpen motion areas
SMDegrain(6, 400, prefilter=pre, ContraSharp=true, RefineMotion=true, plane=4, LFR=300, limits=false, DCTFlicker=false)

tormento
20th October 2022, 11:55
I tried CCD and it halves my fps... is there any lighter workaround?

Dogway
20th October 2022, 14:51
Just a heads up, I was holding back many updates so I decided to upload what I had with TransformsPack which was many changes and features, and attack chroma location from a clean slate.

FrameRateConverter was also updated with a new preset RIFE-HQ, which is based on "Slowest", while RIFE preset is based on "Slower". This is my last version for FRC as I consider it now legacy and switch my efforts to OpticalFlowRIFE(), the wrapper I made for Asd-g's port of RIFE for avisynth.

By the way, it seems Windows 10 22H2 stable was released yesterday. I will be looking into it after I update ResizersPack. IMO installing Win11 on a not supported CPU is risky and bothersome, you have to depend on hacks that might or not work, and later pray for an update to don't ruin it all. Besides it's still too green, many BSODs as seen recently for Nvidia cards, taskbar issues (might be fixed with yesterday's update), and generally no drivers for a PC 10 years old like mine. I will install it when I get a new PC in a few years time when AVX-512 is again a thing, prices go down and Win11 is more mature.

kedautinh12
20th October 2022, 15:38
Ryzen 7000 series support AVX 512 now. I think you can buy it :D
Any chance for speed-up RIFE when RIFE updated with more new models??

tormento
20th October 2022, 16:16
IMO installing Win11 on a not supported CPU is risky and bothersome
Enough you can get TPM in some way.

I managed to find a TPM v1.2 HW key for my motherboard and I am using Win 11 since day one on a i7-2600k.

DTL
20th October 2022, 19:25
RIFE can be also tested as pre-degrain for SMDegrain (or may be for MAnalyse only) - https://forum.doom9.org/showthread.php?p=1976763#post1976763 . But the default 'model' may give some artifacts at repeating structures and also the scenechange may need tweaking.

guest
21st October 2022, 00:41
By the way, it seems Windows 10 22H2 stable was released yesterday. I will be looking into it after I update ResizersPack. IMO installing Win11 on a not supported CPU is risky and bothersome, you have to depend on hacks that might or not work, and later pray for an update to don't ruin it all. Besides it's still too green, many BSODs as seen recently for Nvidia cards, taskbar issues (might be fixed with yesterday's update), and generally no drivers for a PC 10 years old like mine. I will install it when I get a new PC in a few years time when AVX-512 is again a thing, prices go down and Win11 is more mature.

I doubt that you would have ANY issues, I have been using W11 on "unsupported" CPU's, etc, for quite a while now, and have had many successful updates along the way.

Like I mentioned before, you can download a genuine .iso from MS, and when using Rufus to create a bootable USB, it's "kill's" ALL the annoying problems that a "normal" W11 install has, easy peasy.

You can also modify/customise the installation setup using NTLite.

And tbh, I have had more problems with my AMD GPU, than nVidia.

You can also customise the nVidia drivers, so they ONLY install the driver, and not all the other crap that can cause problems.

https://www.techpowerup.com/nvcleanstall/

And there are so many other "addon's" that make W11 a pleasure to use, and easy on the eye :), and yesterday's update added even more good stuff.

If you wait too long, it will be W12, and you'll have the "mature" problem all over again....no time like the present.

tormento
22nd October 2022, 09:59
I have tried the following script on a 1080p (badly upsampled) anime:

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
#LoadPlugin("D:\Eseguibili\Media\DGHDRtoSDR\DGHDRtoSDR.dll")
DGSource("F:\In\Saishuu heiki kanojo\01.dgi", fieldop=1)
DeBicubicResizeMT(target_width=960,target_height=540,threads=1,b=0.3,c=0.3)
nnedi3resize(1920,qual=2,sharpness=30)
fmtc_bitdepth (bits=8,dmode=7)
Prefetch(4)

It jumps:

https://i3.lensdump.com/i/1yjaLM.png

Tried with fmtc_resample (960, 540, kernel="bicubic", a1=0.3, a2=0.3, invks=True) instead of DeBicubicResizeMT(target_width=960,target_height=540,threads=1,b=0.3,c=0.3)

too but I get the very same error. If I delete the downsize line, it works fine but with no effect (of course).

I can't find any reference about dh parameter.

tormento
22nd October 2022, 10:11
Another error:

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
#LoadPlugin("D:\Eseguibili\Media\DGHDRtoSDR\DGHDRtoSDR.dll")
DGSource("F:\In\Tatami\01.dgi")
ConvertBits(16)
CCD(15) # Remove big chroma "blocks"

# Remove blocking and smooth out jagged edges (only applies where motion match fails)
mb=Deblock_QED(quant1=30, quant2=40,UV=1)
mb=mb.ex_smooth(1, mode="SG", limit=true, sharp=true)

# Prefiltering with radius 3 for more coherence. I found preset "normal" to clean edges better.
pre=ex_BM3D(sigma=10,preset="normal",radius=3,UV=1,gpuid=0,tv_range=true)

# Large radius for more coherence. LFR to recover some smearing. limits=false to don't sharpen motion areas
SMDegrain(6, 400, prefilter=pre, mfilter=mb, ContraSharp=true, RefineMotion=true, plane=4, LFR=300, limits=false, DCTFlicker=false)
# Debanding to reduce posterization in walls/defocused backgrounds
GradFun3plus(thr=0.25, radius=10, mask=2, smode=0,UV=1)
Prefetch(4)

https://i2.lensdump.com/i/1yjhaQ.png

P.S: I updated to your last versions before trying these 2 scripts.

kedautinh12
22nd October 2022, 10:13
I have tried the following script on a 1080p (badly upsampled) anime:

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
#LoadPlugin("D:\Eseguibili\Media\DGHDRtoSDR\DGHDRtoSDR.dll")
DGSource("F:\In\Saishuu heiki kanojo\01.dgi", fieldop=1)
DeBicubicResizeMT(target_width=960,target_height=540,threads=1,b=0.3,c=0.3)
nnedi3resize(1920,qual=2,sharpness=30)
fmtc_bitdepth (bits=8,dmode=7)
Prefetch(4)

It jumps:

https://i3.lensdump.com/i/1yjaLM.png

Tried with fmtc_resample (960, 540, kernel="bicubic", a1=0.3, a2=0.3, invks=True) instead of DeBicubicResizeMT(target_width=960,target_height=540,threads=1,b=0.3,c=0.3)

too but I get the very same error. If I delete the downsize line, it works fine but with no effect (of course).

I can't find any reference about dh parameter.

Add propSet("_FieldBased", 0) before nnedi3resize

kedautinh12
22nd October 2022, 11:03
Another error:

SetMemoryMax()
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
#LoadPlugin("D:\Eseguibili\Media\DGHDRtoSDR\DGHDRtoSDR.dll")
DGSource("F:\In\Tatami\01.dgi")
ConvertBits(16)
CCD(15) # Remove big chroma "blocks"

# Remove blocking and smooth out jagged edges (only applies where motion match fails)
mb=Deblock_QED(quant1=30, quant2=40,UV=1)
mb=mb.ex_smooth(1, mode="SG", limit=true, sharp=true)

# Prefiltering with radius 3 for more coherence. I found preset "normal" to clean edges better.
pre=ex_BM3D(sigma=10,preset="normal",radius=3,UV=1,gpuid=0,tv_range=true)

# Large radius for more coherence. LFR to recover some smearing. limits=false to don't sharpen motion areas
SMDegrain(6, 400, prefilter=pre, mfilter=mb, ContraSharp=true, RefineMotion=true, plane=4, LFR=300, limits=false, DCTFlicker=false)
# Debanding to reduce posterization in walls/defocused backgrounds
GradFun3plus(thr=0.25, radius=10, mask=2, smode=0,UV=1)
Prefetch(4)

https://i2.lensdump.com/i/1yjhaQ.png

P.S: I updated to your last versions before trying these 2 scripts.

Maybe you put deblock.dll and DGDecode.dll in same folder got error cause DGDecode has Deblock() function too

anton_foy
22nd October 2022, 13:33
Maybe you put deblock.dll and DGDecode.dll in same folder got error cause DGDecode has Deblock() function too

I get the same error and I even removed DGdecode to load from my script and moved the dll to another folder.

Reel.Deel
22nd October 2022, 14:25
https://i2.lensdump.com/i/1yjhaQ.png


"Deblock_deblock" means that the plugin must be named "deblock.dll" otherwise you will get an error.

Docs (http://avisynth.nl/index.php/Plugins#Plugin_Autoload_and_Conflicting_Function_Names):
AviSynth's DLLName_function() feature automatically creates prefix aliases; so for example, foo.dll's bar() function may be called as foo_bar().

Maybe you put deblock.dll and DGDecode.dll in same folder got error cause DGDecode has Deblock() function too

Official x64 DGDecode does not have the Deblock function, and even if it does have the unofficial x64 DGDecode loaded it would not cause the error he has.