1 (edited by Blackfyre 29-12-2020 09:47:43)

Topic: Achieving 100% Maximum Smoothness with 0 Artifacts

Edited to remove content.

Don't Worry People, it doesn't work. I am an idiot sometimes lol

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

mmm... nvof_grid = 0 gives a script error with "division by zero" and nvof_grid = 1 gives another script error

in fact, NVOF engine works with 4*4 px block only wink
so "4px" in SVP is just "search 4*4 blocks on the original frame size"
and "8px" --> "search 4*4 blocks on the frame reduced by 2 in both directions"

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Chainik wrote:

mmm... nvof_grid = 0 gives a script error with "division by zero" and nvof_grid = 1 gives another script error

in fact, NVOF engine works with 4*4 px block only wink
so "4px" in SVP is just "search 4*4 blocks on the original frame size"
and "8px" --> "search 4*4 blocks on the frame reduced by 2 in both directions"

Interesting yeah after exiting SVP when writing this post and going back, it was defaulting back to 4px. So I think it was defaulting back to 4px for maximum smoothness, but 4px still shows minimal artifacts. Maybe I can add a little masking to improve it.

I will edit the original post to write I am an idiot haha

Anyway, so how can I achieve 4px with 4K HDR content? Would upgrading the graphics card help this? Or is nvof_grid CPU related? Or it doesn't matter which RTX videocard because they all perform the same with Optical Flow?

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

> Anyway, so how can I achieve 4px with 4K HDR content?

I think it's more CPU-related

> Or it doesn't matter which RTX videocard because they all perform the same with Optical Flow?

yep

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Chainik wrote:

> Or it doesn't matter which RTX videocard because they all perform the same with Optical Flow?

yep

Correct me if I'm wrong, but don't the Ampere GPUs support a couple of new features including 2x2 and 1x1 grids in the Optical Flow SDK 2.0?

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

I think we're talking about _performance_. Blackfyre has a performance issues playing 4K @4px blocks, and this is NOT because his 2070 is too slow in NVOF.

And I don't think 1x1 blocks are useful for us. 4x4 is more than enough.

7 (edited by Blackfyre 29-12-2020 17:56:12)

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Chainik wrote:

I think we're talking about _performance_. Blackfyre has a performance issues playing 4K @4px blocks, and this is NOT because his 2070 is too slow in NVOF.

And I don't think 1x1 blocks are useful for us. 4x4 is more than enough.

When I was checking with 1080p, with every step decreased. From 16 to 8, then 8 to 4. The number of artifacts were heavily decreased. At 4, there are still few artifacts, but most of them can be masked with artifact masking.

So if Ampere can do 2px and 1px as reported above, can someone with an Ampere GPU please test it?

I am CPU bound correct, since I cannot even do 4px at 4K, and even 8px in some very heavy scenes it would drop frames.

But theoretically if I upgrade the CPU to a Zen 3 5800X or 5900X and the GPU to an Ampere GPU, then I could possibly use 1px with both 4K and 1080p content.

EDIT: The above link posted doesn't actually say Optical Flow 2.0 is exclusive to Ampere.

It says "NEW to 2.0: - Support for Ampere generation GPUs, with improved optical flow hardware engine, independent of NVENC"

So does that mean the other features of 2.0 like improved accuracy and 1px and 2px are available for Turing too?

Does it only require a driver update to test? Or does SVP have to be updated too to support Optical Flow 2.0 with the new SDK? @Chainik

EDIT 2: nVidia Optical Flow 2.0 is exclusive to GA100 and above, so Ampere only is correct.

Would be great if someone with Ampere GPU and a decent CPU can test px1 please.

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Blackfyre wrote:
Chainik wrote:

I think we're talking about _performance_. Blackfyre has a performance issues playing 4K @4px blocks, and this is NOT because his 2070 is too slow in NVOF.

And I don't think 1x1 blocks are useful for us. 4x4 is more than enough.

When I was checking with 1080p, with every step decreased. From 16 to 8, then 8 to 4. The number of artifacts were heavily decreased. At 4, there are still few artifacts, but most of them can be masked with artifact masking.

So if Ampere can do 2px and 1px as reported above, can someone with an Ampere GPU please test it?

I am CPU bound correct, since I cannot even do 4px at 4K, and even 8px in some very heavy scenes it would drop frames.

But theoretically if I upgrade the CPU to a Zen 3 5800X or 5900X and the GPU to an Ampere GPU, then I could possibly use 1px with both 4K and 1080p content.

EDIT: The above link posted doesn't actually say Optical Flow 2.0 is exclusive to Ampere.

It says "NEW to 2.0: - Support for Ampere generation GPUs, with improved optical flow hardware engine, independent of NVENC"

So does that mean the other features of 2.0 like improved accuracy and 1px and 2px are available for Turing too?

Does it only require a driver update to test? Or does SVP have to be updated too to support Optical Flow 2.0 with the new SDK? @Chainik

EDIT 2: nVidia Optical Flow 2.0 is exclusive to GA100 and above, so Ampere only is correct.

Would be great if someone with Ampere GPU and a decent CPU can test px1 please.

I have a OC'd 3060ti, do i just go into the manual settings and switch accuracy to 1 and check for artifacts? also what profile and shader do you want me to use? i can put together a little video if you'd like

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

I have no idea how install the new nvidia optical flow 2.0 sdk. I want to try using 2x2px and 1px accuracy but im not sure how to install it can someone help me?

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

You don't need to install it. Comes packaged with the drivers when you install them, supported by the GPU via hardware. You just need a Turing GPU to use Optical Flow 1.0 and an Ampere GPU to use the features of 2.0 (such as 2px or 1px for motion vector grid).

If you have those GPU's you just enable it in SVP to use it.

11 (edited by Blackfyre 30-12-2020 04:46:14)

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Kaminominaaa wrote:

I have a OC'd 3060ti, do i just go into the manual settings and switch accuracy to 1 and check for artifacts? also what profile and shader do you want me to use? i can put together a little video if you'd like

Frame Interpolation Mode: Uniform (Max Fluidity)

SVP Shader: Standard

Artifact Masking: Strong

Motion Vectors Options (NVIDIA Optical Flow)

Accuracy: High

Motion Vectors Grid

Go to ALL SETTINGS by right clicking the SVP Icon, Application Settings, Additional Options, All Settings...

Scroll all the way down in the settings until you find the PROFILE that you're using, your own Manual Profiles (which I am sure you have named), the name would be under title for that section.

Change only nvof_grid for that profile to 1

Exit All Settings.

Motion Vectors Grid: This should now say Custom: 1 for your profile in SVP Control Panel.

This is all assuming that when you use 4px your CPU can handle it already, so trying 2px and 1px will be even harder for the CPU, your video might start dropping frames. But if it doesn't and your CPU handles it, let us know if you see less artifacts now and better smoothness.

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

SVP doesn't support 1x1 motion vectors right now
and I really don't think it should
from what I read that 1x1 vectors field is just the same hardware-interpolated 4x4 field

13 (edited by Blackfyre 30-12-2020 11:09:09)

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Chainik wrote:

SVP doesn't support 1x1 motion vectors right now
and I really don't think it should
from what I read that 1x1 vectors field is just the same hardware-interpolated 4x4 field

Oh okay, fair enough. That's good to know.

Might be worth trying to test it internally and amongst the beta testers with Ampere cards and see the outcomes.

EDIT:

Wanted to ask, what about nVidia claims for Optical Flow 2.0?

- Increased accuracy in flow vector’s cost, which indicates the confidence of the vector

- Hardware optical-flow-assisted object tracker library

Do these improve the quality of Optical Flow over Turing GPU's? Or are they only performance enhancements and not visual improvements?

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

> Do these improve the quality of Optical Flow over Turing GPU's?

no idea... if yes then it's already "improved" with the drivers update

15 (edited by Fortune424 05-01-2021 23:48:44)

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Blackfyre wrote:
Kaminominaaa wrote:

I have a OC'd 3060ti, do i just go into the manual settings and switch accuracy to 1 and check for artifacts? also what profile and shader do you want me to use? i can put together a little video if you'd like

Frame Interpolation Mode: Uniform (Max Fluidity)

SVP Shader: Standard

Artifact Masking: Strong

Motion Vectors Options (NVIDIA Optical Flow)

Accuracy: High

Motion Vectors Grid

Go to ALL SETTINGS by right clicking the SVP Icon, Application Settings, Additional Options, All Settings...

Scroll all the way down in the settings until you find the PROFILE that you're using, your own Manual Profiles (which I am sure you have named), the name would be under title for that section.

Change only nvof_grid for that profile to 1

Exit All Settings.

Motion Vectors Grid: This should now say Custom: 1 for your profile in SVP Control Panel.

This is all assuming that when you use 4px your CPU can handle it already, so trying 2px and 1px will be even harder for the CPU, your video might start dropping frames. But if it doesn't and your CPU handles it, let us know if you see less artifacts now and better smoothness.

Why do you use standard shader instead of complicated? I was under the assumption complicated was better than standard, just heavier on the system.

Are those the settings you would recommend for the best looking SVP possible? I have a R9 3900X and 2080Ti and am looking for the best 1080P/4K experience. Right now my settings are this: https://i.imgur.com/j0QtZp9.png

If I use 4px at 4K it just freezes. Not sure what the issue is there, with 8px at 4K it's only like 20% CPU usage and I have 32GB of RAM.

Thank you!

16 (edited by Blackfyre 06-01-2021 22:28:42)

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Fortune424 wrote:

Why do you use standard shader instead of complicated? I was under the assumption complicated was better than standard, just heavier on the system.

Are those the settings you would recommend for the best looking SVP possible? I have a R9 3900X and 2080Ti and am looking for the best 1080P/4K experience. Right now my settings are this: https://i.imgur.com/j0QtZp9.png

If I use 4px at 4K it just freezes. Not sure what the issue is there, with 8px at 4K it's only like 20% CPU usage and I have 32GB of RAM.

Thank you!

For best results, IMO:

Frame Interpolation Method should be on Uniform, and SVP Shader on Standard.

With your hardware, I wouldn't use nVidia Optical Flow. Test my settings below, change Artifact Masking level to your liking (do not use strongest, it hurts smoothness too much, strong is good).

https://imgur.com/a/3zHwYNl

Decrease motion vector grid as much as you can without it causing delayed or dropped frames.

Without nVidia Optical Flow, I can do 1080p at motion vector grid 16px and motion vectors precision at half pixel. But for 4K I use motion vector grid 32px and motion vectors precision at one pixel. My CPU is not strong enough, and without nVidia Optical Flow, most of the work is done by the CPU. I get better results with the settings in the picture above, than using 8px with nVidia Optical Flow. There's just too many artifacts for my liking with nVidia Optical Flow, and even though Custom 850 covers most of it, they are still very visible on the edges of the screen with optical flow.

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

Do you guys really prefer uniform ? U-1m-2m is slightly less smooth with less artifacts

Re: Achieving 100% Maximum Smoothness with 0 Artifacts

dlr5668 wrote:

Do you guys really prefer uniform ? U-1m-2m is slightly less smooth with less artifacts

It has been a while since I tested after I settled with the above, I will do some more testing with Adaptive Uniform 1m-2m and Complicated Shader combined with 850 masking value.