diff options
Diffstat (limited to 'decoder/LAVVideo/decoders/d3d11va.h')
-rw-r--r-- | decoder/LAVVideo/decoders/d3d11va.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/decoder/LAVVideo/decoders/d3d11va.h b/decoder/LAVVideo/decoders/d3d11va.h index efeb2240..722c7cfc 100644 --- a/decoder/LAVVideo/decoders/d3d11va.h +++ b/decoder/LAVVideo/decoders/d3d11va.h @@ -34,6 +34,8 @@ extern "C" { #define D3D11_QUEUE_SURFACES 4 +typedef HRESULT(WINAPI *PFN_CREATE_DXGI_FACTORY1)(REFIID riid, void **ppFactory); + class CDecD3D11 : public CDecAvcodec { public: @@ -53,6 +55,9 @@ public: STDMETHODIMP HasThreadSafeBuffers() { return S_FALSE; } STDMETHODIMP SetDirectOutput(BOOL bDirect) { m_bDirect = bDirect; return S_OK; } + // CDecBase + STDMETHODIMP Init(); + protected: HRESULT AdditionaDecoderInit(); HRESULT PostDecode(); @@ -108,5 +113,14 @@ private: int m_FrameQueuePosition = 0; int m_DisplayDelay = D3D11_QUEUE_SURFACES; + struct + { + HMODULE d3d11lib; + PFN_D3D11_CREATE_DEVICE mD3D11CreateDevice; + + HMODULE dxgilib; + PFN_CREATE_DXGI_FACTORY1 mCreateDXGIFactory1; + } dx = { 0 }; + friend class CD3D11SurfaceAllocator; }; |