Log in

View Full Version : Not able to tackle the deinterlacing solution


Virtualdubmod
28th October 2011, 15:00
Been getting some minor problems deintlacing this stuff...
100% progressive but contains hell of ghosting.

Never worked on such a DVD9 before, so not getting it all. I Have gone trough over 50 - 60 threads around doom9 (this site)
to find something which would help...


have tried diffrent kind of filters like :
decimate, tgmc, srestore, yadif and other simple bobbers as well.

DVD Clip :


Click me (http://www.sendspace.com/file/7xhzbv)

Motenai Yoda
28th October 2011, 15:21
It isn't interlaced or telecined, it's bobbed / blended
try with some deblen or ghost removal

Virtualdubmod
28th October 2011, 16:03
Tried Lghost and FixblendIVTC and few more but didn't quite help. :(

Didée
28th October 2011, 16:11
Wrong filter. Try Srestore or FixBlendIVTC. Like so

FixBlendIVTC(post=3)
TDecimate()

-or-

SRestore(omode="pp3")
TDecimate()

Virtualdubmod
28th October 2011, 18:44
Didn't help that much Didee every fourth frame is full of blend & ghosting..
http://img510.imageshack.us/img510/8644/156k3.png
http://img528.imageshack.us/img528/7320/2e45j.png

Didée
28th October 2011, 19:39
Oh, indeed ... looking closer, it's not a case of "Blend IVTC". It seems that instead, they went for a "ConvertFPS"-style 24->25 conversion, with some aperture (like in BlendFPS from motion.dll) so that only 4 frames in a row are actually blended.

It's not impossible to revert the damage, I think there have been prior solutions for this.

The Q is why cannot the Indians manage to simply produce clean footage. Anything from India is technically damaged from start, and needs to be repaired.


(You have no idea how tired I am from finding miracles for other persons, just because of those crappy Indian films. Either don't watch them, or leave them as they are.)

Virtualdubmod
28th October 2011, 23:54
When it comes to Indian films, so they try first and foremost to produce some of the most difficult and technically damaged DVDs.

They think that maybe this helps to end the piracy lol.

the main problem I got was not really the ghosting I fix Many DVDs like that before.

But in this case I started to get headaches from keeping on with this. The fourth frame makes me go mad.

" Garbage in garbage out " Love your sentence, but in this DVD I may need your help :)

Virtualdubmod
29th October 2011, 13:13
ChangeFPS, convertfps & blendfps and even assumeFPS didn't help in this matter :( still a lot of ghosting and blend left.

Guest
30th October 2011, 00:36
ChangeFPS, convertfps and even assumeFPS didn't help in this matter :( still a lot of ghosting and blend left. Why do you think any of those filters would remove ghosting/blending?

You might as well say "I tried eating an apple but the ghosting is still there." :)

Also, please do not bump threads with "anyone?" on the same day. Give it a few days.

Didée
30th October 2011, 01:25
What *basically* works is RestoreFPS (forum.doom9.org/showthread.php?t=94091). RestoreFPS is intended to reverse a strictly linear blend-conversion of framerate.

Get the DLL from the MediaWiki page (http://avisynth.org/mediawiki/RestoreFPS).

But it won't work out in full. Alas the source isn't as strictly linear as the filter assumes. The dominant pattern is "2 clean - 4 blends". A strictly linear conversion would be "1 clean - 5 blends" (or somewhat close to that). Hence, the restauration of RestoreFPS will osscillate - trailing, leading, trailing, leading. Visually, that is "slight ghosting - slight negative ghosting - etc..."


I used this script to find the offset/'phi' for this very sample:
mpeg2source("G:\Benutzer\Dieter\Downloads\-00h04m37.d2v")
#crop(0,56,-0,-48,true)
crop(16,60,-16,-60,true)
oo=last ox=oo.width() oy=oo.height()

reduceby2()#.reduceby2()
bb=blankclip(last)

fps = 25

aa= restorefps(fps,0.00) .subtitle("phi = 0.00")
a = restorefps(fps,0.04) .subtitle("phi = 0.04")
b = restorefps(fps,0.08) .subtitle("phi = 0.08")
c = restorefps(fps,0.12) .subtitle("phi = 0.12")
d = restorefps(fps,0.16) .subtitle("phi = 0.16")
e = restorefps(fps,0.20) .subtitle("phi = 0.20")
f = restorefps(fps,0.24) .subtitle("phi = 0.24")
g = restorefps(fps,0.28) .subtitle("phi = 0.28")
h = restorefps(fps,0.32) .subtitle("phi = 0.32")
i = restorefps(fps,0.36) .subtitle("phi = 0.36")
j = restorefps(fps,0.40) .subtitle("phi = 0.40")
k = restorefps(fps,0.44) .subtitle("phi = 0.44")
l = restorefps(fps,0.48) .subtitle("phi = 0.48")
m = restorefps(fps,0.52) .subtitle("phi = 0.52")
n = restorefps(fps,0.56) .subtitle("phi = 0.56")
o = restorefps(fps,0.60) .subtitle("phi = 0.60")
p = restorefps(fps,0.64) .subtitle("phi = 0.64")
q = restorefps(fps,0.68) .subtitle("phi = 0.68")
r = restorefps(fps,0.72) .subtitle("phi = 0.72")
s = restorefps(fps,0.76) .subtitle("phi = 0.76")
t = restorefps(fps,0.80) .subtitle("phi = 0.80")
u = restorefps(fps,0.84) .subtitle("phi = 0.84")
v = restorefps(fps,0.88) .subtitle("phi = 0.88")
w = restorefps(fps,0.92) .subtitle("phi = 0.92")
x = restorefps(fps,0.96) .subtitle("phi = 0.96")
y = restorefps(fps,1.00) .subtitle("phi = 1.00")

stackvertical( stackhorizontal(aa,a,b,c,d),
\ stackhorizontal( e,f,g,h,i),
\ stackhorizontal( j,k,l,m,n),
\ stackhorizontal( o,p,q,r,s),
\ stackhorizontal( t,u,v,w,x),
\ stackhorizontal( y,bb,bb,bb,bb) )

and found that phi=0.68 to phi=0.8 is the most reasonable for this sample. But because the blendpattern isn't strictly linear, the sweetspot is oscillating - on some frames phi=0.68 would be ideal, on some frames phi=0.8 would be ideal. I see no easy way to make any kind of smart-adaption to the issue.

Maybe a merge of two different RestoreFPS filters with different phi's would be acceptable.

Note that when working on the full source, you need to re-figure the phi value.

Also check over the whole length if there's any "drift" happening. If so, break it up in chunks, process separately, and splice together again.

manono
30th October 2011, 02:06
It's a standard field-blended PAL2NTSC conversion followed by deinterlacing. I have reason to believe that the deinterlacing was done to the original retail DVD by someone later on. Where did you get this DVD?

Virtualdubmod
30th October 2011, 02:31
Thank you Didee! works like a charm :)

