diff options
Diffstat (limited to 'libhb/handbrake/qsv_common.h')
-rw-r--r-- | libhb/handbrake/qsv_common.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libhb/handbrake/qsv_common.h b/libhb/handbrake/qsv_common.h index 2277468b0..1f762fa77 100644 --- a/libhb/handbrake/qsv_common.h +++ b/libhb/handbrake/qsv_common.h @@ -206,6 +206,8 @@ typedef struct QSVMid { AVBufferRef *hw_frames_ref; mfxHDL handle; + void *texture; + AVFrame *locked_frame; AVFrame *hw_frame; mfxFrameSurface1 surf; @@ -224,10 +226,11 @@ typedef struct QSVFrame { struct QSVFrame *next; } QSVFrame; -#define HB_POOL_SURFACE_SIZE (200) +#define HB_POOL_SURFACE_SIZE (64) typedef struct EncQSVFramesContext { AVBufferRef *hw_frames_ctx; + AVBufferRef *hw_frames_ctx2; //void *logctx; /* The memory ids for the external frames. @@ -235,9 +238,13 @@ typedef struct EncQSVFramesContext { * (i.e. by the encoder/decoder) and another one given to the MFX session * from the frame allocator. */ AVBufferRef *mids_buf; + AVBufferRef *mids_buf2; QSVMid *mids; + QSVMid *mids2; int nb_mids; int pool[HB_POOL_SURFACE_SIZE]; + int pool2[HB_POOL_SURFACE_SIZE]; + void *input_texture; } EncQSVFramesContext; /* Full QSV pipeline helpers */ |