View Full Version : Convolution3D YV12&SMP for Avisynth 2.5
vlad59
16th November 2002, 22:43
Hi all,
I'm sorry to create a new thread for convolution3D but I think the new feature worth it (at least I hope).
After a lot of tests with the help of MaTTeR (Thanks again), we manage to have a version of threaded Convolution3D to allow greater speed for dual CPU box (MaTTeR reported +2~4 fps).
mono CPU users should not worry as there is no change for them.
The other big change is the possibility to process only luma or chroma plane to gain speed.
You can download it here (http://membres.lycos.fr/tempask/Convolution3DYV12.zip)
Thanks in advance for your feedback
abo_alkeem
17th November 2002, 03:57
thank u for ur work
can i use the same presets as YUV2?
vlad59
17th November 2002, 08:38
Yes, you can use the same presets.
ErMaC
17th November 2002, 10:14
Working great for me here, CPU usage is up in the 90% range instead of the 70% range and encoding times seem to be down. I don't have the time nor the patience to encode with both filters so I'll just trust my initial instinct and say it's faster :)
jorel
17th November 2002, 10:38
can you post the presets,please.
i was reading about(search)when you post the news
and thank u for ur work !
vlad59
17th November 2002, 10:48
@Jorel
all the presets are in the file convolution3D.txt in the zip file.
jorel
17th November 2002, 12:07
Originally posted by vlad59
@Jorel
all the presets are in the file convolution3D.txt in the zip file.
:D
all right,thanks master!:p
Prosper
17th November 2002, 18:24
Yahoo! Glad to start seeing some emphasis on multithreading! This will become more and more important in the future, with Intel's HT technology being (over)hyped a lot recently.
arman68
17th November 2002, 19:23
Thanks, great work... I was waiting for a YV12 version of your plugin to move to AVISynth 2.5 :D
Results from my initial tests: speed seems to be about twice as fast as old AviSynth 2.06+ + C3D 1.01 on my P4!!!
MaTTeR
18th November 2002, 01:06
A big thanks again Vlad:) Hope we can start seeing a little more multi-threading in the video realm for CPU intensive filters and apps.
vlad59
19th November 2002, 13:14
It seems I forgot to add all the new .h file in the zip.
I'll fix that as soon as I get home (next friday).
sh0dan
19th November 2002, 14:10
Could I request case IN-sensitive preset names - I've been annoyed by this a few times, so I guess other people might as well ;)
Thanks!
vlad59
19th November 2002, 14:17
@Sh0dan
Yes, of course. As soon as I remember how to upcase a string (there is too much Java in my head).
Defiler
19th November 2002, 16:49
vlad:
Would you like me to update the website with this version, or should this remain only on the forum, because it relies on a beta version of Avisynth?
vlad59
19th November 2002, 17:20
Originally posted by Defiler
vlad:
Would you like me to update the website with this version, or should this remain only on the forum, because it relies on a beta version of Avisynth?
Yes if you have time, I thought you was too busy (As you wasn't posting as much as before). But it will be interesting to add it in special alpha web page to provide clear information about the alpha state of the avisynth 2.5 project. If you have time, I'm also looking for somewhere to host TemporalCleaner.
Thanks in advance for your help.
Defiler
19th November 2002, 18:00
No problem. I still read the forums here just as much.. I've just been spending more time at AVSforum. I'll be happy to host any filters you create. Just drop me an e-mail with the files attached.
vlad59
30th November 2002, 16:05
Hi all,
After a long week without any time to code I finally got some time this morning to fix some of the problem on Convolution3D for avisynth 2.5.
Here is the changelog :
2002/11/30 Beta 3 :
- Added little optimization on threshold checks
- Should now work with any mod2 width
- Checked some potential rounding problems
- added basic filtering to border pixels
- added case insensitive presets (for Sh0dan ;) :) )
And this time the source is totally included (but not enought commented).
You can download it using the link on the first post.
Happy testing.
@Defiler
I send you a mail in an hour or two with all the new filters (3) to host. Sorry for the delay but work was hard this week :o .
iago
30th November 2002, 16:35
That's great Vlad! Thanks for the new version! ;)
best regards,
iago
edit: The link above isn't working for me either.
MaTTeR
30th November 2002, 16:42
Thx for the new beta Vlad. Link isn't working for me though.
vlad59
30th November 2002, 17:16
You're right, it seems that lycos.fr don't like leeching anymore. You can download it by tweaking the referer in any download manager (if a moderator thinks it's no good to explain that feel free to edit my post).
I already sent a mail the Defiler to update the home page of C3D, I'm waiting for his reply. For now I'll attach my zip to this post.
iago
30th November 2002, 17:33
Vlad,
Ok, finally got the new version! ;)
Btw, I have a question: In the Convolution3DYV12.txt file it's noted that "Temporal Influence is currently disabled." So, for Convolution3DYV12.dll, when using the below line in a script:
Convolution3D (0,3,4,3,4,2.8,0)
[which is the same as preset Convolution3d(preset="movieHQ")]
What are the actual parameters used? Or is it that no temporal smoothing applied?
regards,
iago
vlad59
30th November 2002, 18:08
@iago
You're right, I could have been clearer : When I say that TemporalInfluence is disabled, that means that I will apply a 3D convolution to all pixels of the frame (so the compressibility gain will still be there).
With TemporalInfluence enabled, I'll only apply the 3D convolution to pixel where temporal information are usefull (no motion) and only a 2D convolution to pixels where temporal information is not usefull (fade, scenechange).
I have added this parameter to handle a little better fade in or fade out and it was also a good way to gain a little speed.
So to sum up : all threshold are handled as usual, but there is no special process for fade in/out.
Hope this helps ;) ;) ;)
cult
30th November 2002, 18:31
doesnt work for me.I get an unrecognized exception...
vlad59
30th November 2002, 18:33
@cult
Strange are you sure to be using avisynth 2.5 ?
I'm redownloading the filter and will retry with it.
EDIT : found it one of the optimization I add (some aligned variables) cause crash with Win98 but only with release build and I only tested debug build on this OS (Win2k has no problem with it).
vlad59
30th November 2002, 18:49
Here is a working version (with the exception error fixed)
I've also update the link on lycos.fr.
Sorry for that, I'm getting worse and worse with new release.
cult
30th November 2002, 18:49
yes,yv12 and w2k
vlad59
30th November 2002, 18:55
That's strange my W2K had no problem with it. But that's not important because those aligned variables wasn't speeding the process a lot.
drebel
30th November 2002, 19:56
Nore here...(duron,yv12,fixed vrs,win2000):)
vlad59
30th November 2002, 20:07
@Cult
Can you confirm that my last build (2 or 3 post up) fix your problem.
Thanks in advance
iago
30th November 2002, 20:14
Vlad,
Final version works here, whereas the previous didn't.
(Windows XP SP1, Celeron 900)
regards,
iago
cult
30th November 2002, 20:54
yes,it works now.Thank you:)
vlad59
30th November 2002, 20:59
@cult & iago
Thanks for the feedback.
I hope there won't another wrong thing .... ;)
Defiler
11th December 2002, 06:10
Sorry I've been absent from the forums for so long. Buying a new house. :)
Here's the beta page for Con3d:
http://hellninjacommando.com/con3d/beta
vlad59
11th December 2002, 08:49
@Defiler
Thanks a lot. I'll send other zips about TemporalCleaner (if you have more time now).
Strangely .... friday I'm also buying a new house .....
JohnMK
12th December 2002, 15:42
I'll try CV3D on my Pentium 4 3.06GHz in a few days, just to let you know how it fares on a HT-enabled machine.
vlad59
1st January 2003, 21:08
Hi all,
First happy new year to all of you and sorry to have been away so long.
Here is attached a test version of C3D for avisynth 2.5. It isn't an official version because I don't have time and enought different machine to test on so I request your help ;).
This new release contains some new optimizations and some bug fix (read the .txt included), so I would be interested by some bench (comparing with beta3) especially on AMD boxes (as Marc pointed me out that C3D is much too slow on his computer).
I've also added some debugview output (if debug <> 0) to show if SMP code is used or not it could explain some slowdown on some computers.
New fast mode (with 11 checks instead of 27 per pixel) if you use matrix 2 ou 3 (instead of 0 or 1). Less quality but more speed.
Next release will have temporal influence back so more speed with the same quality.
Happy testing
Guest
2nd January 2003, 07:49
BTTT
jorel
2nd January 2003, 07:51
thank you vm.:)
vlad59
2nd January 2003, 08:12
Originally posted by neuron2
BTTT
What does this mean ??????????
Guest
2nd January 2003, 08:28
Originally posted by vlad59
What does this mean ?????????? That means the approval of the attachment was delayed and so I decided to give you a "bump to the top" so people waiting for it won't forget. :)
vlad59
2nd January 2003, 17:44
@neuron2
Ok, .... I'm so slow to understand sometimes :confused: ;)
@all
no feedback :(
Everybody's sick (too much alcohol and food) ;)
iago
2nd January 2003, 19:20
@vlad,
Thanks a lot for the new version!
Btw, this temporal influence issue still confuses me :confused:.
Does it mean that Convolution3d(2,4,4,4,4,2.6,0), Convolution3d(2,4,4,4,4,3,0) and Convolution3d(2,4,4,4,4) (for example) are the same and will give the exact same results until temporal influence is activated again?
regards,
iago
edit: now, after a couple of tests, I am enlightened! Yes, they are the same and give the exact same results ;).
Defiler
4th January 2003, 00:14
vlad: Do you want me to update the beta page with this new version?
vlad59
4th January 2003, 07:34
Hi Defiler,
No I don't need it now as I forgot to update a specific function for avisynth2.5.
I think I'll send you a new release tonight or tomorrow.
Thanks again for hosting me
digitize
13th January 2003, 01:24
hmmm, perhaps this is the wrong place, or maybe this question has been asked, but i might as well ask. Vlad, is it possible for you to enable like a parameter for a larger spacial matrix (instead of 3x3, 5x5 like 2d and sshiq). If not that's fine, and keep up the good work :p.
AlphaDivxMovies
13th January 2003, 20:08
Hello everyone, first i would like to say that Convolution3d is the best noise reduction filter there is!
I really miss temporal influence in yv12 work but i`ve been thinking about some other (old) filters whose behaviour would complement the way convolution3d helps our sources.
Anyone ever used ShadowSmoother? It exists for Vdub and it is priceless for anime encoding and even video!
It locates dark areas (black)in each frame and depending on the values used it smooths out the image,Perfect for anime bitrate reduction and quality improvement and in about 3 situations (The Others, From Hell and the Ninth Gate) it avoided macroblocks in large shadow areas and this i checked and rechecked and only ShadowSmoother removed the effect.Quality wise it also looks more natural, perfect for lossy>lossy conversions. If Convolution3d could mimic this behaviour it would become a killer filter IMHO.
Quote:
"This filter was built to smooth (both spatial and temporal) the darkest parts of the picture in order to reduce the bitrate needed to encode such dark areas. The smoothing process runs row by row, each one by its own, without any vertical input.
The filter acts upon areas of variable radius in order to achieve 3 smoothing strengths.
Version 0.5 in addition to the 0.4 version the filter will lock pixels (use the previous frame pixel) that only differ half of the difference configured for the temporal smoothing (0 for 0 and 1, 1 for 2 and 3, 2 for 4 and 5 and so on."
I`ve also included the filter so anyone can try it, i cannot remember where i got it.
vlad59
14th January 2003, 08:19
Hi AlphaDivxMovies,
I remember I was looking for this filter 5 or 6 months ago but I never found it.
Thanks for attaching it to this thread. Do you or someone has the source as it's released under GPL ??
Don't worry for temporal influence I already made it work in some of my tests but for now the code is too crappy to be released. It's indeed a really great idea to add more smoothing to darkest part of a source. I'll see what I can do as soon as I get more time.
Thanks for your interest
AlphaDivxMovies
14th January 2003, 14:22
Refound it all for you vlad! These links are of some interest but i also posted the source code. Hope everyone makes good use of it.
Convolution3d is a great Temporal/Spatial denoiser, if one could complement it it would almost become a professional quality filter that should be made am integrant part of avisynth.
I will keep on thinking on suggestions and Vlad, if you need any help i am available, after a work acccident all i do all day is encode and scream of pain at certain points in time. God save drugs!
http://www.geocities.com/gc_timsara/vdub/ss/shadowsmoother07.htm
http://www.geocities.com/gc_timsara/vdub.html
Source code is around here:
vlad59
17th January 2003, 08:10
Here is attached the beta4 of Convolution3D (exactly the same code as my latest release) but with AvisynthPluginInit2 for better compatibility with avisynth 2.5 (Sorry Sh0dan for being late, I was in the middle of something)
As soon as it will be approved I'll remove the other beta4 release.
sh0dan
19th January 2003, 01:37
BTT (bump to top).
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.