[MPlayer-dev-eng] Re: More on inverse telecine!

D Richard Felker III dalias at aerifal.cx
Mon Apr 14 15:51:42 CEST 2003


On Mon, Apr 14, 2003 at 06:04:35AM -0500, Billy Biggs wrote:
>   You may think that all is lost, but no.  There are two approaches.
> The first is to have the MPEG2 decoding layer expand all content on the
> DVD to 59.94 interlaced fields per second, and pass it to a heuristics
> engine like vf_detc.  You may say: why do that, when the flags tell you
> exactly what to do!  However, remember that if you do this, copied
> fields will be byte-for-byte identical, and they'll be easy to test for,
> and secondly this will get around some problem cases.

This would work, but seems unnecessarily complicated. I suppose it
might be useful to have for output to interlaced devices anyway,
though.

>   The other method is to enable pulldown detection whenever you see
> interlaced frames, and remember where you were in the pulldown sequence
> based on what sequence the flags were telling you.  I do this in my DVD
> player app 'movietime' (www.sf.net/projects/movietime).  Whenever I see
> interlaced content, I fill my diff_factor history with the ideal based
> on what I was decoding, and assume the interlaced content is pulldown
> and go at it.  It works ok.

IMO, a much better way would be to have PTS be part of the mp_image
structure. Then you can see right off which frames are coming at 24fps
and which are coming at 30. Or rather than PTS (since it's ugly and
problematic and sometimes non-monotone) you could have a 'frame
duration' passed along with the frame instead or in addition.

Rich



More information about the MPlayer-dev-eng mailing list