View Full Version : Problem with fields
Mounir
18th February 2010, 07:20
I have a hard time with this video that needs a serious clean up
Sample here (~3mb):
http://www.sendspace.com/file/oyf8wi
I'm not quite good at guessing if a video needs an ivtc but maybe this is the case.Yet, i made a quick try with tmpgenc but the result wasn't satisfaying, lots of artifacts remained, some kind of ugly double field i don't know, i'm in the dark.
If you have an idea of what kind of processing it needs please post the code and specify what filter i'd need, that'll help a lot, thanks.
manono
18th February 2010, 08:18
It was resized without being IVTC'd. It's too late now to do anything.
Didée
18th February 2010, 13:30
If you manage to construct a "clean" fieldblending from the stripe'y mess, then FixBlendIVTC should be able to do something reasonable.
lanczos4resize(480,480).gaussresize(480,240,p=15).lanczos4resize(480,360)
FixBlendIVTC()
Didn't try if it works out, but it's the only chance that i see.
MatLz
18th February 2010, 14:22
Or blur(0,1).blur(0,1).blur(0,1) do a decent blending of these catastrophic artifacts.
Mounir
18th February 2010, 19:20
I tried your solution Didée but i get an error
Import ("C:\Program Files\AviSynth 2.5\plugins\FixBlendIVTC.avs")
DirectShowSource("C:\sample.mp4",FPS=29.970, ConvertFPS=true)
lanczos4resize(480,480).gaussresize(480,240,p=15).lanczos4resize(480,360)
FixBlendIVTC()
ConverttoRGB24(matrix="Rec709")
And the error:
Script error: there is no function named "mt_makediff"
'C:\Program Files\AviSynth 2.5\plugins\FixBlendIVTC.avs, line 78)
Didée
18th February 2010, 20:08
You also need mt_masktools-25.dll (http://manao4.free.fr/masktools-v2.0a36.zip). It's one of the bare essentials when working with Avisynth.
Moreover, my script was not quite complete. I had forgotten that FixBlendIVTC doesn't perform the decimation internally. It just reverses the blending, and leaves the required decimation up to the user.
This leads to
LoadPlugin("path\to\mt_masktools-25.dll")
Import ("C:\Program Files\AviSynth 2.5\plugins\FixBlendIVTC.avs")
DirectShowSource("C:\sample.mp4",FPS=29.970, ConvertFPS=true)
lanczos4resize(480,480).gaussresize(480,240,p=15).lanczos4resize(480,360)
FixBlendIVTC().TDecimate()
ConverttoRGB24(matrix="Rec709")
I just tried it on your sample, and it seems to work reasonably well. The restored frames are a bit noisy (which is normal), but the result as a whole is fluid.
Mounir
18th February 2010, 22:17
I have downloaded masktools-25 but now i get another error.
Script error: there is no function named "Average"
(C:\Program Files\AviSynth 2.5\plugins\FixBlendIVTC.avs, line 85)
Didée
18th February 2010, 22:52
OK, average.dll is a bit harder to find ... look e.g. here (http://www.64k.it/andres/dettaglio.php?sez=avisynth). ;)
Next error?
Mounir
18th February 2010, 23:08
My current script:
Import ("C:\Program Files\AviSynth 2.5\plugins\FixBlendIVTC.avs")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\masktools-v2.0a36\mt_masktools-25.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\TIVTC\TIVTC.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrain\RemoveGrain.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Average_21Oct05.dll")
##########################################
DirectShowSource("C:\sample.mp4",FPS=29.970, ConvertFPS=true)
lanczos4resize(480,480).gaussresize(480,240,p=15).lanczos4resize(480,360)
FixBlendIVTC().TDecimate()
ConverttoRGB24(matrix="Rec709")
Filters versions i use:
masktools / version v2.0a36
TIVTC / version: 1.0.5.0
RemoveGrain / version 0.9
Average / version 21Oct05
FixBlendIVTC.avs
Now i get an error with the Average .dll >> "Average_21Oct05.dll is not a valid windows image"
Yet i have downloaded it from here (http://forum.doom9.org/showthread.php?t=100626&highlight=Average), what the hell
Edit: i have downloaded Average.dll from your link Didée , i still get an error
Didée
18th February 2010, 23:31
Hmh. I never tried any of the "new" compiles, so can't tell if they work, or not, or whatever.
I'm still using mg262's original DLL, i.e. the "24Oct05" one that actually was compiled at the 24th of October, 2005 anno Domini. :D
Here it is. (http://www.mediafire.com/file/vgfimyh5uy0/Average_24Oct05.rar) For me, this one is definetly working.
zilog jones
19th February 2010, 00:24
What does Average do that Merge doesn't?
Mounir
19th February 2010, 00:53
Well i finally could make it work, there was a problemfor RemoveGrain (line 88) in FixBlendIVTC.avs, i have replaced value 19 by 4 or something
It seems to do the job i don't see lines nomore, thanks Didée
Didée
19th February 2010, 01:50
What does Average do that Merge doesn't?
Average( clip1,weight1, clip2,weight2, clip3,weight3, ...etc... )
Averaging of an arbitrary number of clips, using arbitrary weight factors for each element. Doing the same with Merge requires more mental arithmetic for the weights, and is less precise because you have 8bit rounding after each Merge step. Average is also faster for averaging of many clips. And finally, the nifty operation with *negative* weight (which MOmonster is using in that function), that you can't do at all with Merge. ;)
there was a problemfor RemoveGrain ... i have replaced value 19 by 4 or something
Not good. Replacing by 20 would've been acceptable. Mode 4 is quite different from 19.
Seems you didn't use Avisynth all too deeply in the last few years, no? :)
RemoveGrain v1.0 pre-1 (http://home.arcor.de/kassandro/RemoveGrain/RemoveGrain.rar). Use the ~SSE2.dll plugins. Not SSE3.
Mounir
19th February 2010, 02:04
iT4S A
Mounir
19th February 2010, 03:11
It's al good i use neatvideo after no need of a crazy value to remove grain
Didée
19th February 2010, 12:41
iT4S A
Whatever that may mean. The board language is english. L33t talk is not. If anything, l33t talk is childish.
It's al good i use neatvideo after no need of a crazy value to remove grain
Nothing is good. Because you don't understand what you're doing.
Those values aren't crazy. mode=19 is the average of 8 pixlels (3x3 square without center). mode=20 is the average of 9 pixels (3x3 square, all pixels). Mode=4 is a median filter, i.e. clipping-down the 4 biggest and the 4 smallest values in a 3x3 square.
You just happened to have a too old version of RemoveGrain. Nothing crazy with that.
However, if you just plainly refuse to use the more recent and working version which I pointed you to, then the word "crazy" starts to appear in an all-new context ...
And just FYI ... RemoveGrain in FixBlendIVTC has nothing to do with denoising of the result video. Nothing at all. Therefore, it is of zero interest if you used NeatVideo (or whichever denoiser else) afterwards ...
RemoveGrain is used internally so that FixBlendIVTC can make better measurements, and better estimates what it should do or what it should not do. If you randomly change things without having a clue, then the most probable thing to happen is that the function works worse than it should. At your responsibility.
Dogway
19th February 2010, 14:23
Didee: isn't FixBlendIVTC the "old version" of srestore? Does it offer other characteristics?
Didée
19th February 2010, 15:34
Yes, the actual Srestore has a mode that is equivalent to the older FixBlendIVTC. But I can't tell anything about possible differences. I remember some sporadic reports in the past that Srestore was not ~quite~ as good as the older FixBlend - but that's just hearsay, neither can I confirm that, nor could I negotiate that. I hardly ever have the need to fix such footage (precisely, two times during the last decade), so my experience is a bit limited in this particular case. :)
Another obstacle for an "I want to understand!"-guy like me: as good as Srestore does its job(s), the code is very compact, uses some dozens of variables with almost no comments, and the important part of the code consists mostly of endless AND AND OR AND OR OR AND.... operations on faceless three-letter-variables. Hence it is extremely hard to follow exactly what, exactly how, and exactly why Srestore is doing what it is doing.
In short, I don't know how Srestore is working in detail. (And have neither time nor mood to figure it out.) Since I don't understand it, I can't explain it, and I can't rate it.
Ergo: don't ask me. In this case, I'm a normal dummy user, just using those of the blackboxes of which I found that they do the job.
---
Just to be clear, this wasn't an offense. Somehow it seems to be inherent to deblending functions. Back when I did the (later) versions of Restore24, more often than not I did not understand my own script code....:D
zilog jones
19th February 2010, 15:51
Average( clip1,weight1, clip2,weight2, clip3,weight3, ...etc... )
Averaging of an arbitrary number of clips, using arbitrary weight factors for each element. Doing the same with Merge requires more mental arithmetic for the weights, and is less precise because you have 8bit rounding after each Merge step. Average is also faster for averaging of many clips. And finally, the nifty operation with *negative* weight (which MOmonster is using in that function), that you can't do at all with Merge. ;)
For some reason I was thinking it could only handle two clips - I knew there was some reasoning behind its existance. :)
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.