本文整理汇总了C++中VIDC_SETFIELD函数的典型用法代码示例。如果您正苦于以下问题:C++ VIDC_SETFIELD函数的具体用法?C++ VIDC_SETFIELD怎么用?C++ VIDC_SETFIELD使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了VIDC_SETFIELD函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: vidc_sm_set_metadata_enable
void vidc_sm_set_metadata_enable(struct ddl_buf_addr *shared_mem,
u32 extradata_enable, u32 qp_enable, u32 concealed_mb_enable,
u32 vc1Param_enable, u32 sei_nal_enable, u32 vui_enable,
u32 enc_slice_size_enable, u32 mp2_data_dump_enable)
{
u32 metadata_enable;
metadata_enable = VIDC_SETFIELD((mp2_data_dump_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_MP2_DATADUMP_SHFT,
VIDC_SM_METADATA_ENABLE_MP2_DATADUMP_BMSK) |
VIDC_SETFIELD((extradata_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_EXTRADATA_SHFT,
VIDC_SM_METADATA_ENABLE_EXTRADATA_BMSK) |
VIDC_SETFIELD((enc_slice_size_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_ENC_SLICE_SIZE_SHFT,
VIDC_SM_METADATA_ENABLE_ENC_SLICE_SIZE_BMSK) |
VIDC_SETFIELD((vui_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_VUI_SHFT,
VIDC_SM_METADATA_ENABLE_VUI_BMSK) |
VIDC_SETFIELD((sei_nal_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_SEI_VIDC_SHFT,
VIDC_SM_METADATA_ENABLE_SEI_VIDC_BMSK) |
VIDC_SETFIELD((vc1Param_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_VC1_PARAM_SHFT,
VIDC_SM_METADATA_ENABLE_VC1_PARAM_BMSK) |
VIDC_SETFIELD((concealed_mb_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_CONCEALED_MB_SHFT,
VIDC_SM_METADATA_ENABLE_CONCEALED_MB_BMSK) |
VIDC_SETFIELD((qp_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_QP_SHFT,
VIDC_SM_METADATA_ENABLE_QP_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_METADATA_ENABLE_ADDR,
metadata_enable);
}
示例2: vidc_sm_set_i_frame_qp
void vidc_sm_set_i_frame_qp(struct ddl_buf_addr *shared_mem,
u32 nMaxQP, u32 nMinQP)
{
u32 nQbound;
nQbound = VIDC_SETFIELD(nMaxQP,
VIDC_SM_I_FRAME_QBOUND_MAX_QP_IFRAME_SHFT,
VIDC_SM_I_FRAME_QBOUND_MAX_QP_IFRAME_BMSK) |
VIDC_SETFIELD(nMinQP,
VIDC_SM_I_FRAME_QBOUND_MIN_QP_IFRAME_SHFT,
VIDC_SM_I_FRAME_QBOUND_MIN_QP_IFRAME_BMSK);
DDL_MEM_WRITE_32 (shared_mem, VIDC_SM_I_FRAME_QBOUND_IFRAME_ADDR,
nQbound);
}
示例3: vidc_pix_cache_init_config
void vidc_pix_cache_init_config(
struct vidc_1080P_pix_cache_config *config)
{
u32 cfg_reg = 0;
if (config->cache_enable)
cfg_reg |= HWIO_REG_22756_CACHE_EN_BMSK;
else
cfg_reg &= (~HWIO_REG_22756_CACHE_EN_BMSK);
if (config->port_select == VIDC_1080P_PIX_CACHE_PORT_A)
cfg_reg &=
(~HWIO_REG_22756_CACHE_PORT_SELECT_BMSK);
else
cfg_reg |= HWIO_REG_22756_CACHE_PORT_SELECT_BMSK;
if (!config->statistics_off)
cfg_reg |= HWIO_REG_22756_STATISTICS_OFF_BMSK;
else
cfg_reg &= (~HWIO_REG_22756_STATISTICS_OFF_BMSK);
if (config->prefetch_en)
cfg_reg |= HWIO_REG_22756_PREFETCH_EN_BMSK;
else
cfg_reg &= (~HWIO_REG_22756_PREFETCH_EN_BMSK);
cfg_reg &= (~HWIO_REG_22756_PAGE_SIZE_BMSK);
cfg_reg |= VIDC_SETFIELD(config->page_size,
HWIO_REG_22756_PAGE_SIZE_SHFT,
HWIO_REG_22756_PAGE_SIZE_BMSK);
VIDC_HWIO_OUT(REG_22756, cfg_reg);
}
示例4: vidc_sm_set_encoder_vop_time
void vidc_sm_set_encoder_vop_time(struct ddl_buf_addr *shared_mem,
u32 vop_time_enable, u32 time_resolution, u32 frame_delta)
{
u32 vop_time;
vop_time = VIDC_SETFIELD((vop_time_enable) ? 1 : 0,
VIDC_SM_ENC_VOP_TIMING_ENABLE_SHFT ,
VIDC_SM_ENC_VOP_TIMING_ENABLE_BMSK) |
VIDC_SETFIELD(time_resolution ,
VIDC_SM_ENC_VOP_TIMING_TIME_RESOLUTION_SHFT,
VIDC_SM_ENC_VOP_TIMING_TIME_RESOLUTION_BMSK) |
VIDC_SETFIELD(frame_delta,
VIDC_SM_ENC_VOP_TIMING_FRAME_DELTA_SHFT,
VIDC_SM_ENC_VOP_TIMING_FRAME_DELTA_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_ENC_VOP_TIMING_ADDR, vop_time);
}
示例5: vidc_sm_set_encoder_param_change
void vidc_sm_set_encoder_param_change(struct ddl_buf_addr *shared_mem,
u32 bit_rate_chg, u32 frame_rate_chg, u32 i_period_chg)
{
u32 enc_param_chg;
enc_param_chg = VIDC_SETFIELD((bit_rate_chg) ? 1 : 0,
VIDC_SM_ENC_PARAM_CHANGE_RC_BIT_RATE_SHFT,
VIDC_SM_ENC_PARAM_CHANGE_RC_BIT_RATE_BMSK) |
VIDC_SETFIELD((frame_rate_chg) ? 1 : 0,
VIDC_SM_ENC_PARAM_CHANGE_RC_FRAME_RATE_SHFT,
VIDC_SM_ENC_PARAM_CHANGE_RC_FRAME_RATE_BMSK) |
VIDC_SETFIELD((i_period_chg) ? 1 : 0,
VIDC_SM_ENC_PARAM_CHANGE_I_PERIOD_SHFT,
VIDC_SM_ENC_PARAM_CHANGE_I_PERIOD_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_ENC_PARAM_CHANGE_ADDR,
enc_param_chg);
}
示例6: vidc_sm_set_extended_encoder_control
void vidc_sm_set_extended_encoder_control(struct ddl_buf_addr
*shared_mem, u32 hec_enable,
enum VIDC_SM_frame_skip frame_skip_mode,
u32 seq_hdr_in_band, u32 vbv_buffer_size, u32 cpcfc_enable,
u32 sps_pps_control, u32 closed_gop_enable)
{
u32 enc_ctrl;
enc_ctrl = VIDC_SETFIELD((hec_enable) ? 1 : 0,
VIDC_SM_ENC_EXT_CTRL_HEC_ENABLE_SHFT,
VIDC_SM_ENC_EXT_CTRL_HEC_ENABLE_BMSK) |
VIDC_SETFIELD((u32) frame_skip_mode,
VIDC_SM_ENC_EXT_CTRL_FRAME_SKIP_ENABLE_SHFT,
VIDC_SM_ENC_EXT_CTRL_FRAME_SKIP_ENABLE_BMSK) |
VIDC_SETFIELD((seq_hdr_in_band) ? 1 : 0 ,
VIDC_SM_ENC_EXT_CTRL_SEQ_HDR_CTRL_SHFT ,
VIDC_SM_ENC_EXT_CTRL_SEQ_HDR_CTRL_BMSK) |
VIDC_SETFIELD(vbv_buffer_size,
VIDC_SM_ENC_EXT_CTRL_VBV_BUFFER_SIZE_SHFT,
VIDC_SM_ENC_EXT_CTRL_VBV_BUFFER_SIZE_BMSK) |
VIDC_SETFIELD((cpcfc_enable) ? 1 : 0,
VIDC_SM_ENC_EXT_CTRL_H263_CPCFC_ENABLE_SHFT,
VIDC_SM_ENC_EXT_CTRL_H263_CPCFC_ENABLE_BMSK) |
VIDC_SETFIELD((sps_pps_control) ? 1 : 0,
VIDC_SM_ENC_EXT_CTRL_SPS_PPS_CONTROL_SHFT,
VIDC_SM_ENC_EXT_CTRL_SPS_PPS_CONTROL_BMSK) |
VIDC_SETFIELD(closed_gop_enable,
VIDC_SM_ENC_EXT_CTRL_CLOSED_GOP_ENABLE_SHFT,
VIDC_SM_ENC_EXT_CTRL_CLOSED_GOP_ENABLE_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_ENC_EXT_CTRL_ADDR, enc_ctrl);
}
示例7: vidc_sm_set_metadata_enable
void vidc_sm_set_metadata_enable(struct ddl_buf_addr_type *p_shared_mem,
u32 b_extradata_enable, u32 b_qp_enable, u32 b_concealed_mb_enable,
u32 b_vc1Param_enable, u32 b_sei_nal_enable, u32 b_vui_enable,
u32 b_enc_slice_size_enable)
{
u32 n_metadata_enable;
n_metadata_enable = VIDC_SETFIELD((b_extradata_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_EXTRADATA_SHFT,
VIDC_SM_METADATA_ENABLE_EXTRADATA_BMSK) |
VIDC_SETFIELD((b_enc_slice_size_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_ENC_SLICE_SIZE_SHFT,
VIDC_SM_METADATA_ENABLE_ENC_SLICE_SIZE_BMSK) |
VIDC_SETFIELD((b_vui_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_VUI_SHFT,
VIDC_SM_METADATA_ENABLE_VUI_BMSK) |
VIDC_SETFIELD((b_sei_nal_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_SEI_VIDC_SHFT,
VIDC_SM_METADATA_ENABLE_SEI_VIDC_BMSK) |
VIDC_SETFIELD((b_vc1Param_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_VC1_PARAM_SHFT,
VIDC_SM_METADATA_ENABLE_VC1_PARAM_BMSK) |
VIDC_SETFIELD((b_concealed_mb_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_CONCEALED_MB_SHFT,
VIDC_SM_METADATA_ENABLE_CONCEALED_MB_BMSK) |
VIDC_SETFIELD((b_qp_enable) ? 1 : 0,
VIDC_SM_METADATA_ENABLE_QP_SHFT,
VIDC_SM_METADATA_ENABLE_QP_BMSK);
DDL_MEM_WRITE_32(p_shared_mem, VIDC_SM_METADATA_ENABLE_ADDR,
n_metadata_enable);
}
示例8: vidc_sm_set_idr_decode_only
void vidc_sm_set_idr_decode_only(struct ddl_buf_addr *shared_mem,
u32 enable)
{
u32 idr_decode_only = VIDC_SETFIELD((enable) ? 1 : 0,
VIDC_SM_IDR_DECODING_ONLY_SHIFT,
VIDC_SM_IDR_DECODING_ONLY_BMSK
);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_IDR_DECODING_ONLY_ADDR,
idr_decode_only);
}
示例9: vidc_sm_set_chroma_addr_change
void vidc_sm_set_chroma_addr_change(struct ddl_buf_addr *shared_mem,
u32 addr_change)
{
u32 chroma_addr_change = VIDC_SETFIELD((addr_change) ? 1 : 0,
VIDC_SM_CHROMA_ADDR_CHANGE_SHFT,
VIDC_SM_CHROMA_ADDR_CHANGE_BMASK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_CHROMA_ADDR_CHANGE_ADDR,
chroma_addr_change);
}
示例10: vidc_pix_cache_set_misr_filter_trans
void vidc_pix_cache_set_misr_filter_trans(u32 no_of_trans)
{
u32 misr_cfg_reg = 0;
VIDC_HWIO_IN(REG_883784, &misr_cfg_reg);
misr_cfg_reg &= (~HWIO_REG_883784_COUNTER_BMSK);
misr_cfg_reg |= VIDC_SETFIELD(no_of_trans,
HWIO_REG_883784_COUNTER_SHFT,
HWIO_REG_883784_COUNTER_BMSK);
VIDC_HWIO_OUT(REG_261029, misr_cfg_reg);
}
示例11: vidc_pix_cache_set_misr_interface
void vidc_pix_cache_set_misr_interface(u32 input_select)
{
u32 misr_cfg_reg = 0;
VIDC_HWIO_IN(REG_883784, &misr_cfg_reg);
misr_cfg_reg &= (~HWIO_REG_883784_INPUT_SEL_BMSK);
misr_cfg_reg |= VIDC_SETFIELD(input_select,
HWIO_REG_883784_INPUT_SEL_SHFT,
HWIO_REG_883784_INPUT_SEL_BMSK);
VIDC_HWIO_OUT(REG_261029, misr_cfg_reg);
}
示例12: vidc_sm_set_extradata_presence
void vidc_sm_set_extradata_presence(struct ddl_buf_addr *shared_mem,
u32 extradata_present)
{
u32 put_extradata;
put_extradata = VIDC_SETFIELD((extradata_present) ? 1 : 0,
VIDC_SM_PUT_EXTRADATA_PUT_SHFT,
VIDC_SM_PUT_EXTRADATA_PUT_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_PUT_EXTRADATA_ADDR,
put_extradata);
}
示例13: vidc_pix_cache_set_prefetch_page_limit
void vidc_pix_cache_set_prefetch_page_limit(u32 page_size_limit)
{
u32 cfg_reg = 0;
VIDC_HWIO_IN(REG_22756, &cfg_reg);
cfg_reg &= (~HWIO_REG_22756_PAGE_SIZE_BMSK);
cfg_reg |= VIDC_SETFIELD(page_size_limit,
HWIO_REG_22756_PAGE_SIZE_SHFT,
HWIO_REG_22756_PAGE_SIZE_BMSK);
VIDC_HWIO_OUT(REG_22756, cfg_reg);
}
示例14: vidc_sm_set_error_concealment_config
void vidc_sm_set_error_concealment_config(struct ddl_buf_addr *shared_mem,
u32 inter_slice, u32 intra_slice, u32 conceal_config_enable)
{
u32 error_conceal_config = 0;
error_conceal_config = VIDC_SETFIELD(inter_slice,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_INTER_SLICE_SHFT,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_INTER_SLICE_BMSK);
error_conceal_config |= VIDC_SETFIELD(intra_slice,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_INTRA_SLICE_SHFT,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_INTRA_SLICE_BMSK);
error_conceal_config |= VIDC_SETFIELD(conceal_config_enable,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_CONCEAL_ENABLE_SHFT,
VIDC_SM_ERROR_CONCEALMENT_CONFIG_CONCEAL_ENABLE_BMSK);
DDL_MEM_WRITE_32(shared_mem, VIDC_SM_ERROR_CONCEALMENT_CONFIG_ADDR,
error_conceal_config);
}
示例15: vidc_sm_set_extradata_presence
void vidc_sm_set_extradata_presence(struct ddl_buf_addr_type *p_shared_mem,
u32 b_extradata_present)
{
u32 n_put_extradata;
n_put_extradata = VIDC_SETFIELD((b_extradata_present) ? 1 : 0,
VIDC_SM_PUT_EXTRADATA_PUT_SHFT,
VIDC_SM_PUT_EXTRADATA_PUT_BMSK);
DDL_MEM_WRITE_32(p_shared_mem, VIDC_SM_PUT_EXTRADATA_ADDR,
n_put_extradata);
}