[mythtv-commits] Ticket #10878: [PATCH] Fix PiP playback with Xv

MythTV noreply at mythtv.org
Wed Jul 4 18:10:10 UTC 2012


#10878: [PATCH] Fix PiP playback with Xv
-------------------------------------+-------------------------------------
 Reporter:  Lawrence Rust <lvr@…>    |           Type:  Patch - Bug Fix
   Status:  new                      |       Priority:  minor
Milestone:  unknown                  |      Component:  MythTV - Video
  Version:  Master Head              |  Playback
 Keywords:  PiP 'picture in          |       Severity:  medium
  picture' flicker                   |  Ticket locked:  0
-------------------------------------+-------------------------------------
 When using Xv-blit video output and trying to view two or more programs
 using PiP then the inset video often flickers or contains elements of 2
 unrelated frames.

 When displaying 'pictute in picture' (PiP), VideoOutput::ShowPIP
 composites the PiP windows onto the main video frame.  To do so, it uses
 the player's GetCurrentFrame method to obtain the most recently displayed
 PiP frame.  However, MythPlayer::DisplayNormalFrames immediately releases
 the last frame displayed back to the decoding queue.  Consequently when
 GetCurrentFrame calls GetLastShownFrame to obtain that frame it may have
 been overwritten by the decoder thread.

 This patch defers calling DoneDisplayingFrame if the player is a PiP
 player so that future calls to GetLastShownFrame return an intact frame.

 This patch is for git master but is equally applicable to fixes 0.25 and
 0.24

-- 
Ticket URL: <http://code.mythtv.org/trac/ticket/10878>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center


More information about the mythtv-commits mailing list