[mythtv-commits] Ticket #6391: New deinterlacer for perfect image quality when using an interlaced display mode that matches the source

MythTV mythtv at cvs.mythtv.org
Thu Mar 26 11:56:00 UTC 2009


#6391: New deinterlacer for perfect image quality when using an interlaced display
mode that matches the source
-------------------------------------+--------------------------------------
 Reporter:  mythtv at glidos.net        |       Owner:  ijr    
     Type:  enhancement              |      Status:  new    
 Priority:  minor                    |   Milestone:  unknown
Component:  MythTV - Video Playback  |     Version:  unknown
 Severity:  medium                   |     Mlocked:  0      
-------------------------------------+--------------------------------------
 This patch provides a deinterlacer for perfect image quality and motion
 smoothness when using an interlaced display mode that exactly matches the
 video source. 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 frame.
 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.

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/6391>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list