aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--language/English/strings.xml1
-rw-r--r--xbmc/GUIDialogVideoSettings.cpp1
-rw-r--r--xbmc/cores/VideoRenderers/WinRenderer.cpp9
-rw-r--r--xbmc/settings/VideoSettings.h1
4 files changed, 9 insertions, 3 deletions
diff --git a/language/English/strings.xml b/language/English/strings.xml
index ac4690889f..738793d950 100644
--- a/language/English/strings.xml
+++ b/language/English/strings.xml
@@ -1528,6 +1528,7 @@
<string id="16316">Auto</string>
<string id="16317">Temporal (Half)</string>
<string id="16318">Temporal/Spatial (Half)</string>
+ <string id="16319">DXVA</string>
<string id="16400">Video post-processing</string>
<string id="16401">Disabled</string>
diff --git a/xbmc/GUIDialogVideoSettings.cpp b/xbmc/GUIDialogVideoSettings.cpp
index 8146d10b47..e73f07b71e 100644
--- a/xbmc/GUIDialogVideoSettings.cpp
+++ b/xbmc/GUIDialogVideoSettings.cpp
@@ -114,6 +114,7 @@ void CGUIDialogVideoSettings::CreateSettings()
entries.push_back(make_pair(VS_SCALINGMETHOD_LANCZOS_SOFTWARE , 16308));
entries.push_back(make_pair(VS_SCALINGMETHOD_SINC_SOFTWARE , 16309));
entries.push_back(make_pair(VS_SCALINGMETHOD_VDPAU_HARDWARE , 13120));
+ entries.push_back(make_pair(VS_SCALINGMETHOD_DXVA_HARDWARE , 16319));
entries.push_back(make_pair(VS_SCALINGMETHOD_AUTO , 16316));
/* remove unsupported methods */
diff --git a/xbmc/cores/VideoRenderers/WinRenderer.cpp b/xbmc/cores/VideoRenderers/WinRenderer.cpp
index 570fec9028..b67636cdd1 100644
--- a/xbmc/cores/VideoRenderers/WinRenderer.cpp
+++ b/xbmc/cores/VideoRenderers/WinRenderer.cpp
@@ -568,8 +568,7 @@ void CWinRenderer::UpdateVideoFilter()
if (!Supports(m_scalingMethod))
{
CLog::Log(LOGWARNING, __FUNCTION__" - chosen scaling method %d is not supported by renderer", (int)m_scalingMethod);
- m_scalingMethod = VS_SCALINGMETHOD_LINEAR;
- return;
+ m_scalingMethod = VS_SCALINGMETHOD_AUTO;
}
switch(m_renderMethod)
@@ -583,6 +582,10 @@ void CWinRenderer::UpdateVideoFilter()
UpdatePSVideoFilter();
break;
+ case RENDER_DXVA:
+ // Everything already setup, nothing to do.
+ break;
+
default:
return;
}
@@ -927,7 +930,7 @@ bool CWinRenderer::Supports(ESCALINGMETHOD method)
{
if (m_renderMethod == RENDER_DXVA)
{
- if(method == VS_SCALINGMETHOD_LINEAR)
+ if(method == VS_SCALINGMETHOD_DXVA_HARDWARE)
return true;
return false;
}
diff --git a/xbmc/settings/VideoSettings.h b/xbmc/settings/VideoSettings.h
index a2d5c5d327..1699802e6d 100644
--- a/xbmc/settings/VideoSettings.h
+++ b/xbmc/settings/VideoSettings.h
@@ -69,6 +69,7 @@ enum ESCALINGMETHOD
VS_SCALINGMETHOD_LANCZOS_SOFTWARE,
VS_SCALINGMETHOD_SINC_SOFTWARE,
VS_SCALINGMETHOD_VDPAU_HARDWARE,
+ VS_SCALINGMETHOD_DXVA_HARDWARE,
VS_SCALINGMETHOD_AUTO
};