Page 1 of 3

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 6:05 am
by Sharc
What went wrong here? Look at the strong color ghosting for PVBob. :shock: The other bobbers are clean.....
Source and sample here:
http://www.mediafire.com/file/w364x2sin ... adios_.zip

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 8:58 am
by admin
Looks like something is not working right. ;)

OK, the VPP apparently wants its pitch to be mod 64. 1920 / 64 = 30, so it works fine. 1440 / 64 = 22.5, so it fails. I changed the VPP re-pitching to mod 64 and it fixes this issue. If you resize to width=1920 it also works without this fix.

I'll slipstream a fix for this and the delay later this morning after final testing.

Thanks for pointing this out. nVidia told me this VPP feature is experimental, so we are learning by experiment. 8-)

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 9:23 am
by Guest
gonca wrote:PVBob looks good, but did I notice a little softness in the two bobbers?
Only really noticeable on a frame by frrame advance
After viewing the latest comparison by Sharc I retract my statement.
The comparisons look good, new issues apart

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 9:56 am
by admin
Please test the new slipstream, guys. Thanks!

I prefer bug reports in the relevant threads rather than this talk thread, if possible, but no big deal. Thank you.

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 11:27 am
by Sharc
admin wrote:Looks like something is not working right. ;)

OK, the VPP apparently wants its pitch to be mod 64. 1920 / 64 = 30, so it works fine. 1440 / 64 = 22.5, so it fails. I changed the VPP re-pitching to mod 64 and it fixes this issue. If you resize to width=1920 it also works without this fix.

I'll slipstream a fix for this and the delay later this morning after final testing.

Thanks for pointing this out. nVidia told me this VPP feature is experimental, so we are learning by experiment. 8-)
Yep, it's ok now. Thanks.

Re: CUDA Suggestions and Talk

Posted: Mon May 22, 2017 12:00 pm
by admin
Cool, thanks!

Re: CUDA Suggestions and Talk

Posted: Tue May 23, 2017 4:55 pm
by Sharc
More comparison:
Not that it really matters in practice but you can see the bobbing artifacts around the drummer's (motion blurred) sticks around frame 850 or 1600, and the sharpness of the strings + shadows of the strings near Gilmour's right hand around frame 3000. QTGMC is shining, I think.

http://www.mediafire.com/file/yxwzx2ur1 ... kFloyd1.ts

The source is here. I encoded only a part of it for the comparison:
http://www.mediafire.com/file/r1628fpwz ... 080i25.mkv

Re: CUDA Suggestions and Talk

Posted: Tue May 23, 2017 6:11 pm
by admin
Thanks for that, Sharc. I'll have a look after I get this last fix slipstreamed.

Re: CUDA Suggestions and Talk

Posted: Wed May 24, 2017 8:44 am
by admin
My two cents on Sharc's comparison: For sure, QTGMC is the best. I don't see it doing especially better with detail retention, but rather better at avoiding artifacts in motion blur. Whether you can see anything significantly better when played at normal speed is debatable, and whether the improvement is worth the large performance penalty is a matter for users to weigh. It's clear that TDeint is much worse both in artifacts and aliasing.

I can make a script with DGSource(deinterlace=2) and even add NLM denoising for UHD video and get 80 fps at 13% CPU, leaving gobs of CPU for encoding, or allowing for real-time playback of 24/25 fps source. Can one do that with QTGMC/KNLMeansCL?

Re: CUDA Suggestions and Talk

Posted: Wed May 24, 2017 12:12 pm
by Sharc
Is DGSource(deinterlace=2) the same as PVBob()?

Re: CUDA Suggestions and Talk

Posted: Wed May 24, 2017 2:33 pm
by admin
Theoretically yes for functionality, but it will be slower.

Re: CUDA Suggestions and Talk

Posted: Wed May 24, 2017 7:10 pm
by hydra3333
admin wrote:My two cents on Sharc's comparison: For sure, QTGMC is the best. I don't see it doing especially better with detail retention, but rather better at avoiding artifacts in motion blur. Whether you can see anything significantly better when played at normal speed is debatable, and whether the improvement is worth the large performance penalty is a matter for users to weigh. It's clear that TDeint is much worse both in artifacts and aliasing.

I can make a script with DGSource(deinterlace=2) and even add NLM denoising for UHD video and get 80 fps at 13% CPU, leaving gobs of CPU for encoding, or allowing for real-time playback of 24/25 fps source. Can one do that with QTGMC/KNLMeansCL?
No, one can't, by a country mile. That is significantly better than 1-5 fps (end to end).

Per the strong default settings (for me) in DGDenoise viewtopic.php?f=14&t=506&p=6281#p6281 I reckon I'm in a position to fiddle up a new set of scripts without QTGMC to process much loved 576i/1080i footy games. eg something like a simple

Code: Select all

DGsource(deinterlace=2) 
use some old deblocker (yes, still sourcing an example for DG)
DGdenoise(strength=0.03) # stronger, 0.06 for other than footy clips
DGsharpen(strength=0.3) # to be played with for a generic setting suitable for those clips
reinterlace
Did you have some fancier script in mind ?

Thanks !

Re: CUDA Suggestions and Talk

Posted: Wed May 24, 2017 8:23 pm
by admin
It's hard to say without seeing a sample of your source. Generally speaking, I prefer a light hand in the processing department. Why don't you post up a sample for us?

Re: CUDA Suggestions and Talk

Posted: Thu May 25, 2017 1:27 am
by Sharc
hydra3333 wrote:
admin wrote:My two cents on Sharc's comparison: For sure, QTGMC is the best. I don't see it doing especially better with detail retention, but rather better at avoiding artifacts in motion blur. Whether you can see anything significantly better when played at normal speed is debatable, and whether the improvement is worth the large performance penalty is a matter for users to weigh. It's clear that TDeint is much worse both in artifacts and aliasing.

I can make a script with DGSource(deinterlace=2) and even add NLM denoising for UHD video and get 80 fps at 13% CPU, leaving gobs of CPU for encoding, or allowing for real-time playback of 24/25 fps source. Can one do that with QTGMC/KNLMeansCL?
No, one can't, by a country mile. That is significantly better than 1-5 fps (end to end).
Well yes, there exists no CUDA/GPU based QTGMC yet ..... and the "better" will always be the enemy of the "very good" ;)
Speed matters to me mainly for testing or for playing scripts in real-time. Encoding jobs can run overnight.

Re: CUDA Suggestions and Talk

Posted: Mon Jun 26, 2017 4:18 pm
by Guest
To bring back the requests made by Hydra333 and myself into the light
DGDeblock
DGResizer
DGencNV

Please understand that I am not trying to push these requests, these are when you have time and if you are in the mood.
Your paper is first
Just digging them out from the comparison posts
Your dedication and loyalty to the DGTools users is appreciated :bow:

Re: CUDA Suggestions and Talk

Posted: Tue Jun 27, 2017 8:20 am
by admin
Still waiting for the materials I requested (sample clips and existing deblocking methods used successfully) to get started on DGDeblock. Did they get posted and I missed it?

Re: CUDA Suggestions and Talk

Posted: Tue Jun 27, 2017 3:44 pm
by Guest
admin wrote:Still waiting for the materials I requested (sample clips and existing deblocking methods used successfully) to get started on DGDeblock. Did they get posted and I missed it?
As far as I know Hydra333 did not post them.
Maybe this will serve as a reminder to him

Re: CUDA Suggestions and Talk

Posted: Wed Jun 28, 2017 7:52 am
by hydra3333
dg didn't miss anything. it would server as a reminder.
hydra3333 is terribly lazy and hasn't posted any useful sample, although it seems possible it may happen in the next 2 weeks or so (job permitting, i.e. if not busy looking for a new one) :|

Re: CUDA Suggestions and Talk

Posted: Wed Jun 28, 2017 8:07 am
by admin
Take your time, hydra3333. I'm busy too on another project for several weeks. I hope your employment situation resolves in a beneficial way for you.

Re: CUDA Suggestions and Talk

Posted: Fri Sep 21, 2018 1:50 am
by hydra3333
On a separate tack, I see that cuda toolkit version 10 is released, along with the usual need for the latest driver.

https://docs.nvidia.com/cuda/cuda-toolk ... index.html

I wonder, does this affect any of DG's tools and/or present any opportunity for further DG magic ?

I note with interest in the release notes
Added support for peer-to-peer (P2P) with CUDA on Windows
which would probably be worth clarifying (CUDA supported programmatic chatting with other computers on the net ?).

Re: CUDA Suggestions and Talk

Posted: Fri Sep 21, 2018 5:07 am
by admin
I'm not seeing anything obviously useful but let's see. One downside of upgrading to later CUDA toolsets is that we have to leave some older cards unsupported. I hate to have to do that.

Re: CUDA Suggestions and Talk

Posted: Wed Oct 31, 2018 5:00 am
by Guest 2
Do you thing is feasible to port a CUDA version of DFTTest and/or FFTFilter? The first above all is really CPU time consuming.

Re: CUDA Suggestions and Talk

Posted: Wed Oct 31, 2018 9:50 am
by admin
I'll have a look as time permits.

Re: CUDA Suggestions and Talk

Posted: Thu Dec 13, 2018 1:22 am
by Chris
Hi Donald,

do I use DGBob correctly so far?

Code: Select all

DGBob(order=-1, mode=0)
And when or why would I want to use mode 1 or 2? I noticed that a 25fps movie is shown as a 50fps movie with mode 1 and as a 25fps movie with mode 2 but with double the runtime.

Also I think since I'm using DGSource I'm good using order -1, right?

As another question: Is there also a resize filter I could use from you that runs on CUDA support? :)

Re: CUDA Suggestions and Talk

Posted: Thu Dec 13, 2018 8:59 am
by admin
Assuming you are using the DGBob() from DGDecodeNV.dll and not the obsolete stand-alone filter, that looks fine.

mode 0 makes a smaller encode but loses motion fluidity
mode 1 makes a larger encode but keeps motion fluidity
mode 2 is to create a slow-motion effect.

Yes, DGBob() can take the field order from DGSource().

DGSource() can resize on the GPU. Use the rw and rh parameters.