diff options
author | Voyager1 <voyager@xbmc.org> | 2014-02-06 20:04:48 +0100 |
---|---|---|
committer | Voyager1 <voyager@xbmc.org> | 2014-02-06 20:04:48 +0100 |
commit | 2fe31173c60aa75c702a8193d639765fd937f934 (patch) | |
tree | ea17987903a50c3b1abf7f46ddc16a0f572b57f2 | |
parent | e84b2d95646cd8f52865992e555e143fb02ce5ce (diff) | |
parent | 604c623332ceff63d6add60390f778ac555cb7e5 (diff) |
Merge pull request #4163 from Shine-/dxvarenderer
[dxva] Fix black screen when trying to render Hi10P video with DXVA2/DXVA-HD
-rw-r--r-- | xbmc/cores/VideoRenderers/WinRenderer.cpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/xbmc/cores/VideoRenderers/WinRenderer.cpp b/xbmc/cores/VideoRenderers/WinRenderer.cpp index 7c4ac0dde8..df7f27ba16 100644 --- a/xbmc/cores/VideoRenderers/WinRenderer.cpp +++ b/xbmc/cores/VideoRenderers/WinRenderer.cpp @@ -393,14 +393,6 @@ unsigned int CWinRenderer::PreInit() g_Windowing.Get3DDevice()->GetDeviceCaps(&m_deviceCaps); m_formats.push_back(RENDER_FMT_YUV420P); - if(g_Windowing.IsTextureFormatOk(D3DFMT_L16, 0)) - { - m_formats.push_back(RENDER_FMT_YUV420P10); - m_formats.push_back(RENDER_FMT_YUV420P16); - } - m_formats.push_back(RENDER_FMT_NV12); - m_formats.push_back(RENDER_FMT_YUYV422); - m_formats.push_back(RENDER_FMT_UYVY422); m_iRequestedMethod = CSettings::Get().GetInt("videoplayer.rendermethod"); @@ -424,7 +416,18 @@ unsigned int CWinRenderer::PreInit() if (!m_processor->PreInit()) CLog::Log(LOGNOTICE, "CWinRenderer::Preinit - could not init DXVA2 processor - skipping"); + else + return 0; } + + if (g_Windowing.IsTextureFormatOk(D3DFMT_L16, 0)) + { + m_formats.push_back(RENDER_FMT_YUV420P10); + m_formats.push_back(RENDER_FMT_YUV420P16); + } + m_formats.push_back(RENDER_FMT_NV12); + m_formats.push_back(RENDER_FMT_YUYV422); + m_formats.push_back(RENDER_FMT_UYVY422); return 0; } |