Enable HEVC RFI for DXVA2 and D3D11VA

This commit is contained in:
Cameron Gutman
2022-10-04 22:56:21 -05:00
parent 3679964cf8
commit 9e8a4cab7b
4 changed files with 12 additions and 0 deletions

View File

@@ -1027,6 +1027,11 @@ int D3D11VARenderer::getRendererAttributes()
return attributes;
}
int D3D11VARenderer::getDecoderCapabilities()
{
return CAPABILITY_REFERENCE_FRAME_INVALIDATION_HEVC;
}
bool D3D11VARenderer::needsTestFrame()
{
// We can usually determine when D3D11VA will work based on which decoder GUIDs are supported,

View File

@@ -22,6 +22,7 @@ public:
virtual void notifyOverlayUpdated(Overlay::OverlayType) override;
virtual void setHdrMode(bool enabled) override;
virtual int getRendererAttributes() override;
virtual int getDecoderCapabilities() override;
virtual bool needsTestFrame() override;
private:

View File

@@ -1004,6 +1004,11 @@ int DXVA2Renderer::getDecoderColorspace()
}
}
int DXVA2Renderer::getDecoderCapabilities()
{
return CAPABILITY_REFERENCE_FRAME_INVALIDATION_HEVC;
}
void DXVA2Renderer::renderFrame(AVFrame *frame)
{
IDirect3DSurface9* surface = reinterpret_cast<IDirect3DSurface9*>(frame->data[3]);

View File

@@ -20,6 +20,7 @@ public:
virtual void renderFrame(AVFrame* frame) override;
virtual void notifyOverlayUpdated(Overlay::OverlayType type) override;
virtual int getDecoderColorspace() override;
virtual int getDecoderCapabilities() override;
private:
bool initializeDecoder();