1 (edited by KnightRiderKARR 30-03-2022 12:45:54)

Topic: My Custom Script Setting Opinion (Smooth like DmitriRender)

Some users (like me) don't like SVP 4 because is less smooth in some scenes (even if you use maximum settings). Big thanks to @melmel5180 who found the custom script and im really satisfied.

**Im not guarantee that will work 100%*** - This method is worked on me with SVP 4.5.0.213 on Windows 10 21H1 (i7 860 and GTX 960) (~55% CPU Usage at 1080p video)

##Update 16/3/2022##

1) Open SVP Control Panel:
- Frames Interpolation Mode = "Uniform"
- SVP Shader = "Complicated"
- Artifacts masking = "Disabled"
- Search Radius  = "Large"
- Width of top coarse = "Large"
(other motion vector options doesn't matter)
- Frame Conversion = "Whatever you want"

2) Press "Windows Key+R" and type %APPDATA%\SVP4

3) Open override.js with the text editor

4) Copy and paste the following text between /***** INSERT BELOW THIS LINE *****/  and  /***** INSERT ABOVE THIS LINE *****/ ---> Save (Overwriting)

levels.pel = 1;
levels.scale.up    = 1;
levels.scale.down    = 1;
levels.full     = true;
analyse.block.w    = 32;
analyse.block.h    = 32;
analyse.block.overlap    = 2;
analyse.main.levels    = 4;
analyse.main.search.type   = 8;
analyse.main.search.distance = -8;
analyse.main.search.coarse.type  = 4;
analyse.main.search.coarse.distance  = -16;
analyse.main.search.coarse.bad.range  = 0;
analyse.main.penalty.lambda   = 1.0;
analyse.main.penalty.plevel   = 4.0;
analyse.main.penalty.lsad   = 800;
analyse.main.penalty.pnew   = 5;
analyse.main.penalty.pglobal   = 5;
analyse.main.penalty.pzero   = 10;
analyse.main.penalty.pnbour   = 5;
analyse.main.penalty.prev   = 0;
analyse.refine[0] = {thsad:2000, search:{distance:2, type:4}};
smooth.algo = 23;
smooth.scene.mode = 0;
smooth.mask.cover = 20;
smooth.mask.area = 8;
smooth.mask.area_sharp = 0.70;
smooth.scene.limits.m1 = 3600;
smooth.scene.limits.m2 = 7200;
smooth.scene.limits.scene = 10400;
smooth.scene.limits.zero = 10;
smooth.scene.limits.blocks = 60;


If you have high CPU usage or you see more artifacts try change some of these:
analyse.block.overlap    = 1 (Less artifacts but not perfect motion detail)
analyse.main.search.coarse.distance  = -8;     (Less Accuracy)
smooth.mask.area = 16;  (Less artifacts - maybe good for anime)


Example: (On Youtube description see SVP settings for details)
https://www.youtube.com/watch?v=6gotKZoS4N8

Try and tell me if its good or not smile

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

Hi,

Looks good to me so far! CPU usage is pretty low on my I5 12600K even with 4K videos.

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

ITN wrote:

Hi,

Looks good to me so far! CPU usage is pretty low on my I5 12600K even with 4K videos.

I'm glad to hear that smile - I saw that all Intel 10th Generation CPUs are very powerful

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

Bruuh, what happen if you limiting the screen refresh rate to 48Hertz so the frame rate from 24fps or interlaced 23.976fps in some fast panning scene get better result?

5 (edited by KnightRiderKARR 15-03-2022 13:01:50)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

farion wrote:

Bruuh, what happen if you limiting the screen refresh rate to 48Hertz so the frame rate from 24fps or interlaced 23.976fps in some fast panning scene get better result?

If you mean convert at 48fps with 48Hz you will see more artifacts - its better to have 60Hz or more and use "to screen".

If you have interlaced source be sure to enable "Deinterlacing" on ffdshow (see screenshot)

Post's attachments

interlace fix.jpg, 66.29 kb, 551 x 471
interlace fix.jpg 66.29 kb, 171 downloads since 2022-03-15 

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

Can we make it a little better? Did you find better values than those above?

7 (edited by KnightRiderKARR 15-03-2022 12:24:49)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:

Can we make it a little better? Did you find better values than those above?

analyse.main.search.coarse.distance  = -24;   (a little bit better but it needs more CPU - especially if scene is on forest)
analyse.block.h    = 16;  (better smooth but more artifacts)

For now i dont have better values....

I personally use "Artifacts masking = disabled"  and  "analyse.block.overlap    = 1"  because i have 144Hz monitor and i interpolate to 144fps (if you have 144Hz or more its better to interpolate as screen refresh rate)

