📄 h263_plugin.h
字号:
typedef struct h263_plugin_s{
video_decoder_t video_plugin;
stream_input_t *input;
dec_port_t *vo;
buf_element_t *fifo_buf_save;
//====================from global.h
int quiet;
int trace;
char errortext[256];
unsigned char *prev_frame[3], *current_frame[3], *bframe[3];
unsigned char *tmp_f[3], *tmp_b[3];
unsigned char *edgeframe[3], *edgeframeorig[3], *exnewframe[3];
unsigned char *nextedgeframe[3], *nextedgeframeorig[3];
unsigned char *enhancementedgeframe[3], *enhacnementedgeframeorig[3];
unsigned char *next_I_P_frame[3], *prev_I_P_frame[3], *buffered_frame[3];
int MV[2][6][MBR + 1][MBC + 2];
int true_B_direct_mode_MV[2][5][MBR + 1][MBC + 2];
int modemap[MBR + 1][MBC + 2];
int anchorframemodemap[MBR + 1][MBC + 2];
int predictionmap[MBR + 1][MBC + 2];
unsigned char *clp;
int horizontal_size, vertical_size, mb_width, mb_height;
int coded_picture_width, coded_picture_height;
int ref_coded_picture_width, ref_coded_picture_height;
int chrom_width, chrom_height, blk_cnt;
int ref_chrom_width, ref_chrom_height;
int pict_type, newgob, gfid, pgfid;
int mv_outside_frame;
int syntax_arith_coding;
int adv_pred_mode;
int overlapping_MC;
int use_4mv;
int pb_frame;
int true_B_frame;
int scalability_mode;
int buffered_framenum;
int long_vectors;
int fault, expand;
int verbose;
int refidct;
int matrix_coefficients;
int temp_ref, prev_non_disposable_temp_ref, next_non_disposable_temp_ref;
int pic_quant, quant, source_format, base_source_format;
int UFEP;
int prev_mv_outside_frame, prev_sac, prev_adv_pred, prev_aic, prev_df;
int prev_slice_struct, prev_rps, prev_isd, prev_aivlc, prev_mq;
int prev_4mv, prev_long_vectors, prev_obmc;
int plus_type; /* indicates if extended PTYPE exists or* not. */
int optional_custom_PCF;
int advanced_intra_coding;
int deblocking_filter_mode;
int slice_structured_mode;
int reference_picture_selection_mode;
int independently_segmented_decoding_mode;
int alternative_inter_VLC_mode;
int modified_quantization_mode;
int reduced_resolution_update_mode;
int reference_picture_resampling_mode;
int rtype;
int post_filter;
int unlimited_unrestricted_motion_vectors;
int concealment;
/* Scalability globals */
unsigned char *prev_enhancement_frame[MAX_LAYERS][3], *current_enhancement_frame[MAX_LAYERS][3];
unsigned char *curr_reference_frame[3], *upsampled_reference_frame[3];
unsigned char *enhance_edgeframeorig[MAX_LAYERS][3], *enhance_edgeframe[MAX_LAYERS][3];
unsigned char *tmp_enhance_fwd[MAX_LAYERS][3], *tmp_enhance_up[MAX_LAYERS][3];
int enhancement_layer_init[MAX_LAYERS];
int enhance_pict;
/* custom format variables */
int CP_PAR_code;
int CP_picture_width_indication;
int CP_picture_width;
int CP_picture_height_indication;
int CP_picture_height;
int PAR_width;
int PAR_height;
int CP_clock_frequency;
int SSS_rectangular_slices;
int SSS_arbitary_slice_ordering;
int enhancement_layer_num;
int reference_layer_number;
int MF_of_reference_picture_selection;
int TRI, TRPI;
int temporal_reference_for_prediction;
int trd, trb, bscan, bquant, true_b_trb;
/* output */
char *outputname;
char trace_file_name[100];
FILE *trace_file;
char recon_file_name[100];
FILE *recon_file_ptr;
char enhance_recon_file_name[MAX_LAYERS][100];
FILE *enhance_recon_file_ptr[MAX_LAYERS];
//struct ld
//{
/* bit input */
int infile;
unsigned char rdbfr[2051];
unsigned char *rdptr;
unsigned char inbfr[16];
int incnt;
int bitcnt;
/* block data */
short block[12][64];
//} base, *ld;
/* For reference picture selection Mode (Annex N) */
int ring_pointer; /* pointer - to last picture */
void *ring_lum[RING_SIZE]; /* luminance */
void *ring_Cr[RING_SIZE]; /* chominance */
void *ring_Cb[RING_SIZE];
int ring_temporal_reference[RING_SIZE]; /* TR values for the pictures */
int ring_quality[RING_SIZE]; /* picture quality */
int stop_decoder; /* flag if we completely out of sync */
#ifdef SINGLE_TEST
FILE *fpIn_raw;
FILE *fpOut_yuv;
#endif
}h263_plugin_t;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -