diff --git a/packages/mediacenter/xbmc/config/advancedsettings.xml b/packages/mediacenter/xbmc/config/advancedsettings.xml
index 0643968a64..33bf9a4e2b 100644
--- a/packages/mediacenter/xbmc/config/advancedsettings.xml
+++ b/packages/mediacenter/xbmc/config/advancedsettings.xml
@@ -12,6 +12,7 @@
175
+ 750
30
diff --git a/packages/mediacenter/xbmc/patches/12.1.8/xbmc-602-add_as.xml_busy_dialog_delay_control.patch b/packages/mediacenter/xbmc/patches/12.1.8/xbmc-602-add_as.xml_busy_dialog_delay_control.patch
new file mode 100644
index 0000000000..8300e13296
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/12.1.8/xbmc-602-add_as.xml_busy_dialog_delay_control.patch
@@ -0,0 +1,57 @@
+diff -Naur xbmc-12.1.8/xbmc/cores/dvdplayer/DVDPlayer.cpp xbmc-12.1.8.patch/xbmc/cores/dvdplayer/DVDPlayer.cpp
+--- xbmc-12.1.8/xbmc/cores/dvdplayer/DVDPlayer.cpp 2013-04-24 23:38:36.000000000 +0200
++++ xbmc-12.1.8.patch/xbmc/cores/dvdplayer/DVDPlayer.cpp 2013-04-26 00:49:07.732011721 +0200
+@@ -470,7 +470,7 @@
+ #endif
+
+ Create();
+- if(!m_ready.WaitMSec(100))
++ if(!m_ready.WaitMSec(g_advancedSettings.m_videoBusyDialogDelay_ms))
+ {
+ CGUIDialogBusy* dialog = (CGUIDialogBusy*)g_windowManager.GetWindow(WINDOW_DIALOG_BUSY);
+ if(dialog)
+diff -Naur xbmc-12.1.8/xbmc/cores/omxplayer/OMXPlayer.cpp xbmc-12.1.8.patch/xbmc/cores/omxplayer/OMXPlayer.cpp
+--- xbmc-12.1.8/xbmc/cores/omxplayer/OMXPlayer.cpp 2013-04-24 23:38:36.000000000 +0200
++++ xbmc-12.1.8.patch/xbmc/cores/omxplayer/OMXPlayer.cpp 2013-04-26 00:50:56.974691417 +0200
+@@ -474,7 +474,7 @@
+ g_renderManager.PreInit();
+
+ Create();
+- if(!m_ready.WaitMSec(100))
++ if(!m_ready.WaitMSec(g_advancedSettings.m_videoBusyDialogDelay_ms))
+ {
+ CGUIDialogBusy* dialog = (CGUIDialogBusy*)g_windowManager.GetWindow(WINDOW_DIALOG_BUSY);
+ if(dialog)
+diff -Naur xbmc-12.1.8/xbmc/settings/AdvancedSettings.cpp xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.cpp
+--- xbmc-12.1.8/xbmc/settings/AdvancedSettings.cpp 2013-04-26 00:48:59.375036542 +0200
++++ xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.cpp 2013-04-26 00:49:07.732011721 +0200
+@@ -111,6 +111,7 @@
+ m_DXVAForceProcessorRenderer = true;
+ m_DXVANoDeintProcForProgressive = false;
+ m_videoFpsDetect = 1;
++ m_videoBusyDialogDelay_ms = 100;
+ m_videoDefaultLatency = 0.0;
+ m_videoDisableHi10pMultithreading = false;
+
+@@ -592,6 +593,10 @@
+ //0 = disable fps detect, 1 = only detect on timestamps with uniform spacing, 2 detect on all timestamps
+ XMLUtils::GetInt(pElement, "fpsdetect", m_videoFpsDetect, 0, 2);
+
++ // controls the delay, in milliseconds, until
++ // the busy dialog is shown when starting video playback.
++ XMLUtils::GetInt(pElement, "busydialogdelayms", m_videoBusyDialogDelay_ms, 0, 1000);
++
+ // Store global display latency settings
+ TiXmlElement* pVideoLatency = pElement->FirstChildElement("latency");
+ if (pVideoLatency)
+diff -Naur xbmc-12.1.8/xbmc/settings/AdvancedSettings.h xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.h
+--- xbmc-12.1.8/xbmc/settings/AdvancedSettings.h 2013-04-26 00:48:59.383036518 +0200
++++ xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.h 2013-04-26 00:49:07.732011721 +0200
+@@ -165,6 +165,7 @@
+ bool m_DXVANoDeintProcForProgressive;
+ int m_videoFpsDetect;
+ bool m_videoDisableHi10pMultithreading;
++ int m_videoBusyDialogDelay_ms;
+
+ CStdString m_videoDefaultPlayer;
+ CStdString m_videoDefaultDVDPlayer;
diff --git a/packages/mediacenter/xbmc/patches/83b16d0/xbmc-602-add_as.xml_busy_dialog_delay_control.patch b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-602-add_as.xml_busy_dialog_delay_control.patch
new file mode 100644
index 0000000000..8300e13296
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/83b16d0/xbmc-602-add_as.xml_busy_dialog_delay_control.patch
@@ -0,0 +1,57 @@
+diff -Naur xbmc-12.1.8/xbmc/cores/dvdplayer/DVDPlayer.cpp xbmc-12.1.8.patch/xbmc/cores/dvdplayer/DVDPlayer.cpp
+--- xbmc-12.1.8/xbmc/cores/dvdplayer/DVDPlayer.cpp 2013-04-24 23:38:36.000000000 +0200
++++ xbmc-12.1.8.patch/xbmc/cores/dvdplayer/DVDPlayer.cpp 2013-04-26 00:49:07.732011721 +0200
+@@ -470,7 +470,7 @@
+ #endif
+
+ Create();
+- if(!m_ready.WaitMSec(100))
++ if(!m_ready.WaitMSec(g_advancedSettings.m_videoBusyDialogDelay_ms))
+ {
+ CGUIDialogBusy* dialog = (CGUIDialogBusy*)g_windowManager.GetWindow(WINDOW_DIALOG_BUSY);
+ if(dialog)
+diff -Naur xbmc-12.1.8/xbmc/cores/omxplayer/OMXPlayer.cpp xbmc-12.1.8.patch/xbmc/cores/omxplayer/OMXPlayer.cpp
+--- xbmc-12.1.8/xbmc/cores/omxplayer/OMXPlayer.cpp 2013-04-24 23:38:36.000000000 +0200
++++ xbmc-12.1.8.patch/xbmc/cores/omxplayer/OMXPlayer.cpp 2013-04-26 00:50:56.974691417 +0200
+@@ -474,7 +474,7 @@
+ g_renderManager.PreInit();
+
+ Create();
+- if(!m_ready.WaitMSec(100))
++ if(!m_ready.WaitMSec(g_advancedSettings.m_videoBusyDialogDelay_ms))
+ {
+ CGUIDialogBusy* dialog = (CGUIDialogBusy*)g_windowManager.GetWindow(WINDOW_DIALOG_BUSY);
+ if(dialog)
+diff -Naur xbmc-12.1.8/xbmc/settings/AdvancedSettings.cpp xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.cpp
+--- xbmc-12.1.8/xbmc/settings/AdvancedSettings.cpp 2013-04-26 00:48:59.375036542 +0200
++++ xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.cpp 2013-04-26 00:49:07.732011721 +0200
+@@ -111,6 +111,7 @@
+ m_DXVAForceProcessorRenderer = true;
+ m_DXVANoDeintProcForProgressive = false;
+ m_videoFpsDetect = 1;
++ m_videoBusyDialogDelay_ms = 100;
+ m_videoDefaultLatency = 0.0;
+ m_videoDisableHi10pMultithreading = false;
+
+@@ -592,6 +593,10 @@
+ //0 = disable fps detect, 1 = only detect on timestamps with uniform spacing, 2 detect on all timestamps
+ XMLUtils::GetInt(pElement, "fpsdetect", m_videoFpsDetect, 0, 2);
+
++ // controls the delay, in milliseconds, until
++ // the busy dialog is shown when starting video playback.
++ XMLUtils::GetInt(pElement, "busydialogdelayms", m_videoBusyDialogDelay_ms, 0, 1000);
++
+ // Store global display latency settings
+ TiXmlElement* pVideoLatency = pElement->FirstChildElement("latency");
+ if (pVideoLatency)
+diff -Naur xbmc-12.1.8/xbmc/settings/AdvancedSettings.h xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.h
+--- xbmc-12.1.8/xbmc/settings/AdvancedSettings.h 2013-04-26 00:48:59.383036518 +0200
++++ xbmc-12.1.8.patch/xbmc/settings/AdvancedSettings.h 2013-04-26 00:49:07.732011721 +0200
+@@ -165,6 +165,7 @@
+ bool m_DXVANoDeintProcForProgressive;
+ int m_videoFpsDetect;
+ bool m_videoDisableHi10pMultithreading;
++ int m_videoBusyDialogDelay_ms;
+
+ CStdString m_videoDefaultPlayer;
+ CStdString m_videoDefaultDVDPlayer;
diff --git a/projects/ARCTIC_MC/xbmc/advancedsettings.xml b/projects/ARCTIC_MC/xbmc/advancedsettings.xml
index a2942f0628..6d2ae30db2 100644
--- a/projects/ARCTIC_MC/xbmc/advancedsettings.xml
+++ b/projects/ARCTIC_MC/xbmc/advancedsettings.xml
@@ -12,6 +12,7 @@
175
+ 750
30
diff --git a/projects/ATV/xbmc/advancedsettings.xml b/projects/ATV/xbmc/advancedsettings.xml
index b5fb5620ec..c97cf21a1c 100644
--- a/projects/ATV/xbmc/advancedsettings.xml
+++ b/projects/ATV/xbmc/advancedsettings.xml
@@ -12,6 +12,7 @@
175
+ 750
30
diff --git a/projects/Fusion/xbmc/advancedsettings.xml b/projects/Fusion/xbmc/advancedsettings.xml
index a2942f0628..6d2ae30db2 100644
--- a/projects/Fusion/xbmc/advancedsettings.xml
+++ b/projects/Fusion/xbmc/advancedsettings.xml
@@ -12,6 +12,7 @@
175
+ 750
30
diff --git a/projects/RPi/xbmc/advancedsettings.xml b/projects/RPi/xbmc/advancedsettings.xml
index 04e4840755..bc4fbcf321 100644
--- a/projects/RPi/xbmc/advancedsettings.xml
+++ b/projects/RPi/xbmc/advancedsettings.xml
@@ -11,6 +11,7 @@