diff options
author | Christophe Thommeret <hftom@free.fr> | 2009-08-14 03:09:14 +0100 |
---|---|---|
committer | Christophe Thommeret <hftom@free.fr> | 2009-08-14 03:09:14 +0100 |
commit | deaea99f0ec02fbb2392e702c6c6c2f5ba3e27c2 (patch) | |
tree | 96cab207e72ac29cb7f5ab72437ff20f1113db4d | |
parent | 3c777cd744227ad68813ffe7091d2ea413ecf602 (diff) | |
download | xine-lib-deaea99f0ec02fbb2392e702c6c6c2f5ba3e27c2.tar.gz xine-lib-deaea99f0ec02fbb2392e702c6c6c2f5ba3e27c2.tar.bz2 |
Better deint when paused.
-rw-r--r-- | src/video_out/video_out_vdpau.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/video_out/video_out_vdpau.c b/src/video_out/video_out_vdpau.c index 883f6c6c0..11c22ff74 100644 --- a/src/video_out/video_out_vdpau.c +++ b/src/video_out/video_out_vdpau.c @@ -1582,7 +1582,7 @@ static void vdpau_display_frame (vo_driver_t *this_gen, vo_frame_t *frame_gen) XLockDisplay( this->display ); #endif - if ( frame->format==XINE_IMGFMT_VDPAU && this->deinterlace && non_progressive && stream_speed && frame_duration>2500 ) { + if ( frame->format==XINE_IMGFMT_VDPAU && this->deinterlace && non_progressive /*&& stream_speed*/ && frame_duration>2500 ) { VdpTime current_time = 0; VdpVideoSurface past[2]; VdpVideoSurface future[1]; @@ -1651,7 +1651,10 @@ static void vdpau_display_frame (vo_driver_t *this_gen, vo_frame_t *frame_gen) XUnlockDisplay( this->display ); #endif - vdpau_backup_frame( this_gen, frame_gen ); + if ( stream_speed ) /* do not release past frame if paused, it will be used for redrawing */ + vdpau_backup_frame( this_gen, frame_gen ); + else + frame->vo_frame.free( &frame->vo_frame ); } |