mirror of
https://github.com/moonlight-stream/moonlight-qt
synced 2025-01-05 15:58:46 +00:00
Increase the number of decoder surfaces for DXVA2/D3D11VA
We forgot to take into account frames buffered within Moonlight itself
This commit is contained in:
parent
453fe6aea0
commit
02c781b8f4
3 changed files with 4 additions and 3 deletions
|
@ -458,7 +458,8 @@ bool D3D11VARenderer::initialize(PDECODER_PARAMETERS params)
|
||||||
framesContext->width = FFALIGN(params->width, m_TextureAlignment);
|
framesContext->width = FFALIGN(params->width, m_TextureAlignment);
|
||||||
framesContext->height = FFALIGN(params->height, m_TextureAlignment);
|
framesContext->height = FFALIGN(params->height, m_TextureAlignment);
|
||||||
|
|
||||||
// We can have up to 16 reference frames plus a working surface
|
// We can have up to 16 reference frames plus a working surface plus the maximum
|
||||||
|
// number of frames in our various pacing and rendering queues.
|
||||||
framesContext->initial_pool_size = DECODER_BUFFER_POOL_SIZE;
|
framesContext->initial_pool_size = DECODER_BUFFER_POOL_SIZE;
|
||||||
|
|
||||||
AVD3D11VAFramesContext* d3d11vaFramesContext = (AVD3D11VAFramesContext*)framesContext->hwctx;
|
AVD3D11VAFramesContext* d3d11vaFramesContext = (AVD3D11VAFramesContext*)framesContext->hwctx;
|
||||||
|
|
|
@ -60,7 +60,7 @@ private:
|
||||||
ID3D11PixelShader* m_VideoBt2020LimPixelShader;
|
ID3D11PixelShader* m_VideoBt2020LimPixelShader;
|
||||||
ID3D11Buffer* m_VideoVertexBuffer;
|
ID3D11Buffer* m_VideoVertexBuffer;
|
||||||
|
|
||||||
#define DECODER_BUFFER_POOL_SIZE 17
|
#define DECODER_BUFFER_POOL_SIZE 32
|
||||||
ID3D11ShaderResourceView* m_VideoTextureResourceViews[DECODER_BUFFER_POOL_SIZE][2];
|
ID3D11ShaderResourceView* m_VideoTextureResourceViews[DECODER_BUFFER_POOL_SIZE][2];
|
||||||
|
|
||||||
SDL_SpinLock m_OverlayLock;
|
SDL_SpinLock m_OverlayLock;
|
||||||
|
|
|
@ -55,7 +55,7 @@ private:
|
||||||
int m_DisplayHeight;
|
int m_DisplayHeight;
|
||||||
|
|
||||||
struct dxva_context m_DXVAContext;
|
struct dxva_context m_DXVAContext;
|
||||||
IDirect3DSurface9* m_DecSurfaces[19];
|
IDirect3DSurface9* m_DecSurfaces[32];
|
||||||
DXVA2_ConfigPictureDecode m_Config;
|
DXVA2_ConfigPictureDecode m_Config;
|
||||||
IDirectXVideoDecoderService* m_DecService;
|
IDirectXVideoDecoderService* m_DecService;
|
||||||
IDirectXVideoDecoder* m_Decoder;
|
IDirectXVideoDecoder* m_Decoder;
|
||||||
|
|
Loading…
Reference in a new issue