8 (edited by cemaydnlar 15-03-2022 17:22:37)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

KnightRiderKARR wrote:
cemaydnlar wrote:

Can we make it a little better? Did you find better values than those above?

analyse.main.search.coarse.distance  = -24;   (a little bit better but it needs more CPU - especially if scene is on forest)
analyse.block.h    = 16;  (better smooth but more artifacts)

For now i dont have better values....

I personally use "Artifacts masking = disabled"  and  "analyse.block.overlap    = 1"  because i have 144Hz monitor and i interpolate to 144fps (if you have 144Hz or more its better to interpolate as screen refresh rate)

I have a 144hz monitor too but i use it on 120 because it's the best for both 24 and 30fps. You mentioned above that analyse.block.overlap =1 decreases smoothness what i want is max smoothness with max detailed smoothness just like rife. Therefore, i will try analyse.main.search.coarse.distance and analyse.block.h settings for now. Thx for the reply.

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:

I have a 144hz monitor too but i use it on 120 because it's the best for both 24 and 30fps. You mentioned above that analyse.block.overlap =1 decreases smoothness what i want is max smoothness with max detailed smoothness just like rife. Therefore, i will try analyse.main.search.coarse.distance and analyse.block.h settings for now. Thx for the reply.

Yes "analyse.block.overlap =1" will decrease detail smoothness (i mean less accuracy on small objects like text when vinyl record is rotating) but if you disable the artifacts masking then you have overall better smoothness but little more artifacts.

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

I cannot find these options when I open the SVP Control Panel, where are they exactly?

