[MPlayer-users] Re: Telecine output - needed for NTSC DVD encoding

Bruno nc41530a at vizzavi.pt
Mon Mar 8 21:13:52 CET 2004


Tobias Diedrich <ranma <at> gmx.at> writes:

> 
> Bruno wrote:
> 
> > I don't like to start communication with a rant, but I'd like to have the 
> > choice for DVD5->DVD9 transcoding (not looking for requantizers) keeping 
> > the telecined patterns.
> > 
> > What can I do to disable IVTC while encoding?
> 
> It is not enabled unless you explicitly insert one of the ivtc filters.
> I guess what you want is to use "-vf softpulldown" and "-lavcopts ildct".
> 


Been there, done that, doesn't work.
I've done some hard-telecine and soft-telecine analisys over the original and 
Mencoded streams.
Used Windows tools.

Mencoded (Soft Telecine test through DVD2AVI):

7 0 0 2
7 0 9 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
7 0 5B 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
7 0 AB 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
7 0 F5 2 2 2 2 2 2

Original (Soft Telecine test through DVD2AVI):

7 0 0 0 1 2 3 0 1 2 3 0 1 2 3
7 0 EF 0 1 2 3 0 1 2 3 0 1 2 3
7 0 1D1 0 1 2 3 0 1 2 3 0 1 2 3
7 0 2B0 0 1 2 3 0 1 2 3 0 1 2 3
7 0 38D 0 1 2 3 0 1 2 3 0 1 2 3

Soft telecine pattern in DVD2AVI is 0123 or 2301 where:

0 -> BFF (bottom field first)
1 -> BFF + RFF (bff + repeat first field)
2 -> TFF (top field first)
3 -> TFF + RFF (tff + repeat first field)

As for hard-telecined tests I used Avisynth + Decomb with this script:

Loadplugin("D:\kvcd\progs\dvd2avi\MPEG2Dec3.dll") 		
Loadplugin("D:\kvcd\progs\dvd2avi\Decomb.dll")

function FOrder(clip c) {
fo= GetParity(c)? 1:0
return fo
}

#mpeg2source("D:\kvcd\samples\ntsc\d2v\telecine1.d2v",idct=2,cpu=0)
#mpeg2source("D:\kvcd\samples\ntsc\d2v\telecine2.d2v",idct=2,cpu=0)
#mpeg2source("D:\kvcd\samples\ntsc\d2v\telecine1_old.d2v",idct=2,cpu=0)
mpeg2source("D:\kvcd\samples\ntsc\d2v\telecine2_old.d2v",idct=2,cpu=0)

Telecide(order=FOrder(),guide=1,show=true)

Whenever Decomb found a pattern (not flag based) it showed an in-pattern 
message.
It only happened with the original streams, never with the mencoded ones.

An even stranger thing, as seen in the example above, is that a BFF stream 
becomes a TFF stream after the encoding when using softpulldown. That's why it 
looks interlaced all the time instead of the "3 progressive, 2 interlaced" 
pattern.

But then I tried a script just containing:

SeparateFields()
trim(1,0)
Weave()

This cuts the first field from the first frame. The output looked completely 
progressive, no trace of a telecined pattern.


Conclusion: the only thing softpulldown does is cutting the first field of the 
first frame and then all looks interlaced and field order gets reversed. And the 
telecine pattern is completely gone, if it wasn't for that first field cutting 
it would be completely progressive. And that's not what's expected.


Bruno







More information about the MPlayer-users mailing list