ref: 6d9c27e525cb86a650ff7d4fc82fc27bb74fd59c
dir: /vpuctx.h/
typedef struct VPUctx VPUctx;
struct VPUctx {
int process;
int slen;
union {
/* h.264 decoding */
struct {
/* FIXME userspace */
u32int useDefaultScalingMatrixFlag;
int PicSizeInMapUnits;
u8int sl4x4[6*16];
u8int sl8x8[6*64];
struct {
int left, right;
int top, bottom;
}crop;
u8int nal_ref_idc;
u8int nal_unit_type;
struct {
u16int pic_height_in_map_units_minus1;
u16int pic_width_in_mbs_minus1;
u8int chroma_format_idc;
u8int frame_mbs_only_flag;
u8int log2_max_frame_num_minus4;
u8int max_num_ref_frames;
u8int profile_idc;
u8int direct_8x8_inference_flag;
u8int mb_adaptive_frame_field_flag;
u8int seq_scaling_matrix_present_flag;
u8int separate_colour_plane_flag;
/* FIXME userspace */
u8int log2_max_pic_order_cnt_lsb_minus4; /* 0-12 */
u8int pic_order_cnt_type; /* 0-2 */
u8int delta_pic_order_always_zero_flag;
}sps;
struct {
s8int chroma_qp_index_offset;
s8int pic_init_qp_minus26;
s8int second_chroma_qp_index_offset;
u8int weighted_bipred_idc;
u8int num_ref_idx_l0_default_active_minus1;
u8int num_ref_idx_l1_default_active_minus1;
u8int constrained_intra_pred_flag;
u8int deblocking_filter_control_present_flag;
u8int entropy_coding_mode_flag;
u8int pic_scaling_matrix_present_flag;
u8int redundant_pic_cnt_present_flag;
u8int transform_8x8_mode_flag;
u8int weighted_pred_flag;
u8int pic_parameter_set_id;
/* FIXME userspace */
u8int bottom_field_pic_order_in_frame_present_flag;
u8int num_slice_groups_minus1;
u8int slice_group_map_type;
}pps;
struct {
u16int frame_num;
u16int idr_pic_id;
u32int size_dec_ref_pic_marking;
u8int size_pic_order_cnt_lsb;
u8int size_delta_pic_order_cnt_bottom;
u8int size_delta_pic_order_cnt0;
u8int size_delta_pic_order_cnt1;
u8int field_pic_flag;
u8int bottom_field_flag;
}sh;
};
};
};