[mythtv-users] New deinterlacer for perfect image quality when using an interlaced display, mode that matches the source

Paul Gardiner lists at glidos.net
Thu Mar 26 12:26:08 UTC 2009


I've just created a patch that provides a deinterlacer for perfect image 
quality and motion smoothness when using an interlaced display mode that 
exactly matches the video source. See Ticket #6391. The deinterlacer 
comes up in the menus as "Interlaced x2". It is also known as field order.


Preconditions of use
~~~~~~~~~~~~~~~~~~~~
You need a graphics chip that can output interlaced display modes correctly.

The display mode must be interlaced exactly matching the video source.

No scaling can be used: don't use scaling to reduce overscan.

Video playback must be full speed, not sped up or slowed down.

The deinterlacer is a doublerate one, so you may need the patch from
Ticket #2903 before MythTv will allow you to use it.

For best quality, make sure TvDeflicker is turned off if your card
supports it.


Test result
~~~~~~~~~~~
I've tested this only with 576i content into a CRT PAL TV, but the same
should apply for any interlaced content and matching interlaced display
mode. It should be good for displaying 1080i, provided the graphics card
can output a 1080i signal.  The test that most obviously showed up the
differences between deinterlacers were rolling credits at the end of a
program:

No deinterlacer: results depend on synchronisation. Sometimes perfect
sometimes jumping forward 3, back 1, forward 3, back 1.

Kernel: slight loss of sharpness. Motion jerky as though halved frame rate.

Linear blend: even more loss of sharpness.

Yadif x2: really very good. Depends on sync as with no deinterlacer,
sometimes perfect, sometimes rolling text shows artifacts (e.g.,
slightly malformed letters, disappearing dots on occurences of the
letter i).

New "Interlaced x2" deinterlacer: perfectly sharp, very smooth motion as
with no deinterlacer, but no loss of sync.


Explanation
~~~~~~~~~~~
Some TVs can do a better job of displaying an interlaced video than the
currently available deinterlacers. Particularly, a CRT TV's purpose in
life is to display interlaced video, and for most CRT TVs, there is no
choice but to drive them with an interlaced video mode. Even with modern
flat screen TVs, some have extremely good SD support, and the best
quality for SD video is when driving them with an SD display mode.

When the display mode is chosen to match the source, it is important to
avoid any processing of the image. Any use of scaling, normal
deinterlacing, tvdeflicker will lose quality: the best results are
achieved if the interlaced video frames are sent to the TV unaltered.

Getting the interlaced frames to the TV properly synchronised is
difficult in MythTv (and probably Linux in gereral) because graphics
cards when outputting interlaced display modes tend to generate two
vsyncs per frames. The new deinterlacer generates frames between every
consecutive pair in such a way that synchronisation doesn't matter. A
sequence of field pairs such as:

   12 34 56 78

is processed to produce

   12 32 34 54 56 76 78

The TV may take the top field from the first and the bottom from the
second and so on to produce

   1 2 3 4 5 6 7

or it may take the bottom field from the first and the top from the
second and so on to produce

   2 3 4 5 6 7 8

Either way the fields are spatially correct and temporally correctly
ordered.



More information about the mythtv-users mailing list