Add intra refresh support to hevc_qsv as well.
Add an new intra refresh type: "horizontal", and an new param
ref_cycle_dist. This param specify the distance between the
beginnings of the intra-refresh cycles in frames.
Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
{"int_ref_type","Intra refresh type. B frames should be set to 0.",OFFSET(qsv.int_ref_type),AV_OPT_TYPE_INT,{.i64=-1},-1,UINT16_MAX,VE,"int_ref_type"},
{"int_ref_cycle_size","Number of frames in the intra refresh cycle",OFFSET(qsv.int_ref_cycle_size),AV_OPT_TYPE_INT,{.i64=-1},-1,UINT16_MAX,VE},
{"int_ref_qp_delta","QP difference for the refresh MBs",OFFSET(qsv.int_ref_qp_delta),AV_OPT_TYPE_INT,{.i64=INT16_MIN},INT16_MIN,INT16_MAX,VE},
{"recovery_point_sei","Insert recovery point SEI messages",OFFSET(qsv.recovery_point_sei),AV_OPT_TYPE_INT,{.i64=-1},-1,1,VE},
#if QSV_VERSION_ATLEAST(1, 16)
{"int_ref_cycle_dist","Distance between the beginnings of the intra-refresh cycles in frames",OFFSET(qsv.int_ref_cycle_dist),AV_OPT_TYPE_INT,{.i64=-1},-1,INT16_MAX,VE},
{"int_ref_cycle_size","Number of frames in the intra refresh cycle",OFFSET(qsv.int_ref_cycle_size),AV_OPT_TYPE_INT,{.i64=-1},-1,UINT16_MAX,VE},
{"int_ref_qp_delta","QP difference for the refresh MBs",OFFSET(qsv.int_ref_qp_delta),AV_OPT_TYPE_INT,{.i64=INT16_MIN},INT16_MIN,INT16_MAX,VE},
#if QSV_VERSION_ATLEAST(1, 16)
{"int_ref_cycle_dist","Distance between the beginnings of the intra-refresh cycles in frames",OFFSET(qsv.int_ref_cycle_dist),AV_OPT_TYPE_INT,{.i64=-1},-1,INT16_MAX,VE},