Ticket #904: nobob-fallback.diff
File nobob-fallback.diff, 2.6 KB (added by , 18 years ago) |
---|
-
libs/libmythtv/NuppelVideoPlayer.h
341 341 void InitAVSync(void); 342 342 void AVSync(void); 343 343 void ShutdownAVSync(void); 344 void FallbackDeint(void); // Fallback to non-bob deinterlacing 344 345 345 346 // Private closed caption and teletext stuff 346 347 int tbuffer_numvalid(void); // number of valid slots in the text buffer -
libs/libmythtv/NuppelVideoPlayer.cpp
621 621 { 622 622 VERBOSE(VB_IMPORTANT, "Video sync method can't support double " 623 623 "framerate (refresh rate too low for bob deint)"); 624 m_scan = kScan_Ignore; 625 m_double_framerate = false; 626 m_can_double = false; 627 if (videoOutput) 628 videoOutput->SetupDeinterlace(false); 624 FallbackDeint(); 629 625 } 630 626 } 631 627 … … 1606 1602 } 1607 1603 } 1608 1604 1605 void NuppelVideoPlayer::FallbackDeint(void) 1606 { 1607 m_double_framerate = false; 1608 if (videosync) 1609 videosync->SetFrameInterval(frame_interval, false); 1610 if (videoOutput) { 1611 videoOutput->SetupDeinterlace(false); 1612 videoOutput->SetupDeinterlace(true, "onefield"); 1613 } 1614 } 1615 1609 1616 void NuppelVideoPlayer::DisplayPauseFrame(void) 1610 1617 { 1611 1618 if (!video_actually_paused) … … 1771 1778 videosync->SetFrameInterval(frame_interval, m_double_framerate); 1772 1779 if (videosync->UsesFrameInterval()) 1773 1780 { 1774 m_scan = kScan_Ignore; 1775 m_double_framerate = false; 1776 m_can_double = false; 1777 if (videoOutput) 1778 videoOutput->SetupDeinterlace(false); 1781 VERBOSE(VB_IMPORTANT, "Video sync method can't support double " 1782 "framerate (refresh rate too low for bob deint)"); 1783 FallbackDeint(); 1779 1784 } 1780 1785 } 1781 1786 } … … 2767 2772 { 2768 2773 if (!normal_speed || play_speed < 0.99 || play_speed > 1.01) 2769 2774 { 2770 m_double_framerate = false; 2771 videosync->SetFrameInterval(frame_interval, false); 2772 videoOutput->SetupDeinterlace(false); 2773 videoOutput->SetupDeinterlace(true, "onefield"); 2775 FallbackDeint(); 2774 2776 } 2775 2777 } 2776 2778 else if (m_can_double && !m_double_framerate)