Advertisement
Guest User

xbmc_24p_250ms_audiodelayfix.diff

a guest
Nov 13th, 2010
306
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.00 KB | None | 0 0
  1. Index: guilib/GraphicContext.cpp
  2. ===================================================================
  3. --- guilib/GraphicContext.cpp   (revision 35189)
  4. +++ guilib/GraphicContext.cpp   (working copy)
  5. @@ -21,6 +21,7 @@
  6.  
  7.  #include "system.h"
  8.  #include "GraphicContext.h"
  9. +#include "utils/log.h"
  10.  #include "utils/SingleLock.h"
  11.  #include "Application.h"
  12.  #include "GUISettings.h"
  13. @@ -327,6 +328,15 @@
  14.      CDelayedMessage* pauseMessage = new CDelayedMessage(msg, delay * 500);
  15.      pauseMessage->Create(true);
  16.    }
  17. +  
  18. +  // decrease AV delay to compensate for audio delay in low framerate modes
  19. +  if (g_guiSettings.GetBool("videoplayer.adjustrefreshrate") && g_application.IsPlayingVideo() && g_settings.m_ResInfo[res].fRefreshRate<=26.0f)
  20. +  {
  21. +    CLog::Log(LOGDEBUG, "%s - Setting global audio delay to -250 ms for low fps videomodes.", __FUNCTION__);
  22. +    g_settings.m_currentVideoSettings.m_GlobalAudioDelay = -0.25f;
  23. +    g_application.m_pPlayer->SetAVDelay(g_settings.m_currentVideoSettings.m_AudioDelay);
  24. +  }
  25. +  else g_settings.m_currentVideoSettings.m_GlobalAudioDelay = 0.0f;
  26.  
  27.    if (res >= RES_DESKTOP)
  28.    {
  29. Index: xbmc/cores/dvdplayer/DVDPlayer.cpp
  30. ===================================================================
  31. --- xbmc/cores/dvdplayer/DVDPlayer.cpp  (revision 35189)
  32. +++ xbmc/cores/dvdplayer/DVDPlayer.cpp  (working copy)
  33. @@ -2282,7 +2282,7 @@
  34.  
  35.  void CDVDPlayer::SetAVDelay(float fValue)
  36.  {
  37. -  m_dvdPlayerVideo.SetDelay( (fValue * DVD_TIME_BASE) ) ;
  38. +  m_dvdPlayerVideo.SetDelay( ((fValue + g_settings.m_currentVideoSettings.m_GlobalAudioDelay) * DVD_TIME_BASE) ) ;
  39.  }
  40.  
  41.  float CDVDPlayer::GetAVDelay()
  42. Index: xbmc/settings/VideoSettings.h
  43. ===================================================================
  44. --- xbmc/settings/VideoSettings.h   (revision 35189)
  45. +++ xbmc/settings/VideoSettings.h   (working copy)
  46. @@ -102,6 +102,7 @@
  47.    bool m_PostProcess;
  48.    float m_Sharpness;
  49.    float m_AudioDelay;
  50. +  float m_GlobalAudioDelay;
  51.    int m_ResumeTime;
  52.    bool m_Crop;
  53.    int m_CropTop;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement