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

tormento
5th September 2024, 21:50
@Dogway

When you have some time, would you please add to your scripts a "modern" version of finedehalo?

It still needs dehalo_alpha.avsi and mt_xxpand_multi.avsi.

Perhaps merging them and updating with latest AVS+ functions could make it a bit faster.

Lucky38
27th September 2024, 07:24
Question:

Why below call for 1080p gives 3-3,5k bitrate

SMDegrain(tr=3, thSAD=500, thSCD2 = 100,truemotion=false, rfilter=3, prefilter=1, search=5, contrasharp=false, LFR=true, DCTFlicker=true)

and below call for 2160p gives 15-16k bitrate

SMDegrain(tr=3, thSAD=500, thSCD2 = 100,truemotion=false, prefilter=1, UHDHalf=false, limit=255, search=5, contrasharp=false, LFR=true, DCTFlicker=true)


X265 config has exaclty the same settings. I know that 4k is 4 time 1080p but i have feeling that SMDegrain reduces grain less for 4k than for 1080p.

DTL
27th September 2024, 18:25
4K naturally have more noise 'per sample' because it gets 4 times less photons per sample from same lit scene (via same aperture lens) and relative photon shot noise is 2 times larger. It also can cause worse motion estimation and higher SAD and lower denoising.
To shoot comparable 4K users need to set 4 times more light per scene (to keep same depth of field from lens) and use camera with same electrons per sample sensor capacity (or something like 4 times per frame reading and 'external accumulation') and externally it is looks like 4 time less ISO sensitivity rating. In that case the 4K digital footage expected to be only 4 times more in comparison with 1080 in data rate (sort of real scene data rate with zero noise).

tormento
28th September 2024, 10:02
4K naturally have more noise 'per sample' because it gets 4 times less photons per sample from same lit scene (via same aperture lens) and relative photon shot noise is 2 times larger. It also can cause worse motion estimation and higher SAD and lower denoising.
Are you suggesting that we should denoise a UHD with the BD version or resizing it as prefilter is enough?

Lucky38
28th September 2024, 19:14
4K naturally have more noise 'per sample' because it gets 4 times less photons per sample from same lit scene (via same aperture lens) and relative photon shot noise is 2 times larger. It also can cause worse motion estimation and higher SAD and lower denoising.
To shoot comparable 4K users need to set 4 times more light per scene (to keep same depth of field from lens) and use camera with same electrons per sample sensor capacity (or something like 4 times per frame reading and 'external accumulation') and externally it is looks like 4 time less ISO sensitivity rating. In that case the 4K digital footage expected to be only 4 times more in comparison with 1080 in data rate (sort of real scene data rate with zero noise).


so is there any suggestion how to properly handle UHD noise?

DTL
29th September 2024, 09:44
Because it typically have more relative noise levels - increase 'denoising' settings like thSAD and tr and also may be double block size (it also may be useful for typically more soft UHD sources but may depend on source sharpness).

tormento
16th October 2024, 14:30
My script

SetMemoryMax()
SetCacheMode(0)
SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
DGSource("M:\In\Mobile Suit Gundam - Il contrattacco di Char ~Dynit\contrattacco.dgi",ct=48,cb=48,cl=48,cr=48, dn_enable=3, dn_strength=0.1, dn_cstrength=0.05, dn_quality="best")
DebilinearResizeMT(1598,862,threads=1)
ConvertBits(16)
ConvertFormat(fmt_in="420",fmt_out="444",cs_out="",UVrecon=true)
libplacebo_Deband(iterations=5,temporal=true)
fmtc_bitdepth (bits=10,dmode=3)
Prefetch(2,6)

I get

Script error: There is no function named 'nnedi3_rpow2'.
(D:/Programmi/Media/AviSynth+/plugins64/ResizersPack-12.1~Dogway.avsi, line 786)
(D:/Programmi/Media/AviSynth+/plugins64/ResizersPack-12.1~Dogway.avsi, line 787)
(D:/Programmi/Media/AviSynth+/plugins64/ResizersPack-12.1~Dogway.avsi, line 793)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 962)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 972)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 973)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 973)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 1323)
(M:\In\Mobile Suit Gundam - Il contrattacco di Char ~Dynit\contrattacco.avs, line 15)

In the TransformsPackMain script:

