Topic: Modifying options for Motion vectors grid

Hi: When I set Motion vectors grid to "24px. Large 2" I get practically no artifacts. At "16px. Average 0" I start to get noticeable artifacts but better smoothing of course.

How do I set up something like "20px. Average 0"  ?

Presumably I go to the Javascript file called "generate" and add a new entry to the following:

    case 32: analyse.block.w=32; analyse.block.overlap=0; break;
    case 28: analyse.block.w=32; analyse.block.overlap=1; break;
    case 24: analyse.block.w=32; break;
    case 16: analyse.block.overlap=0; break;
    case 14: analyse.block.overlap=1; break;
    case 12: break;
    case 8: analyse.block.w=8; analyse.block.overlap=0; break;
    case 7: analyse.block.w=8; analyse.block.overlap = profile.mv_refine ? 0:1; break;
    case 6: analyse.block.w=8; break;

Re: Modifying options for Motion vectors grid

For now there is no way to point 20px Motion vector grid.
You can try non square blocks.

analyse.block.w=32; analyse.block.h=16; break;

It will give you grid with 24px in horizontal direction and 12px in vertical direction.

Re: Modifying options for Motion vectors grid

Please don't do it in generate.js!
You have override.js for this PLUS a user defined options.

Re: Modifying options for Motion vectors grid

Hi: I already applied the changes to generate.js and it works fine. But I am happy to undo the changes.

However, how do I apply the modified settings in override.js ?

Somewhere in here?

/***** SVAnalyse options *****/

//analyse.vectors            = 3;
//analyse.block.w            = 16;
//analyse.block.h            = 16;
//analyse.block.overlap    = 2;

Re: Modifying options for Motion vectors grid

Somewhere in here?

/***** SVAnalyse options *****/

//analyse.vectors            = 3;
//analyse.block.w            = 16;
//analyse.block.h            = 16;
//analyse.block.overlap    = 2;

Yup, block.w controls how big the blocks are horizontally, and block.h controls how 'high' the blocks are vertically.
Also, you have to remove the '//' at the start of each line you wish to have an effect (they are commented out).
Also, set overlap = 3, it will give you much less artifacts.

If you are interested, these are the settings that work really good for me, however I strongly favor smoothness over artifacts and you will need a reasonably powerful PC to use them exactly as-is:

/***** SVSuper options *****/

levels.pel                = 3;
levels.gpu                = 0; //SUBJECTIVE: Compare performance and quality with gpu=1 for yourself

levels.scale.up            = 2;
levels.scale.down            = 4;
levels.full                = true;

/***** SVAnalyse options *****/

analyse.vectors            = 3;
analyse.block.w            = 16;
analyse.block.h            = 16;
analyse.block.overlap            = 3;

analyse.main.levels            = 0;
analyse.main.search.type        = 4;
analyse.main.search.distance        = -24;
analyse.main.search.sort        = true;
analyse.main.search.satd        = true; //VERY slow if 'true', but gives slightly higher quality
analyse.main.search.coarse.type    = 4;
analyse.main.search.coarse.distance    = -24;
analyse.main.search.coarse.satd    = true;
analyse.main.search.coarse.trymany    = true;
analyse.main.search.coarse.width    = 1920; //This is for 1080p content. Use 4096 for 4k, however it may crash, run out of memory, etc.
analyse.main.search.coarse.bad.sad    = 190;
analyse.main.search.coarse.bad.range    = -38;

analyse.main.penalty.lambda        = 11.2;
analyse.main.penalty.plevel        = 1.65;
analyse.main.penalty.lsad        = 4000;
analyse.main.penalty.pnew        = 40;
analyse.main.penalty.pglobal        = 50;
analyse.main.penalty.pzero        = 80;
analyse.main.penalty.pnbour        = 30;
analyse.main.penalty.prev        = 20;

analyse.refine[0].thsad        = 170;
analyse.refine[0].search.type        = 4;
analyse.refine[0].search.distance    = -38;
analyse.refine[0].search.satd        = true;
analyse.refine[0].penalty.lambda    = 9.8;
analyse.refine[0].penalty.lsad    = 3900;
analyse.refine[0].penalty.pnew    = 50;

/***** SVSmoothFps options *****/

smooth.rate.num            = 3; //Set this to auto, or to your <TargetFrameRate>/<SourceFrameRate>
smooth.rate.den            = 1;
smooth.algo                = 23;
smooth.block                = false;
smooth.cubic                = 1;
smooth.linear                = true; //Only works with GPU rendering, i.e. use gpu=1

smooth.mask.cover            = 40; //Therse values are your main trade-off between smoothness and artifacts
smooth.mask.area            = 15; //Making them larger decreases smoothness and obtrusive artifacts
smooth.mask.area_sharp        = 1.65; // See https://www.svp-team.com/wiki/Plugins:_SVPflow for details

smooth.scene.mode            = 0;
smooth.scene.force13        = false;
smooth.scene.luma            = 1.66;
smooth.scene.blend            = false;
smooth.scene.limits.m1        = 1600;
smooth.scene.limits.m2        = 2800;
smooth.scene.limits.scene        = 3000;
smooth.scene.limits.zero        = 180;
smooth.scene.limits.blocks        = 33; //Adjust this value for scene-change detection. Higher values makes it less sensitive and might cause it to try
                                                         //interpolating scene-changes!

6 (edited by lightc 02-11-2017 02:06:38)

Re: Modifying options for Motion vectors grid

Hi All,

I tried Xenonite settings and I was getting an error for having levels.pel=3. I noticed that the SVPflow wiki states you cannot set this value to 3. How was he able to do that? I had to change it to 2 or 1 to get ir running.

Also, I was getting an error that said 'cubic' not supported by CPU until I changed levels.gpu to 1 from 0 in his config.

I'm running SVP 3.17 on a i7-6700k with 16GB RAM. With his settings altered for the two changes above, I cannot get video to play smoothly at 60fps. Also, MPC-HC keeps crashing after a few seconds of the video (crashes faster with very high bitrate video). It still crashes even after applying the 4GB patch to the 32-bit executable.

If I revert backto the original override.js file from the SVP Core install, everything seems to run smoothly at 60fps but I still get crashes.

FYI, I used Xenonite's instructions here when installing all the necessary software: https://www.svp-team.com/forum/viewtopi … 862#p63862

Does anyone have any idea what I could be doing wrong?

Thanks in advance.
LightC



xenonite wrote:

Also, set overlap = 3, it will give you much less artifacts.

If you are interested, these are the settings that work really good for me, however I strongly favor smoothness over artifacts and you will need a reasonably powerful PC to use them exactly as-is: