Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 3rd June 2020, 04:33   #121  |  Link
MeteorRain
結城有紀
 
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
almosely: I figured out the issue. Please stand by for r8.

kedautinh12: Any reason why I should add them back?
__________________
Projects
x265 - Yuuki-Asuna-mod Download / GitHub
TS - ADTS AAC Splitter | LATM AAC Splitter | BS4K-ASS
Neo AviSynth+ filters - F3KDB | FFT3D | DFTTest | MiniDeen | Temporal Median
MeteorRain is offline   Reply With Quote
Old 3rd June 2020, 05:11   #122  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 2,156
I will replace fft3dfilter with neo-fft3d in TemporalDegrain2 use for myself. But TemporalDegrain2 need them to work, can you add them back?
kedautinh12 is offline   Reply With Quote
Old 3rd June 2020, 05:38   #123  |  Link
MeteorRain
結城有紀
 
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
I don't get it. Why TemporalDegrain2 needs them? The function of both parameters have been removed.

FFT3DFilter(plane=degrainPlane, sigma=limitSigma, sigma2=s2, sigma3=s3, sigma4=s4, bt=3, bw=limitBlksz, bh=limitBlksz, ow=overlap, oh=overlap, ncpu=fftThreads)

Change plane=degrainPlane to y=LumaNoise?3:2, u=ChromaNoise?3:2, v=ChromaNoise?3:2, and remove ncpu=fftThreads.
__________________
Projects
x265 - Yuuki-Asuna-mod Download / GitHub
TS - ADTS AAC Splitter | LATM AAC Splitter | BS4K-ASS
Neo AviSynth+ filters - F3KDB | FFT3D | DFTTest | MiniDeen | Temporal Median
MeteorRain is offline   Reply With Quote
Old 3rd June 2020, 05:40   #124  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 2,156
Quote:
Originally Posted by MeteorRain View Post
I don't get it. Why TemporalDegrain2 needs them? The function of both parameters have been removed.

FFT3DFilter(plane=degrainPlane, sigma=limitSigma, sigma2=s2, sigma3=s3, sigma4=s4, bt=3, bw=limitBlksz, bh=limitBlksz, ow=overlap, oh=overlap, ncpu=fftThreads)

Change plane=degrainPlane to y=LumaNoise?3:2, u=ChromaNoise?3:2, v=ChromaNoise?3:2, and remove ncpu=fftThreads.
Thanks, sr for my noob requested

Last edited by kedautinh12; 3rd June 2020 at 06:03.
kedautinh12 is offline   Reply With Quote
Old 3rd June 2020, 08:54   #125  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 2,156
Hi, i meet error when replace dfttest with neo_dfttest in TemporalDegrain2, i checked and findout neo_dfttest missing lsb. I was removed lsb but i meet error: "clip should be of same size!", can you add lsb again??
kedautinh12 is offline   Reply With Quote
Old 3rd June 2020, 09:03   #126  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
In general you don't need lsb stuff per filter, since avs+ provides filters to transform to/from stacked format. (conversion is lossless)
ConvertBits(16).neo_dfttest(...).ConvertToStacked() will be the same as dfttest(..., lsb=true)
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 3rd June 2020, 09:31   #127  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 2,156
Quote:
Originally Posted by DJATOM View Post
In general you don't need lsb stuff per filter, since avs+ provides filters to transform to/from stacked format. (conversion is lossless)
ConvertBits(16).neo_dfttest(...).ConvertToStacked() will be the same as dfttest(..., lsb=true)
it's work, many thanks
kedautinh12 is offline   Reply With Quote
Old 6th June 2020, 13:48   #128  |  Link
almosely
Registered User
 
Join Date: Dec 2006
Location: Germany
Posts: 91
Quote:
Originally Posted by MeteorRain View Post
almosely: I figured out the issue. Please stand by for r8.

kedautinh12: Any reason why I should add them back?
Thank you :-) I will test and report ...

- edit -

Tested the functionality and it works fine :-) I did not compare the outcome with fft3dfilter.

Last edited by almosely; 7th June 2020 at 12:04.
almosely is offline   Reply With Quote
Old 29th June 2020, 01:36   #129  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
I want to try neo_FFT3D

I don't understand
y, u, v (AviSynth+ only)

Whether a plane is to be filtered.

1 - Do not touch, leaving garbage data
2 - Copy from origin
3 - Process

1 and 2 are the same thing! What's the difference? They both don't touch the plane.

Last edited by Atlantis; 29th June 2020 at 01:44.
Atlantis is offline   Reply With Quote
Old 29th June 2020, 08:46   #130  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
Not really the same. 1 option will save time (no copy from src to dst), 2 option will do that copy and 3 option will actually process plane.
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 29th June 2020, 09:50   #131  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
What would be the use case for option 1? Because even if you want to use different settings for each plane, you use a combination of option 2 and 3.
Atlantis is offline   Reply With Quote
Old 29th June 2020, 10:09   #132  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
What would be the use case for option 1?
When you dont need any kind of result for that plane and speed is primary factor. [eg perhaps only interested in Luma plane, dont need U or V].
Other filters have the same type of options eg Masktools2.

Unprocessed planes will just contain whatever happened to be in that memory buffer before the filter processed that frame.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 29th June 2020 at 11:41.
StainlessS is offline   Reply With Quote
Old 29th June 2020, 11:06   #133  |  Link
MeteorRain
結城有紀
 
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
Quote:
Originally Posted by Atlantis View Post
I want to try neo_FFT3D

I don't understand
y, u, v (AviSynth+ only)

Whether a plane is to be filtered.

1 - Do not touch, leaving garbage data
2 - Copy from origin
3 - Process

1 and 2 are the same thing! What's the difference? They both don't touch the plane.
Option 1 doesn't guarantee the data is meaningful.

For example, if you only process 1 plane, then it will just use the source memory buffer, and the data in the source memory area remains, and thus you will see the original data untouched.

However if you process 2 planes, the final memory is then copied from 2 process engines, while the 3rd plane has garbage data. It saves you a memory copy every frame.

Quote:
Originally Posted by Atlantis View Post
What would be the use case for option 1? Because even if you want to use different settings for each plane, you use a combination of option 2 and 3.
Because some filters would split luma and chroma, and process then separately. In those cases, you'll end up throwing unused planes away and combining the final results. 1 will save you a tiny bit of time.

In reality, frame copy is not slow, and I have put optimizations to avoid unnecessary copies. It's not a big deal anyway.
__________________
Projects
x265 - Yuuki-Asuna-mod Download / GitHub
TS - ADTS AAC Splitter | LATM AAC Splitter | BS4K-ASS
Neo AviSynth+ filters - F3KDB | FFT3D | DFTTest | MiniDeen | Temporal Median
MeteorRain is offline   Reply With Quote
Old 29th June 2020, 12:36   #134  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
OK. So here is my use case. I want to use neo_fft3d and apply different sigmas to Y and U V. Please correct me if I'm wrong, I don't think that applying the same amount of noise reduction to all 3 planes is good. So what I have decided for myself is to add half of noise reduction I do on Y to U V.
I write this for example if this is correct

neo_fft3d(bt=5, sigma=4, u=2, v=2)
neo_fft3d(bt=5, sigma=2, y=2)

4 to Y and 2 to U V.
Is this correct and is the philosophy of adding half of Y to U V a good one?

One strange thing I noticed is that in the old FFT3DFilter if I apply the same sigma to all 3 planes, these is a little desaturation. The color of the picture is not as alive as if you apply it only to Y.
It seems in your filter neo_fft3d this doesn't happen. By default yours is processing all 3 planes and I see no desaturation which is good. Any idea why this happened in the old FFT3DFilter ?
Atlantis is offline   Reply With Quote
Old 29th June 2020, 12:43   #135  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
I am also testing neo_dfttest.

dfttest(U=false, V=false, sigma=96, tbsize=5)
encoded 8496 frames in 6158.00s (1.38 fps), 10137.46 kb/s, Avg QP:24.56

neo_dfttest(sigma=96, tbsize=5, u=2, v=2)
encoded 8496 frames in 5636.64s (1.51 fps), 7649.91 kb/s, Avg QP:24.54

Any idea why there is such a huge difference in the final output? 10137.46 kb/s vs 7649.91 kb/s?
Atlantis is offline   Reply With Quote
Old 29th June 2020, 13:14   #136  |  Link
crystalfunky
Registered User
 
Join Date: Apr 2010
Posts: 57
Will this be available in the next Staxrip version?
crystalfunky is offline   Reply With Quote
Old 29th June 2020, 14:05   #137  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
Ask stax76 here to include it
https://forum.doom9.org/showthread.php?p=1917053
I was also going to ask him. I'm going to do more tests.

In real world x265 encoding 4K HDR, neo_fft3d is definitely faster and I'm going to use neo_fft3d.
With neo_dfttest I don't see much improvement in speed.
Atlantis is offline   Reply With Quote
Old 30th June 2020, 22:27   #138  |  Link
Atlantis
Registered User
 
Join Date: Feb 2002
Posts: 758
FFT3D is missing scene change detection.
https://github.com/pinterf/fft3dfilter/issues/2

Sometimes you get bad frames with scene change. Like the image is not denoised. With bt=5 you get 4 bad frames and with bt=3 you get 2 bad frames. I noticed DFTTest does the same.

I have no idea how hard it is, can you add this feature? Any workaround? I'm going to open a topic only about this.
Atlantis is offline   Reply With Quote
Old 1st July 2020, 13:42   #139  |  Link
MeteorRain
結城有紀
 
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
I only port filters and optimize existing code. No new feature is implemented due to lack of skills and time.
__________________
Projects
x265 - Yuuki-Asuna-mod Download / GitHub
TS - ADTS AAC Splitter | LATM AAC Splitter | BS4K-ASS
Neo AviSynth+ filters - F3KDB | FFT3D | DFTTest | MiniDeen | Temporal Median
MeteorRain is offline   Reply With Quote
Old 3rd July 2020, 14:54   #140  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by kedautinh12 View Post
i see your neo-fft3d missing plane and ncpu for fft3dfilter, can you add it again??
ncpu should back as DFTTest has threads parameter, as now neo_FFT3D either just single thread or has some setting for multi threads

also, seems I get ignored again https://github.com/HomeOfAviSynthPlu...FFT3D/issues/3

maybe I should start put some notice that neo_** plugin are not Recommended and not officially supported as dogway did back then in SMDegrain with cretindesalpes/Firesledge moded mvtools http://web.archive.org/web/201312101...p?topic=2178.0
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 09:50.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.