### ConvertFormat()
###
### Dependencies: AviSynth+ 3.7.3 and over
### ExTools
### GradePack (for show=true or 'sigmoid' scaling)
### MasksPack (for show=true)
### ResizersPack (for show=true or UVRecon=true or NN scalers)
### KNLMeansCL (for UVRecon=true)
### nnedi3(CL) (for UVRecon=true)
### Optional resizer plugins (check links)

From ResizersPack:

# nnedi3resize()
#
# Wrapper for nnedi3wrap() for simplified ____resize() style arguments.
# Performant neural network based upscaler recommended for graphics or textureless images.
# It accepts arbitrary dimension values, not only limited to powers of 2
#
# Dependencies:
# see nnedi3wrap() below

# nnedi3wrap()
#
# Replacement wrapper for nnedi3(), nnedi3_rpow2() and NNEDI3CL() based on 'field' and 'gpuid' values.
# Adds "_rpow2" functionality and its arguments to NNEDI3CL().
# Maintains frame properties when nnedi3() or nnedi3_rpow2() is used.
# Decouples 'rfactor' into 'xfactor' and 'yfactor' and sets new reasonable defaults.
# Finally it automatically fixes center shift for both plugins, set cshift="none" to disable.
#
# Dependencies:
# ExTools
# NNEDI3CL (requires at least AVS+ v3.7.3)
# or
# nnedi3

It should work fine with NNEDI3CL and NNEDI3CL_rpow2 too, right?

Any idea?

Emulgator
16th October 2024, 15:19
DeblockPack 2.8.avsi function oyster_Deringing was throwing error: I don't know what "UV" means.
Added missing line 468:
UV = color ? 3 : 2 # Emulgator 2024 10 16: Missing line added

tormento
16th October 2024, 16:09
DeblockPack 2.8.avsi function oyster_Deringing was throwing error
You aren't answering me, are you?

Emulgator
16th October 2024, 16:12
No, this was just a find to help all Dogway filter users, not connected to your script.

tormento
18th October 2024, 13:17
I am fighting with a hard compromise between denoising and details loss.

Some animation studios, even when producing in digital, add some very fine digital noise to the final product.

These two clips come from a very recent anime.