Manono : Every single indian dvd is messed up like this one nothing new :)

Didée
30th October 2011, 04:03
Well, I don't know anything about the origin. But manao's finding "standard fieldblended PAL2NTSC followed by deinterlacing" is not what I see here. The blending sequence is

a ab bc cd de e

with weightings of (roughly)

100/0 - 20/80 - 40/60 - 60/40 - 80/20 - 100/0

That isn't fieldblended PAL2NTSC + deinterlacing. (If it was, RestoreFPS wouldn't work out like it does.) Thats PAL-->NTSC in ConvertFPS style. Seems to me like some sort of "box" conversion applied directly to PAL origin.

Just guessing, though, from what I see in the sample.

manono
30th October 2011, 05:06
Manono : Every single indian dvd is messed up like this one nothing new :)
No they're not and I've seen more than you'll ever see. I ask again, this isn't the retail DVD, is it?

That isn't fieldblended PAL2NTSC + deinterlacing.
If we had the real source DVD, then we'd see.

Virtualdubmod
30th October 2011, 10:53
it is retail DVD.

manono
30th October 2011, 18:58
I don't believe you but can't really do much about it unless European Man or someone else comes along to confirm what you say or provide a sample of the real retail version.

I'm glad you found a solution for the problem, though, thanks to Didée, and maybe it'll help others with a similar problem.

Virtualdubmod
30th October 2011, 19:21
The solution given by Didee worked 100 percent, my encode is even in progress. looks 100 % clean now.
just had to do it variably as Didee said

Also check over the whole length if there's any "drift" happening. If so, break it up in chunks,
process separately, and splice together again.
I just used my Trim version, So i didn't really need to cut it in pieces and re-join it.

now it is 100% perfect

Virtualdubmod
9th November 2011, 19:22
Another similar DVD (input) : DVD (http://www.sendspace.com/file/t5dtwv)
Now my question is which one of the these to are properly deinterlaced? want an answer from Didee.
My work (output) : Output (vdm) (http://www.sendspace.com/file/u2fdep)
DRs work : DRs (http://www.sendspace.com/file/ve9o8s)

DRs vs iMN (http://screenshotcomparison.com/comparison/93042/picture:0)
There is something wiered someone is telling me that iMN one's is not correctly deinterlaced and DRs one is. Didee could you sort this out? will not take more then 2 mins

Virtualdubmod
9th November 2011, 19:28
and yes I went for RestoreFPS looked best for my eyes on this DVD as well. Did the same trimmed it up in round about 16 pieces and deinterlaced each of them with diffrent PHi which looked best for my eyes and rejoined them.

Didée
9th November 2011, 21:36
The DVD sample definetly shows this kind of ConvertFPS-style conversion again, hence RestoreFPS should be appropriate.

Apart from that, I'm still tired of Bollywood's technical crappola, and couldn't care less if you did better than me, or Marc did worse than Joe, or anyone did different than someone.

Virtualdubmod
9th November 2011, 21:41
Thanks, for the info above.

manono
9th November 2011, 22:36
With it now becoming obvious that Virtualdubmod is using what he learns here for creating and spreading warez and even has the gall to ask us to judge which illegal encode is better, it's now time to close this thread. Be thankful, VDMod, that you're not getting a strike.

It also might be good if you reread our rules, particularly rule number 6:

http://forum.doom9.org/forum-rules.htm

And the announcement as well:

http://forum.doom9.org/announcement.php?f=6