FFmpeg
|
This struct is allocated as AVHWFramesContext.hwctx. More...
#include <hwcontext_d3d11va.h>
Data Fields | |
ID3D11Texture2D * | texture |
The canonical texture used for pool allocation. More... | |
UINT | BindFlags |
D3D11_TEXTURE2D_DESC.BindFlags used for texture creation. More... | |
UINT | MiscFlags |
D3D11_TEXTURE2D_DESC.MiscFlags used for texture creation. More... | |
AVD3D11FrameDescriptor * | texture_infos |
In case if texture structure member above is not NULL contains the same texture pointer for all elements and different indexes into the array texture. More... | |
This struct is allocated as AVHWFramesContext.hwctx.
Definition at line 131 of file hwcontext_d3d11va.h.
ID3D11Texture2D* AVD3D11VAFramesContext::texture |
The canonical texture used for pool allocation.
If this is set to NULL on init, the hwframes implementation will allocate and set an array texture if initial_pool_size > 0.
The only situation when the API user should set this is:
Deallocating the AVHWFramesContext will always release this interface, and it does not matter whether it was user-allocated.
This is in particular used by the libavcodec D3D11VA hwaccel, which requires a single array texture. It will create ID3D11VideoDecoderOutputView objects for each array texture element on decoder initialization.
Definition at line 152 of file hwcontext_d3d11va.h.
Referenced by d3d11va_frames_init(), d3d11va_frames_uninit(), and d3d11va_pool_alloc().
UINT AVD3D11VAFramesContext::BindFlags |
D3D11_TEXTURE2D_DESC.BindFlags used for texture creation.
The user must at least set D3D11_BIND_DECODER if the frames context is to be used for video decoding. This field is ignored/invalid if a user-allocated texture is provided.
Definition at line 160 of file hwcontext_d3d11va.h.
Referenced by d3d11va_alloc_single(), d3d11va_frames_init(), ff_dxva2_common_frame_params(), qsv_frames_derive_from(), qsv_frames_derive_to(), and qsv_init_child_ctx().
UINT AVD3D11VAFramesContext::MiscFlags |
D3D11_TEXTURE2D_DESC.MiscFlags used for texture creation.
This field is ignored/invalid if a user-allocated texture is provided.
Definition at line 166 of file hwcontext_d3d11va.h.
Referenced by d3d11va_alloc_single(), d3d11va_frames_init(), qsv_frames_derive_from(), and qsv_init_child_ctx().
AVD3D11FrameDescriptor* AVD3D11VAFramesContext::texture_infos |
In case if texture structure member above is not NULL contains the same texture pointer for all elements and different indexes into the array texture.
In case if texture structure member above is NULL, all elements contains pointers to separate non-array textures and 0 indexes. This field is ignored/invalid if a user-allocated texture is provided.
Definition at line 175 of file hwcontext_d3d11va.h.
Referenced by d3d11va_frames_init(), d3d11va_frames_uninit(), qsv_frames_derive_from(), qsv_frames_derive_to(), qsv_init_child_ctx(), and wrap_texture_buf().