Log in

View Full Version : Deinterlacing PAL video - getting lost in the sea of threads


S”nTė£
13th May 2006, 13:36
Up till now everything I've encoded was progressive - lucky me. But now have a short clip which is PAL BFF interlaced, and not having much progress looking through deinterlacing threads and trying the filters/methods described.

I know it's deinterlaced because 1. the artifacts are there and 2. telecide() didn't work.

What is the proper way to deinterlace this video to progressive PAL 25fps, leaving resolution etc untouched?

http://users.skynet.be/TailwinD/sample.vob (uploading, should be there in 1m30s)

LoRd_MuldeR
13th May 2006, 14:32
If you want 25fps I recommend KernelDeinterlacer or TomsMoComp
For 50fps you will need a bobbing filter...

S”nTė£
13th May 2006, 14:44
I tried LeakKernelDeint before (according to it's homepage, this one should be used over the 'normal' KernelDeint, which is supposed to be outdated) with order=0 and trying with sharp/twoway options, but there's some (interlacing?) noise in the video that gets very noticeable when I use it. In the sample I provided it's not that noticeable, it's a bit earlier in the video but there you can't really notice the normal interlacing (except for a moving mouth) which is why I chose the above sample instead.

In the threads I've read, tomsmocomp softens the image a lot, and saw some before/after pics I didn't really like. It's probably fixeable with tweaking parameters but I wouldn't know where to start.

A few months back I came across multiple lines script for what was called 'the proper way' but I wouldn't know where to start looking for them now.

LoRd_MuldeR
13th May 2006, 14:51
I tried LeakKernelDeint before (according to it's homepage, this one should be used over the 'normal' KernelDeint, which is supposed to be outdated) with order=0 and trying with sharp/twoway options, but there's some (interlacing?) noise in the video that gets very noticeable when I use it.

AFAIK LeakKernelDeint is a speed-optimized version of KernelDeinterlacer.

If you still see some interlaced artifacts you need to lower the threshold value. Start at about 10 and then go down until all artifacts disapperar. You should always playback the video and check if there are visible artifacts in regular playback.

"Two way" is to be avoided, "Linked Luma/Chroma mask" might help on some videos. "Sharp" only when you need it. KernelDeinterlacer is usallay pretty sharp without it.

In the threads I've read, tomsmocomp softens the image a lot, and saw some before/after pics I didn't really like. It's probably fixeable with tweaking parameters but I wouldn't know where to start.

You get a more sharp image with TomsMoComp when you disable the "Vertical Filter" option, but you might see some artifacts then. Maybe try TomsMoComp (with Vertical Filer enabled) plus some sharpening filter...

S”nTė£
13th May 2006, 15:14
I'll up the sample where the specific noise is there as well:
http://users.skynet.be/TailwinD/sample2.vob
Look at the paper in the lower right corner.

Getting slightly better results with the threshhold thingy (KernelDeint). I'm still wondering if the noise I get has anything to do with deinterlacing, probably not tho. Prolly gonna need some help denoising too :/

Gonna try tomsmocomp now...

BTW "Kurt B. Prünner has created an evolved version of KernelDeint() called LeakKernelDeint(). It is low-level optimized and provides some useful new functionality. His is the preferred version to use. My original version is retained here for academic and historic purposes. Following is Kurt's distribution, which includes source code." I why I was using LeakKernelDeint before.

LoRd_MuldeR
13th May 2006, 15:18
Deinterlacing is known to amplify noise...

S”nTė£
13th May 2006, 16:49
Using tomsmocomp(-1,5,1) now and fft3dgpu(sigma=3, bt=3, precision=2) after it, looks pretty good :) thx for the help.

S”nTė£
13th May 2006, 17:07
Aye one new question tho, using

MPEG2Source("g:\akb.d2v")
TomsMoComp(-1,10,1)
fft3dgpu(sigma=3, bt=3, precision=2)
Crop(12,0,-8,0)
BilinearResize(704,528)

My CPU is going at 70-80% while encoding in X264 right now, when normally it's doing 100%. I realise the GPU is being used as well and that could be the bottleneck, but in fact it isn't getting as warm as just playing back the clip (which my pc can at real time) instead of encoding it, which means it shouldn't be working at 100% as well. Can anyone tell me what the bottleneck in this script is?