diff options
author | Anton Fedchin <afedchin@ruswizards.com> | 2013-07-01 12:31:17 +0400 |
---|---|---|
committer | Anton Fedchin <afedchin@ruswizards.com> | 2013-07-01 12:31:17 +0400 |
commit | 5b0d8049e1bf6c32c5cfc41c4a35c18f9a42a07c (patch) | |
tree | 962698fcc40e68913e78391a9ba32243129713ef | |
parent | 24b90e4881445f98d079bf6c6091333e1c4fac11 (diff) |
[win32] Fix best dxva deinterlacing on Intel platforms.
-rw-r--r-- | xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp index 3f606628c1..93f3c212df 100644 --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DXVA.cpp @@ -1287,6 +1287,14 @@ bool CProcessor::OpenProcessor() D3DFORMAT rtFormat = D3DFMT_X8R8G8B8; CHECK(m_service->GetVideoProcessorCaps(m_device, &m_desc, rtFormat, &m_caps)) + /* HACK for Intel Egde Device. + * won't work if backward refs is equals value from the capabilities * + * Possible reasons are: * + * 1) The device capabilities are incorrectly reported * + * 2) The device is broken */ + if (IsEqualGUID(m_device, DXVA2_VideoProcIntelEdgeDevice)) + m_caps.NumBackwardRefSamples = 0; + if (m_caps.DeviceCaps & DXVA2_VPDev_SoftwareDevice) CLog::Log(LOGDEBUG, "DXVA - processor is software device"); |