diff --git a/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.23-fix_stuttering_in_non_full-screen_mode.patch b/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.23-fix_stuttering_in_non_full-screen_mode.patch new file mode 100644 index 0000000000..589b941b71 --- /dev/null +++ b/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.23-fix_stuttering_in_non_full-screen_mode.patch @@ -0,0 +1,28 @@ +From 97132cf318aa40823ba5af94b9f8ae18dbf5de36 Mon Sep 17 00:00:00 2001 +From: xbmc +Date: Sun, 14 Oct 2012 13:46:54 +0200 +Subject: [PATCH] rendermanager: fix stuttering in non full-screen mode, + squash to add buffering + +--- + xbmc/cores/VideoRenderers/RenderManager.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp +index ac31c32..4c7b48e 100644 +--- a/xbmc/cores/VideoRenderers/RenderManager.cpp ++++ b/xbmc/cores/VideoRenderers/RenderManager.cpp +@@ -965,8 +965,9 @@ void CXBMCRenderManager::PrepareNextRender() + presenttime = clocktime + MAXPRESENTDELAY; + + m_sleeptime = presenttime - clocktime; ++ double frametime = 1 / g_graphicsContext.GetFPS(); + +- if (g_graphicsContext.IsFullScreenVideo() || presenttime <= clocktime+0.01) ++ if (g_graphicsContext.IsFullScreenVideo() || presenttime <= clocktime + frametime) + { + m_presentPts = m_renderBuffers[idx].pts; + m_presenttime = presenttime; +-- +1.7.10 + diff --git a/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.24-used_wrong_flags_for_backport.patch b/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.24-used_wrong_flags_for_backport.patch new file mode 100644 index 0000000000..576682c6ba --- /dev/null +++ b/packages/mediacenter/xbmc/patches/xbmc-11.0.3-902.24-used_wrong_flags_for_backport.patch @@ -0,0 +1,30 @@ +From 33d005b693b044d62f93a6449b4482f1dd1520aa Mon Sep 17 00:00:00 2001 +From: xbmc +Date: Sun, 14 Oct 2012 14:34:01 +0200 +Subject: [PATCH] rendermanger: used wrong flags for backport of: + d0c23ddfad95612c47bcf9ce430b00a414b42912 + +--- + xbmc/cores/VideoRenderers/RenderManager.cpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/xbmc/cores/VideoRenderers/RenderManager.cpp b/xbmc/cores/VideoRenderers/RenderManager.cpp +index 4c7b48e..4ece507 100644 +--- a/xbmc/cores/VideoRenderers/RenderManager.cpp ++++ b/xbmc/cores/VideoRenderers/RenderManager.cpp +@@ -237,9 +237,9 @@ bool CXBMCRenderManager::Configure(unsigned int width, unsigned int height, unsi + + // check if decoder supports buffering + m_bCodecSupportsBuffering = false; +- if ((flags & DVDVideoPicture::FMT_VDPAU) +- || (flags & DVDVideoPicture::FMT_VDPAU_420) +- || (flags & DVDVideoPicture::FMT_XVBA)) ++ if ((CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_VDPAU) ++ || (CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_VDPAU_420) ++ || (CONF_FLAGS_FORMAT_MASK(flags) == CONF_FLAGS_FORMAT_XVBA)) + m_bCodecSupportsBuffering = true; + + bool result = m_pRenderer->Configure(width, height, d_width, d_height, fps, flags, format); +-- +1.7.10 +