Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/LAVFilters.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHendrik Leppkes <h.leppkes@gmail.com>2013-04-14 17:34:11 +0400
committerHendrik Leppkes <h.leppkes@gmail.com>2013-04-14 17:34:11 +0400
commitd41eb01bd761657812bc6954ea0df79f08b9b2bf (patch)
tree7897048db28ebf631527dd2b73f7f2420be3014b /decoder
parent28661f722cce8b885e8d3ae793f5a3221da4d694 (diff)
wmv9dmo: fix disabling of the wmv9dmo integrated deinterlacer on XP
Diffstat (limited to 'decoder')
-rw-r--r--decoder/LAVVideo/decoders/wmv9.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/decoder/LAVVideo/decoders/wmv9.cpp b/decoder/LAVVideo/decoders/wmv9.cpp
index d7047a43..c76dbbcd 100644
--- a/decoder/LAVVideo/decoders/wmv9.cpp
+++ b/decoder/LAVVideo/decoders/wmv9.cpp
@@ -266,15 +266,17 @@ STDMETHODIMP CDecWMV9::Init()
// Disable deinterlacing setting in the registry
// Apparently required on XP
- CRegistry reg;
- reg.Open(HKEY_CURRENT_USER, L"Software\\Microsoft\\Scrunch");
- reg.ReadDWORD(L"Deinterlace.old", hr);
- if (FAILED(hr)) {
- DWORD dwValue = reg.ReadDWORD(L"Deinterlace", hr);
- if (FAILED(hr))
- dwValue = 0;
- reg.WriteDWORD(L"Deinterlace.old", dwValue);
- reg.WriteDWORD(L"Deinterlace", 0);
+ CreateRegistryKey(HKEY_CURRENT_USER, L"Software\\Microsoft\\Scrunch");
+ CRegistry reg = CRegistry(HKEY_CURRENT_USER, L"Software\\Microsoft\\Scrunch", hr);
+ if (SUCCEEDED(hr)) {
+ reg.ReadDWORD(L"Deinterlace.old", hr);
+ if (FAILED(hr)) {
+ DWORD dwValue = reg.ReadDWORD(L"Deinterlace", hr);
+ if (FAILED(hr))
+ dwValue = 0;
+ reg.WriteDWORD(L"Deinterlace.old", dwValue);
+ reg.WriteDWORD(L"Deinterlace", 0);
+ }
}
hr = CoCreateInstance(CLSID_CWMVDecMediaObject, NULL, CLSCTX_INPROC_SERVER, IID_IMediaObject, (void **)&m_pDMO);