Looks very promising indeed! Great work. Regarding usability, I think it would be great if you used named, optional parameters. If you are going to implement several different softeners (which is a great idea!) I think it would be easier to use. for some reason it's easier for me to remember 'c3d_matrix = "121"' than 'mode = 0' - that way you could also implement optional different thresholds for temporal softening, etc. Donalds filters are great inspiration for that. Does that make any sense? ps. a few fps more is good enough for me, if the filter gives me 3fps :) I'd be happy to look through your implementation - feel free to mail me the source :)
--------------------------------------------- www.dentsport.com Alex Grabau
>Looks very promising indeed! Great work. thx >Regarding usability, I think it would be great if you used named, >optional parameters. If you are going to implement several different >softeners (which is a great idea!) I think it would be easier to use. well, i have 5 methods : "c3d","a3d","m3d","a2d","m2d" and they all need the same parameters, so it makes sense i share them >for some reason it's easier for me to remember 'c3d_matrix = "121"' than > 'mode = 0' - that way you could also implement optional different >thresholds for temporal softening, etc. -> exactly the same as vlad's filter to avoid confusion. >Donalds filters are great inspiration for that. sure ^_^ >Does that make any sense? well, if i need to split things, i'll do it ^^ >ps. a few fps more is good enough for me, if the filter gives me 3fps >I'd be happy to look through your implementation - feel free to mail >me the source a few fps like 23+3 fps accessing unaligned data don't seem to be a big deal BTW, i could improve pairing, to make 8 check in 11 cycles (currently 13 or 14). but i don't think i can do it much faster ^^
Sorry Marc, but I don't manage to make that thing working. I always get a message saying Avisynth open failure deen : name list : 'c3d','a3d','m3d','a3d', or 'm2d' my script : LoadPlugin("C:\video\avsfilters\deenyv12.dll") avisource("f:\capture\capture.avi") converttoyv12() deen("c3d",1,10,12,3) bicubicresize(480,576,0,0.75) converttoyuy2() I've tried with native yv12 source : same message... Using W2000, AMD xp 1800+ and avisynth 2.5 build 29/12 So ? Regards, FuPP
strange. i'll check what could cause that. it worked flawlessly on MPEG-2 and AVI (MPEG-4) YV12 sources EDIT : i tested everything i could. i'm still unable to reproduce it. does anyone encounter the same problem ?
--------------------------------------------- MY 93 318i or 325 IS THE "#1 STANNA" which ever one-still badass to me!!!!!
Had the same problem. Here is what I did: - frameserving the following AVI files to VDubmod - XP SP1, P4-M File 1, AVI uncompressed - no chance to apply deen(), same error message as reported above File 2, AVI with code IV32 - no chance to apply deen(), same error message as reported above File 3, AVI with code dvsd - using AVISource(), deen() throws error message - using DirectShowSource(), deen() works - in the same VDub session, deen() works then even with AVISource() $
It happend very often, if you add "deen" after other filters. And the only way to make it work ( at least for me ) is to close VdubMod, and then Restart it. And at this moment, the script is ok. This error happen with "AViSource" and "Mpeg2Source". It happen with other filters and without other filters. The order of the "loadplugin" declaration (if there' many filters) has no effect. The order of the functions call has no effect too. And again, one of the easiest way to reproduce this error, is to make a script with 2-3 filters (1 internal + 2 external, like Conv3d and aSharp. Just need to load those plugins, not necessary use them), and then load this script in VdubMod. Then open the AvsEditor, and : 1) Replace the "LoadPlugin("Conv3d.dll")" by "LoadPlugin("deen.dll")" , and then add "deen("m2d",1,10,12)" for example 2) Add "LoadPlugin("deen.dll"), and then add "deen("m2d",1,10,12)" for example But with 1), it append more often. Like if there was a problem when 1 plugin was loading and another Unloading at the same time.. It doesn't happend every time, but really often. (sometimes you can make it work without closing/re-opening VdubMod, but just in adding a 5th parameter : "deen("m2d",1,10,12)" -> "deen("m2d",1,10,12,3)" . But again it's not 100% sure.).
@MarcFD: Yes - my own preliminary results show the same. I get a very good speedup in the processing part, but the initial realignment is _much_ slower than I anticipated. I am not finished with the tests, but I'm working on a mmx-optimized unpack (currently in C), that writes 4-byte aligned. Processingwise I'm able to test and blend 8 bytes in parallel, with a perframe-variable matrix. I cannot seem to fit in the temporal tests, that skips the temporal part - that work make the code branching, and probably slower. Now that the matrix is variable it could actually be funny to try adjusting it on a per-frame basis. Perhaps it could be merged with something along the lines of dup(), using the information to adjust blending.
--------------------------------------------- "Ruthless like the coupe"
>@MarcFD: Yes - my own preliminary results show the same. I get a very >good speedup in the processing part, no speedup at all. > but the initial realignment is >_much_ slower than I anticipated. not really for me. but it's simple code. no interleaving. maybe usefull for sse2 i think.