diff options
author | Hendrik Leppkes <h.leppkes@gmail.com> | 2017-08-12 21:23:33 +0300 |
---|---|---|
committer | Hendrik Leppkes <h.leppkes@gmail.com> | 2017-08-12 21:23:33 +0300 |
commit | c35d40830a253a594fa739fb729db753cc88b41e (patch) | |
tree | ef78c9c0a507eacaf9b700ddeee19c61812d25f1 /decoder/LAVVideo | |
parent | 67e7ca139ed28a860cefd7b278e3fa69dafeddfe (diff) |
d3d11: show the active decoder device
Diffstat (limited to 'decoder/LAVVideo')
-rw-r--r-- | decoder/LAVVideo/decoders/d3d11va.cpp | 15 | ||||
-rw-r--r-- | decoder/LAVVideo/decoders/d3d11va.h | 3 |
2 files changed, 18 insertions, 0 deletions
diff --git a/decoder/LAVVideo/decoders/d3d11va.cpp b/decoder/LAVVideo/decoders/d3d11va.cpp index 15585654..31565d20 100644 --- a/decoder/LAVVideo/decoders/d3d11va.cpp +++ b/decoder/LAVVideo/decoders/d3d11va.cpp @@ -218,6 +218,10 @@ enum_adapter: goto fail; } + // store adapter info + ZeroMemory(&m_AdapterDesc, sizeof(m_AdapterDesc)); + pDXGIAdapter->GetDesc(&m_AdapterDesc); + // done with the DXGI interface SafeRelease(&pDXGIFactory); SafeRelease(&pDXGIAdapter); @@ -1034,3 +1038,14 @@ STDMETHODIMP CDecD3D11::GetPixelFormat(LAVPixelFormat *pPix, int *pBpp) return S_OK; } + +STDMETHODIMP CDecD3D11::GetHWAccelActiveDevice(BSTR *pstrDeviceName) +{ + CheckPointer(pstrDeviceName, E_POINTER); + + if (m_AdapterDesc.Description[0] == 0) + return E_UNEXPECTED; + + *pstrDeviceName = SysAllocString(m_AdapterDesc.Description); + return S_OK; +} diff --git a/decoder/LAVVideo/decoders/d3d11va.h b/decoder/LAVVideo/decoders/d3d11va.h index 722c7cfc..965de0ec 100644 --- a/decoder/LAVVideo/decoders/d3d11va.h +++ b/decoder/LAVVideo/decoders/d3d11va.h @@ -54,6 +54,7 @@ public: STDMETHODIMP_(const WCHAR*) GetDecoderName() { return m_bReadBackFallback ? (m_bDirect ? L"d3d11 cb direct" : L"d3d11 cb") : L"d3d11 native"; } STDMETHODIMP HasThreadSafeBuffers() { return S_FALSE; } STDMETHODIMP SetDirectOutput(BOOL bDirect) { m_bDirect = bDirect; return S_OK; } + STDMETHODIMP GetHWAccelActiveDevice(BSTR *pstrDeviceName); // CDecBase STDMETHODIMP Init(); @@ -122,5 +123,7 @@ private: PFN_CREATE_DXGI_FACTORY1 mCreateDXGIFactory1; } dx = { 0 }; + DXGI_ADAPTER_DESC m_AdapterDesc = { 0 }; + friend class CD3D11SurfaceAllocator; }; |