The first one (https://www.mediafire.com/file/arjq4m0d96z8tf2/Girl_01_14828-14882.mkv/file) is about the details of the garnment of the girl, mostly the knitting close to the hairs and the hood.

https://i.ibb.co/VmvRBjN/Girl-01-14828.png

The second one (https://www.mediafire.com/file/4nu6zolm3y0c3m8/Girl_01_17474-17635.mkv/file) is where you can clearly see the digital noise lurking in the dark. You can see in light scenes too but here is more evident.

https://i.ibb.co/f1r2MBb/Girl-01-17474.png

I have tried many many parameters to delete the noise, preserving the knitting, but it's really hard.

Any help is welcome.

takla
18th October 2024, 13:34
I have tried many many parameters to delete the noise, preserving the knitting, but it's really hard.

Any help is welcome.

Use 2x-LD-Anime-Compact (https://forum.doom9.org/showpost.php?p=1998906&postcount=100)
Should clean it up very nicely. 2x_AniScale2S_Compact_i8_60K should work, too.

Selur
18th October 2024, 13:48
Should clean it up very nicely.
nope,.. https://imgsli.com/MzA4NzI1
I would start with something like mcdegrainsharp and then try to filter flat areas differently using some masking.

tormento
18th October 2024, 14:20
I would start with something like mcdegrainsharp and then try to filter flat areas differently using some masking.
I don't want to put so much effort to manually select filter range and apply different filters to them manually.

I'd like to use a much more replicable and automated process.

tormento
18th October 2024, 14:21
Should clean it up very nicely. 2x_AniScale2S_Compact_i8_60K should work, too.
It completely destroys knittings.

And I doubt it could performe nicely on my 1660 Super too.

What GPU do you have and how many fps can you achieve?

takla
19th October 2024, 00:41
It completely destroys knittings.


Mhh yeah it does.

nope,.. https://imgsli.com/MzA4NzI1


Thank you for posting that comparison. I'd be surprised if there was any solution without trade-offs here. (Without manually masking scenes, ofcourse)


What GPU do you have and how many fps can you achieve?

I don't remember the exact FPS. But I think it was almost realtime, depending on the resolution, on my Radeon RX 6950 XT. Relative performance has my GPU 3 to 4 times faster. BUT if you can find the filter with cuda, that gap should be smaller.

tormento
19th October 2024, 10:55
Thank you for posting that comparison. I'd be surprised if there was any solution without trade-offs here. (Without manually masking scenes, ofcourse)
BM3D did the trick.

Very short script indeed.

Selur
19th October 2024, 21:25
@tormento: Have you tried using simple fft3dfilter? (https://imgsli.com/MzA5NDk4)

tormento
19th October 2024, 22:28
@tormento: Have you tried using simple fft3dfilter? (https://imgsli.com/MzA5NDk4)
Send your script, please.

Selur
20th October 2024, 07:08
I just called FFT3DFilter with the default parameters. (you can tweak the setting for stronger denoising and add deband to add some noise in places that otherwise will might cause banding when encoding with 8bit)
ClearAutoloadDirs()
SetFilterMTMode("DEFAULT_MT_MODE", MT_MULTI_INSTANCE)
LoadPlugin("F:\Hybrid\64bit\Avisynth\avisynthPlugins\LoadDll.dll")
LoadPlugin("F:\Hybrid\64bit\Avisynth\avisynthPlugins\FFT3DFilter.dll")
LoadDLL("F:\Hybrid\64bit\Avisynth\avisynthPlugins\libfftw3f-3.dll")
LoadPlugin("F:\Hybrid\64bit\Avisynth\avisynthPlugins\LSMASHSource.dll")
Import("F:\Hybrid\64bit\Avisynth\avisynthPlugins\mtmodes.avsi")
# loading source: C:\Users\Selur\Desktop\Girl_01_14828-14882.mkv
# color sampling YV12@8, matrix: bt709, scantyp: progressive, luminance scale: limited
LWLibavVideoSource("C:\Users\Selur\Desktop\Girl_01_14828-14882.mkv",cache=false,format="YUV420P8", prefer_hw=0,repeat=true)
# current resolution: 1920x1080
FFT3DFilter(interlaced=false)
# Converting from 8 to 10bit for encoder
ConvertBits(10)
# setting output fps to 23.976fps
AssumeFPS(24000,1001)
PreFetch(16)
# output: color sampling YV12@10, matrix: bt709, scantyp: progressive, luminance scale: limited
return last

Cu Selur

tormento
20th October 2024, 10:38
I just called FFT3DFilter with the default parameters.
Someone knows how to extract the noise frequencies from an image and selectively remove them?

I think it would be really useful and fast with postproduction digital noise, if simple enough.

DTL
20th October 2024, 23:14
There were some FFTW-based plugins like DeFreq (?). But it works about good only if you distortion is narrow bandwidth enough (like colour subcarrier). Natural noise is much more complex mixed with useful data and can not be as simply separated. When you run SMDegrain and it blends different frames blocks - it may be equal to special temporal-convolution frequency filter to pass only narrow frequencies and suppress out of band noise. May be same or close idea is implemented in FFT3D plugin via FFT.

tormento
21st October 2024, 10:55
Natural noise is much more complex mixed with useful data and can not be as simply separated.
That is not natural noise.

That anime was 3D rendered and digital noise added later, to simulate film effect. The bandwidth, as far as my eyes can see, is really limited and mostly visible in darker area, even if light ones are mildly affected too.

DTL
21st October 2024, 13:30
Typical examples for narrow band distortions are Aerial interference with analog broadcast or some analog interference at ADC board/device to convert analog to digital. If random special noise is added - it most probable have too wide (flat) spectrum and can not be easily filtered out with narrow band-stop filters.

tormento
24th October 2024, 16:33
Choose what you like. For personal, i prefer DPIR +UniScale CartoonRestore-lite + AnimeJanai's result
Would you please address me to where to download them?

Do you know of some model that can keep 1x scale and deblur/antialiasing, to have some anime restoration instead of scaling?

tormento
29th October 2024, 12:23
Tried to use Oyster_super.

I have to Crop(128,128,-128,-128) and resize because the image become enlarged and corrupted along the sides and doubles.

Plus, the comment says ## Input: 444 YUV/RGB at any bitdepth (output is float) but it needs to be 32 bits.

Anyone else?

takla
29th October 2024, 23:14
LWLibavVideoSource("INPUT.mkv")
ConvertBits(32).ConvertToPlanarRGB()
AItrashHere()

rgr
20th November 2024, 12:28
Has anyone compared Stabilization Tools Pack with Deshaker 3.1?

tormento
21st November 2024, 16:05
The call from xClean (https://github.com/mysteryx93/xClean):

ConvertFormat(cconv, fmt_out="444", kernel_c=chroma, tv_in=!fulls, cplace_in=cplace)

causes

Script error: NNEDI3RESIZE does not have a named argument "src_width"
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 969)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 971)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 972)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 973)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 973)
(D:/Programmi/Media/AviSynth+/plugins64/TransformsPackMain-2.2.1~Dogway.avsi, line 1323)
(D:/Programmi/Media/AviSynth+/plugins64/xClean-beta10~mysteryx93.avsi, line 232)

and I can't sort out the bug in the TransformsPackMain-2.2.1.

Any idea?

tormento
3rd December 2024, 22:59
It happens that anime are getting more and more "clean" in the general appearance but if you zoom in the dark areas you can see lot of "pixel fluctuations", perhaps coming from a poor AVC compression strategy, even from BDs. Sometimes it appears on light areas too but it's more rare.

Wanting to cleanup those lurking pixels without ruining the overall quality what do you suggest me?

I have tried with high tr and thsad numbers but all I obtain is to ruin the details without cleaning up the dark areas.

Someone tried it before?

poisondeathray
4th December 2024, 00:02
It happens that anime are getting more and more "clean" in the general appearance but if you zoom in the dark areas you can see lot of "pixel fluctuations", perhaps coming from a poor AVC compression strategy, even from BDs. Sometimes it appears on light areas too but it's more rare.

Wanting to cleanup those lurking pixels without ruining the overall quality what do you suggest me?

I have tried with high tr and thsad numbers but all I obtain is to ruin the details without cleaning up the dark areas.

Someone tried it before?


Filter the dark areas with stronger filtering than the brighter areas (or no filtering for the bright)

You can use the LumaMask in the MasksPack

tormento
4th December 2024, 00:16
Filter the dark areas with stronger filtering than the brighter areas (or no filtering for the bright)

You can use the LumaMask in the MasksPack


Thank you, nice idea.

And what about “subtle pixel noise” in light areas?

It’s way less noticeable but still there.

The problem is that from film grain noise, digital workflow switches that easily fixable rumor to tiny pixel fluctuations than you can really notice on larger screens.

poisondeathray
4th December 2024, 17:33
Thank you, nice idea.


Not really my idea - people have been doing this for >30 years, pre-avisynth with denoising images. You can find video mask scripts 20 years ago


And what about “subtle pixel noise” in light areas?


Use a "subtle pixel noise filter" for the light areas using the mask



The problem is that from film grain noise, digital workflow switches that easily fixable rumor to tiny pixel fluctuations than you can really notice on larger screens.

Then it wasn't produced correctly. Digital workflows add grain to blend everything in . e.g. CG added to film

Z2697
4th December 2024, 17:44
Then it wasn't produced correctly. Digital workflows add grain to blend everything in . e.g. CG added to film

Ray-tracing renderers can produce "real" grians by itself.
And most noises in digital era is added without good reason.

poisondeathray
4th December 2024, 17:55
Ray-tracing renderers can produce "real" grians by itself.


Yes, or not - it depends on the settings

Often the "grain" does not end up look like real film grain, but digital noise - not enough iterations and convergence during render


And most noises in digital era is added without good reason.

Yes, digital acquisition tends to be clean, especially with good lighting. The grain is added in post. "Dark" scenes are often shot brighter, then adjusted to look "dark" in post

But for film, the CG elements have grain emulation to blend into the film as stated above

tormento
4th December 2024, 19:32
Then it wasn't produced correctly. Digital workflows add grain to blend everything in . e.g. CG added to film
Some full CGI animes start to have good enough quality to be almost on par with drawn ones, i.e. Girls band cry.

The problem is that people are so used to grain that they artificially added it with no apparent reason.

Thus, denoising that digital "pixel fluctuation" makes faint details from CGI to disappear.

I uploaded a small clip (https://forum.doom9.org/showthread.php?p=2008439#post2008439) from that anime, if you are curious to look at what I mean.

Dogway
3rd January 2025, 11:00
@tormento, this is more or less the high freq grain, but I'm not sure you can do something with it.
a=last
STTWM(sw=0,tw=100,aw=100,sthres=0,tthres=2)
ex_makediff(a, metric="none", aug=128, dif=true, show=3)
This a simple filter (or use ex_FluxSmoothT() instead of STTWM):
pre=STTWM(sw=0,tw=100,aw=100,sthres=2,tthres=2).ex_sbr()
SMDegrain(2, 200, mode="RMDegrain", prefilter=pre,RefineMotion=true)
It's going to be hard to protect everything, since there are many low contrast lines, but it does the job.


You can also add some masks to protect details...
dt=ex_edge("kayyali",lo=40)
dtm=dt.ex_expand(2,mode="disk")
em=ex_edge("kroon")
gib=em.ex_expand(2).ex_inflate()


ConvertBits(16)
pre=ex_FluxSmoothST().ex_minblur(1)
msk=ex_logic(dtm,em,"max").ConvertBits(16)
pre=ex_merge(pre,last,msk)
SMDegrain(2, 200, mode="RMDegrain", prefilter=pre,RefineMotion=true)
ConvertBits(8,dither=1)

Dogway
3rd January 2025, 12:05
I'm trying to put Deblock_QED to use in the DeblockPack.avsi and seem to actually have it functioning correctly, but wanted to make sure before I spend time testing it. My script is

Deblock_QED()
ConvertBits(Bits=16)
TemporalDegrain2()
CAS()
Neo_F3KDB(Y=100,Cb=100,Cr=100,GrainY=0,GrainC=0)

I found that putting the Deblock_QED call after converting to 16bits made for LSD flashback-style output; does this mean that it only accepts 8bit input?

Also, while gathering the needed dependencies for Deblock_QED in the DeblockPack.avsi, I encountered the plugin BlockDetect (https://github.com/Asd-g/AviSynthPlus-BlockDetect) and wondered what it does. Well, I can read what it does, but don't understand why it would be used. Thanks.

I tested and Deblock_QED works fine in HBD.
The Deblock dependency has nothing to do with BlockDetect, its Deblock (https://github.com/299792458m/Avisynth-Deblock), here's the avisynth entry page (http://avisynth.nl/index.php/DeBlock). It's basically a deblock filter, Deblock_QED limits the deblocking to the block edges.

Maybe the issue is on the other filters?

tormento
3rd January 2025, 15:02
@tormento, this is more or less the high freq grain, but I'm not sure you can do something with it.
Thank you and welcome back!

Please notice a fix for your scripts here (https://forum.doom9.org/showthread.php?p=2012441#post2012441).

P.S: MysteryX told me that he is not using Windows anymore and is not interested in further development. What about merging its source with ExTools or so?

P.P.S: Would be possible to have motion compensated BM3D_CUDA and KnlMeansCL?

anton_foy
6th January 2025, 18:20
Thank you and welcome back!

Please notice a fix for your scripts here (https://forum.doom9.org/showthread.php?p=2012441#post2012441).

P.S: MysteryX told me that he is not using Windows anymore and is not interested in further development. What about merging its source with ExTools or so?

P.P.S: Would be possible to have motion compensated BM3D_CUDA and KnlMeansCL?

I am maybe wrong but does not knlmeanscl use some kind of motion compensation already? Try it with 'd=12' and see how it acts. BM3D is already using block matching.

tormento
6th January 2025, 20:47
I am maybe wrong but does not knlmeanscl use some kind of motion compensation already? Try it with 'd=12' and see how it acts. BM3D is already using block matching.
You are absolutely right for BM3D, I don't know nlmeans enough to answer you.

My request was originated by the large amount of time and processing required by BM3D for the block matching. I am just curious to know if results could be better or not.

LouieChuckyMerry
26th January 2025, 20:15
I tested and Deblock_QED works fine in HBD.
The Deblock dependency has nothing to do with BlockDetect, its Deblock (https://github.com/299792458m/Avisynth-Deblock), here's the avisynth entry page (http://avisynth.nl/index.php/DeBlock). It's basically a deblock filter, Deblock_QED limits the deblocking to the block edges.

Maybe the issue is on the other filters?

Thanks for your patience, Dogway :) . I've Deblock, DCTFilter, ExTools, and ResizersPack, all the latest x64 versions, but the simple call Deblock_QED results in the error message:

Avisynth open failure: Script error: There is no function named 'Deblock_deblock'... DeblockPack.avsi, line 148.

Any thoughts?

Dogway
28th January 2025, 09:30
I've Deblock, DCTFilter, ExTools, and ResizersPack, all the latest x64 versions, but the simple call Deblock_QED results in the error message:

Any thoughts?

You should test separately to see why does it happen.

Here (https://forum.doom9.org/showthread.php?p=1976974#post1976974)'s the reasoning about the basename for the call.


Basically there are a few Deblock functions, so the basename was to determine from which plugin it came.

Basically load a blocky source and try with this:
Deblock_deblock(quant=24,aOffset=1,bOffset=2)

tormento
28th January 2025, 12:28
You should test separately to see why does it happen.
Please, when you have time, have a look here (https://github.com/Dogway/Avisynth-Scripts/issues/92).

LouieChuckyMerry
30th January 2025, 19:51
You need to download Deblock (https://github.com/299792458m/Avisynth-Deblock/releases) plugin.

The plugin prefix Deblock_ is to not be confused with other Deblock called functions, it was a change in 2014 by GMJCZP.
It shouldn't trigger an error, it doesn't for me. As Reel.Deel stated the plugin should be called Deblock.dll (case insensitive).

Thank you :thanks: . I always name my .dlls and .avsis with the version number and architecture (like Neo_FFT3D__64bit.dll or Neo_F3KDB9_0__64bit.dll) because it helps me keep track of them (and I need all the help I can get, ha ha) and have never had a problem until now. Renaming the Deblock .dll from "Deblock1_3__64bit" to just "Deblock" fixed the problem. Thank you again, be well.

salvo00786
30th March 2025, 10:55
Hi... I have a problem with qtgmc+...

This is my script:
QTGMCp(Preset="Placebo", TR0=2, TR1=2, TR2=0, Rep0=7, Rep1=7, Rep2=7, DCT=5, SourceMatch=3, Lossless=1, MatchPreset="Placebo", MatchPreset2="Placebo", MatchEnhance=1.0, MatchTR2=2, EZKeepGrain=1.0, Sharpness=0.2, Sbb=3, ThSCD1=250, ThSCD2=95, NoiseProcess=0, SMode=2, SLMode=4, Subpel=4, Search=5, PelSearch=7, SearchParam=7, Overlap=8, EdiMode="EEDI3CL+NNEDI3CL", Ediqual=2, ChromaMotion=True, TrueMotion=true, Precise=True, NNeurons=4)

When I use the same script on the old QTGMC with EdiMode="EEDI3+NNEDI3CL" (mix cpu and gpu) and Edithreads=16, I have a speed of 25fps. When I use the complete script on qtgmc+ with EdiMode="EEDI3CL+NNEDI3CL" (total gpu) but without edithreads=16 (because in qtgmc+ edithreads is not accepted), I have 2fps encoding speed.

Yesterday I removed one by one all the setting in my script and I found that this occur only when I use Sourcematch... If delete Sourcematch the speed go at 30fps... Please can you tell me why this occur and can you give me the latest version of qtgmc+ with edithreads? Or do you have some other solution for me?

Also, what are the maximum values for rep0 rep1 and rep2?

Selur
30th March 2025, 11:56
can you give me the latest version of qtgmc+ with edithreads?
https://github.com/Dogway/Avisynth-Scripts/blob/master/MIX%20mods/QTGMC%2B.avsi, there is no edithreads, it's called Threads here.

Also, what are the maximum values for rep0 rep1 and rep2?
https://github.com/Dogway/Avisynth-Scripts/blob/c6a837107afbf2aeffecea182d021862e9c2fc36/MIX%20mods/QTGMC%2B.avsi#L1599

salvo00786
30th March 2025, 14:57
[QUOTE=Selur;2017056]https://github.com/Dogway/Avisynth-Scripts/blob/master/MIX%20mods/QTGMC%2B.avsi, there is no edithreads, it's called Threads here.

Yes, I know, but I am searching for an older version of qtgmc+ after 4.0, like 4.0p with edithreads (if exist)

Selur
30th March 2025, 15:26
you can get the older versions on the github page too,....

Dogway
4th April 2025, 22:43
@salvo00786, can you check the speed in qtgmc+ when using full cpu "EEDI3+NNEDI3"?, Try also setting 'Threads' to 16, and then without the setting (defaults).

If it goes slow, then play with the 'Threads' value in this line in ResizersPack.
https://github.com/Dogway/Avisynth-Scripts/blob/c6a837107afbf2aeffecea182d021862e9c2fc36/ResizersPack.avsi#L997

GPU versions ignore 'Threads' as usual. From what I recall mixing cpu and gpu in heavy scripts create some race conditions that harm performance. I typically run GPU when they are like 2 (maybe 3 max) simple filters in line.