1) Open SVP Control Panel:
- Frames Interpolation Mode = "Uniform"
- SVP Shader = "Complicated"
- Artifacts masking = "Weakest"
- Search Radius  = "Large"
- Width of top coarse = "Large"
(other motion vector options doesn't matter)
- Frame Conversion = "Whatever you want"

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

You need to add custom SVP profile to get access to manual profile settings
https://www.svp-team.com/wiki/Manual:FRC

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

KnightRiderKARR wrote:
cemaydnlar wrote:

I have a 144hz monitor too but i use it on 120 because it's the best for both 24 and 30fps. You mentioned above that analyse.block.overlap =1 decreases smoothness what i want is max smoothness with max detailed smoothness just like rife. Therefore, i will try analyse.main.search.coarse.distance and analyse.block.h settings for now. Thx for the reply.

Yes "analyse.block.overlap =1" will decrease detail smoothness (i mean less accuracy on small objects like text when vinyl record is rotating) but if you disable the artifacts masking then you have overall better smoothness but little more artifacts.

Ok so here are my thoughts. Biggest difference happens when i select weakest artifact masking. So in order to get max smoothness you have to select disabled no matter what. With analyse.block.overlap setting and masking disabled it is good for artifacts but in my opinion you lose a lot of smoothness. When you don't change analyse.block.overlap then it starts to produce a lot of artifacts when you watch movies. Basically you have max smoothness but it is unwatchable. In the end i have no idea how you can combine standart analyse.block.overlap setting with disabled masking and still get as little artifacts as you get with analyse.block.overlap =1 setting. I will write it down if i find a solution for it.

13 (edited by KnightRiderKARR 16-03-2022 18:49:01)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:
KnightRiderKARR wrote:
cemaydnlar wrote:

I have a 144hz monitor too but i use it on 120 because it's the best for both 24 and 30fps. You mentioned above that analyse.block.overlap =1 decreases smoothness what i want is max smoothness with max detailed smoothness just like rife. Therefore, i will try analyse.main.search.coarse.distance and analyse.block.h settings for now. Thx for the reply.

Yes "analyse.block.overlap =1" will decrease detail smoothness (i mean less accuracy on small objects like text when vinyl record is rotating) but if you disable the artifacts masking then you have overall better smoothness but little more artifacts.

Ok so here are my thoughts. Biggest difference happens when i select weakest artifact masking. So in order to get max smoothness you have to select disabled no matter what. With analyse.block.overlap setting and masking disabled it is good for artifacts but in my opinion you lose a lot of smoothness. When you don't change analyse.block.overlap then it starts to produce a lot of artifacts when you watch movies. Basically you have max smoothness but it is unwatchable. In the end i have no idea how you can combine standart analyse.block.overlap setting with disabled masking and still get as little artifacts as you get with analyse.block.overlap =1 setting. I will write it down if i find a solution for it.

Try add these:

smooth.mask.area            = 16;    (i use 8)
smooth.mask.area_sharp        = 0.70;


(its alternative artifacts masking)

This help to reduce artifacts but im not sure if does good job overall - for now i have better results with analyse.block.overlap = 2

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

KnightRiderKARR wrote:
cemaydnlar wrote:
KnightRiderKARR wrote:

Yes "analyse.block.overlap =1" will decrease detail smoothness (i mean less accuracy on small objects like text when vinyl record is rotating) but if you disable the artifacts masking then you have overall better smoothness but little more artifacts.

Ok so here are my thoughts. Biggest difference happens when i select weakest artifact masking. So in order to get max smoothness you have to select disabled no matter what. With analyse.block.overlap setting and masking disabled it is good for artifacts but in my opinion you lose a lot of smoothness. When you don't change analyse.block.overlap then it starts to produce a lot of artifacts when you watch movies. Basically you have max smoothness but it is unwatchable. In the end i have no idea how you can combine standart analyse.block.overlap setting with disabled masking and still get as little artifacts as you get with analyse.block.overlap =1 setting. I will write it down if i find a solution for it.

Try add these:

smooth.mask.area            = 16;    (i use 8)
smooth.mask.area_sharp        = 0.70;


(its alternative artifacts masking)

This help to reduce artifacts but im not sure if does good job overall - for now i have better results with analyse.block.overlap = 2

My settings look like this right now.
levels.pel = 2;
levels.scale.up    = 2;
levels.scale.down    = 4;
levels.full     = true;
analyse.block.w    = 32;
analyse.block.h    = 32;
analyse.block.overlap    = 1;
analyse.main.levels    = 4;
analyse.main.search.type   = 8;
analyse.main.search.distance = -8;
analyse.main.search.coarse.type  = 4;
analyse.main.search.coarse.distance  = 3;
analyse.main.search.coarse.bad.range  = -1;
analyse.main.penalty.lambda   = 1.0;
analyse.main.penalty.plevel   = 4.0;
analyse.main.penalty.lsad   = 800;
analyse.main.penalty.pnew   = 5;
analyse.main.penalty.pglobal   = 5;
analyse.main.penalty.pzero   = 10;
analyse.main.penalty.pnbour   = 5;
analyse.main.penalty.prev   = 0;
analyse.refine[0] = {thsad:2000, search:{distance:2, type:4}};
smooth.algo = 23;
smooth.scene.mode = 0;
smooth.mask.cover = 20;
smooth.scene.limits.m1 = 3600;
smooth.scene.limits.m2 = 7200;
smooth.scene.limits.scene = 10400;
smooth.scene.limits.zero = 10;
smooth.scene.limits.blocks = 60;

It's smoothness is good but yet again artifacts everywhere in fast paced scenes. It also creates halos around people which can be reduced by changing block.w and block.h to 16 yet again this works for movies not for anime. Animes tend to create more artifacts with 16.

15 (edited by KnightRiderKARR 16-03-2022 20:33:49)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:

My settings look like this right now.

It's smoothness is good but yet again artifacts everywhere in fast paced scenes. It also creates halos around people which can be reduced by changing block.w and block.h to 16 yet again this works for movies not for anime. Animes tend to create more artifacts with 16.

Changing block.w and block.h to 16 is good for 720p or lower - at 1080p i see more artifacts.
With ""smooth.mask.area"" and ""smooth.mask.area_sharp"" does reduce artifacts little better than "Artifacts Masking" from SVP Control Panel

16 (edited by cemaydnlar 22-03-2022 15:02:38)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

KnightRiderKARR wrote:
cemaydnlar wrote:

My settings look like this right now.

It's smoothness is good but yet again artifacts everywhere in fast paced scenes. It also creates halos around people which can be reduced by changing block.w and block.h to 16 yet again this works for movies not for anime. Animes tend to create more artifacts with 16.

Changing block.w and block.h to 16 is good for 720p or lower - at 1080p i see more artifacts.
With ""smooth.mask.area"" and ""smooth.mask.area_sharp"" does reduce artifacts little better than "Artifacts Masking" from SVP Control Panel


After days of trying these are the best settings you will get for max smoothness min artifact.

levels.pel = 2;
levels.gpu = 0;
levels.scale.up = 2;
levels.scale.down = 4;
levels.full = true;
analyse.vectors = 3;
analyse.block.w = 32;
analyse.block.h = 32;
analyse.block.overlap = 2;
analyse.main.levels = 4;
analyse.main.search.type = 4;
analyse.main.search.distance = -12;
analyse.main.search.sort = true;
analyse.main.search.satd = false;
analyse.main.search.coarse.type = 4;
analyse.main.search.coarse.distance = 3;
analyse.main.search.coarse.satd = true;
analyse.main.search.coarse.trymany = false;
analyse.main.search.coarse.width = 1050;
analyse.main.search.coarse.bad.sad = 1000;
analyse.main.search.coarse.bad.range = -1;
analyse.main.penalty.lambda = 10.0;
analyse.main.penalty.plevel = 4.0;
analyse.main.penalty.lsad = 8000;
analyse.main.penalty.pnew = 50;
analyse.main.penalty.pglobal = 50;
analyse.main.penalty.pzero = 110;
analyse.main.penalty.pnbour = 75;
analyse.main.penalty.prev = 0;
analyse.refine[0].thsad = 2000;
analyse.refine[0].search.type = 4;
analyse.refine[0].search.distance = 2;
analyse.refine[0].search.satd = false;
analyse.refine[0].penalty.lambda = 10.0;
analyse.refine[0].penalty.lsad = 8000;
analyse.refine[0].penalty.pnew = 50;
smooth.algo = 21;
smooth.block = false;
smooth.cubic = 0;
smooth.linear = true;
smooth.mask.cover = 50;
smooth.mask.area = 0;
smooth.mask.area_sharp = 1.0;
smooth.scene.mode = 0;
smooth.scene.force13 = true;
smooth.scene.luma = 1.5;
smooth.scene.blend = false;
smooth.scene.limits.zero = 10;
smooth.scene.limits.blocks = 60;
smooth.scene.limits.m1 = 3600;
smooth.scene.limits.m2 = 7200;
smooth.scene.limits.scene = 10400;

Artifact masking disabled. Svp shader 21. Frame rate conversion to screen.

17 (edited by KnightRiderKARR 21-03-2022 21:00:36)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:
KnightRiderKARR wrote:
cemaydnlar wrote:

My settings look like this right now.

It's smoothness is good but yet again artifacts everywhere in fast paced scenes. It also creates halos around people which can be reduced by changing block.w and block.h to 16 yet again this works for movies not for anime. Animes tend to create more artifacts with 16.

Changing block.w and block.h to 16 is good for 720p or lower - at 1080p i see more artifacts.
With ""smooth.mask.area"" and ""smooth.mask.area_sharp"" does reduce artifacts little better than "Artifacts Masking" from SVP Control Panel


After days of trying these are the best settings you will get for max smoothness min artifact.


Artifact masking disabled. Svp shader 21. Frame rate conversion to screen.

Invalid script.... I tried to update components but still invalid.....

If i remove those scripts then it works... :
analyse.refine[0].thsad = 2000;
analyse.refine[0].search.type = 4;
analyse.refine[0].search.distance = 2;
analyse.refine[0].search.satd = false;
analyse.refine[0].penalty.lambda = 10.0;
analyse.refine[0].penalty.lsad = 8000;
analyse.refine[0].penalty.pnew = 50;

I dont know why all analyse.refine[0] scripts not working on me......

levels.gpu = 0;     does good job on the edges but in few scenes the smoothness is not very good and CPU usage is very high


Overall is better with these custom scripts that we posted here -- i dont know if we can have the very smoothness like Optical Flow from Davinci Resolve but i think its very hard to do...

18 (edited by cemaydnlar 22-03-2022 17:49:50)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

KnightRiderKARR wrote:
cemaydnlar wrote:
KnightRiderKARR wrote:

Changing block.w and block.h to 16 is good for 720p or lower - at 1080p i see more artifacts.
With ""smooth.mask.area"" and ""smooth.mask.area_sharp"" does reduce artifacts little better than "Artifacts Masking" from SVP Control Panel


After days of trying these are the best settings you will get for max smoothness min artifact.


Artifact masking disabled. Svp shader 21. Frame rate conversion to screen.

Invalid script.... I tried to update components but still invalid.....

If i remove those scripts then it works... :
analyse.refine[0].thsad = 2000;
analyse.refine[0].search.type = 4;
analyse.refine[0].search.distance = 2;
analyse.refine[0].search.satd = false;
analyse.refine[0].penalty.lambda = 10.0;
analyse.refine[0].penalty.lsad = 8000;
analyse.refine[0].penalty.pnew = 50;

I dont know why all analyse.refine[0] scripts not working on me......

levels.gpu = 0;     does good job on the edges but in few scenes the smoothness is not very good and CPU usage is very high


Overall is better with these custom scripts that we posted here -- i dont know if we can have the very smoothness like Optical Flow from Davinci Resolve but i think its very hard to do...

Try deleting analyse.refine[0] = {thsad:2000, search:{distance:2, type:4}}; this to make refine scripts work. For lowering your gpu and cpu usage you can try to set your mpc-hc acceleration setting to dxva2 copy-back. I made a couple of updates on my script try it out. The problem about the script i posted is it doesn't look as good as melts or yours when it comes to smoothness detail.

19 (edited by KnightRiderKARR 22-03-2022 18:24:13)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:
KnightRiderKARR wrote:
cemaydnlar wrote:

After days of trying these are the best settings you will get for max smoothness min artifact.


Artifact masking disabled. Svp shader 21. Frame rate conversion to screen.

Invalid script.... I tried to update components but still invalid.....

If i remove those scripts then it works... :
analyse.refine[0].thsad = 2000;
analyse.refine[0].search.type = 4;
analyse.refine[0].search.distance = 2;
analyse.refine[0].search.satd = false;
analyse.refine[0].penalty.lambda = 10.0;
analyse.refine[0].penalty.lsad = 8000;
analyse.refine[0].penalty.pnew = 50;

I dont know why all analyse.refine[0] scripts not working on me......

levels.gpu = 0;     does good job on the edges but in few scenes the smoothness is not very good and CPU usage is very high


Overall is better with these custom scripts that we posted here -- i dont know if we can have the very smoothness like Optical Flow from Davinci Resolve but i think its very hard to do...

Try deleting analyse.refine[0] = {thsad:2000, search:{distance:2, type:4}}; this to make refine scripts work. For lowering your gpu and cpu usage you can try to set your mpc-hc acceleration setting to dxva2 copy-back. I made a couple of updates on my script try it out. The problem about the script i posted is it doesn't look as good as melts or yours when it comes to smoothness detail.

I copy all your script but still same..... Maybe every script depends on video/movie witch you test.

For my tests i try with these 3 videos (downloaded):
- MacGyver - Season 1 - Intro (BluRay)
- Neo vs Smith Clones [Part 1] | The Matrix Reloaded [Open Matte]
- The Shamen - Ebeneezer Goode (Pop Unlimited channel)  This is ultimate test for me because all scenes are extremely fast and with original SVP the smoothness is very bad - i personally try at original resolution from DVD 720x576

My goal is extreme smoothness with little artifacts (less as possible) and low CPU Usage

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

Nurk still looks better https://www.svp-team.com/forum/search.p … er_id=7145 if you dont have GPU/time for RIFE

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

dlr5668 wrote:

Nurk still looks better https://www.svp-team.com/forum/search.p … er_id=7145 if you dont have GPU/time for RIFE

Its almost same but with different values + added smooth.mask.area (replace SVP artifacts masking) and deleted "smooth.rate.num" and "smooth.rate.den" because its bad and useless (you have fps choices on SVP Control Panel)

RIFE is good but in very fast scenes does not smooth....

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

Are these settings suitable for cartoons and anime or are they meant to be used for live-action scenes?  Or are they meant for all of it?

23 (edited by KnightRiderKARR 30-03-2022 12:28:14)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

BiroZombie wrote:

Are these settings suitable for cartoons and anime or are they meant to be used for live-action scenes?  Or are they meant for all of it?

Those settings is for all (Very smooth and low cpu usage as possible) - Especially for movies/actions

For anime if you see artifacts then change some values:  analyse.block.overlap    = 1;    and     smooth.mask.area = 16;

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

I tried these settings and they are good, but *not* as smooth as DmitriRender. And there are more artifacts in some places, like in this scene from Winter Soldier: https://mega.nz/file/RNoFTRSI#ff2Ftwxg6 … 0ZDuFOQsrY

https://i.imgur.com/zKwl6dp.png

Tried all settings variations suggested on this thread but I didn't see any improvement in the artifacts in this scene or smoothness compared to DmitriRender.

Is there any way to really make it smoother?

25 (edited by dawkinscm 30-08-2022 10:50:28)

Re: My Custom Script Setting Opinion (Smooth like DmitriRender)

cemaydnlar wrote:

After days of trying these are the best settings you will get for max smoothness min artifact.

levels.pel = 2;
levels.gpu = 0;
...
smooth.scene.limits.m2 = 7200;
smooth.scene.limits.scene = 10400;

Artifact masking disabled. Svp shader 21. Frame rate conversion to screen.

This made my slow pans much smoother but also made artifacts more visible with fast motion action. I think it was always there but now I have clearly seen it, I can't unsee it. When you pause a fast action scene the screen looks like it is melting. So I've stopped using SVP.