📄 mae_vpi.h
字号:
/* <LIC_AMD_STD> * Copyright (C) 2003-2005 Advanced Micro Devices, Inc. All Rights Reserved. * * Unless otherwise designated in writing, this software and any related * documentation are the confidential proprietary information of AMD. * THESE MATERIALS ARE PROVIDED "AS IS" WITHOUT ANY * UNLESS OTHERWISE NOTED IN WRITING, EXPRESS OR IMPLIED WARRANTY OF ANY * KIND, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, * NONINFRINGEMENT, TITLE, FITNESS FOR ANY PARTICULAR PURPOSE AND IN NO * EVENT SHALL AMD OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER. * * AMD does not assume any responsibility for any errors which may appear * in the Materials nor any responsibility to support or update the * Materials. AMD retains the right to modify the Materials at any time, * without notice, and is not obligated to provide such modified * Materials to you. AMD is not obligated to furnish, support, or make * any further information available to you. * </LIC_AMD_STD> *//* <CTL_AMD_STD>// File Id and RCS Info: // $Source: /home/cvs/travis/mae/env/mae_vpi.h,v $// $Id: mae_vpi.h,v 1.29 2004/05/15 04:04:26 eswartz Exp $//=======================================================================// Revision History:// $Log: mae_vpi.h,v $// Revision 1.29 2004/05/15 04:04:26 eswartz// Needed to add buffers to X checker//// Revision 1.28 2004/04/13 23:46:12 eswartz// Removed b,c,+,-,o checkers//// Revision 1.27 2004/04/07 08:15:11 eswartz// Added function to read in ref frames//// Revision 1.26 2004/03/23 02:20:13 eswartz// Interlacing changes//// Revision 1.25 2004/03/22 04:55:27 eswartz// Intermediate checkers had to be modified for out-of-frame pixel calculations//// Revision 1.24 2004/03/19 06:33:41 eswartz// Changed hpel mcomp and how rounding was done in idct//// Revision 1.23 2004/03/09 06:19:38 nathans// remove so insure works better//// Revision 1.22 2004/03/08 23:24:45 hvasudev// Appending "MAE" to some structre vars (WMV9 specific).//// Revision 1.21 2004/03/04 20:06:30 eswartz// Added xformtype to structure//// Revision 1.20 2004/03/02 01:51:21 eswartz// Defined some new global arrays for wmv9 deblocking//// Revision 1.19 2004/02/25 01:02:34 eswartz// wmv9 mcomp intermediate checkers//// Revision 1.18 2004/02/19 23:30:03 eswartz// Added support for wmv9 Overlap Smoothing filter//// Revision 1.17 2004/02/16 15:36:59 kevinl// added support for csc output checker//// Revision 1.16 2004/01/22 19:21:51 eswartz// Added switch to turn off X checker during out-of-frame pixels//// Revision 1.15 2003/12/12 20:42:07 eswartz// Moved global declarations to mae_global.c//// Revision 1.14 2003/12/05 22:50:25 eswartz// Added/Removed stuff to make it easier to integrate into a winnt environment.//// Revision 1.13 2003/11/25 19:19:31 eriks// latest version from 1400 mode; fixed x checker for 64-bit stuff.//// Revision 1.12 2003-11-10 17:16:22-06 eswartz// 8 intermediate buffers instead of 6...in preparation for 4:2:2 changes//// Revision 1.11 2003-10-28 17:49:47-06 eswartz// Added function to fail after failing macroblock.//// Revision 1.10 2003-10-17 10:48:23-05 nathans// eric forgot to check in this file//// Revision 1.9 2003-08-20 14:19:24-05 kevinl// added new intermediate checker vpi routines (mae scf)//// Revision 1.8 2003/08/20 18:33:46 eswartz// Added qpel intermediate checker vars & functions//// Revision 1.7 2003-08-06 15:09:47-05 eswartz// Added intermediate pixel checkers//// Revision 1.6 2003-05-07 11:29:33-05 eswartz// Added support for mcomp.//// Revision 1.5 2003-04-04 21:08:42-06 eswartz// Added intermediate checkers on iquant, transpose buffer, before & after saturation.//// Revision 1.4 2003-03-26 14:36:21-06 eswartz// Mae front end checker support.//// Revision 1.3 2003-03-07 14:38:56-06 eswartz// Added support mae front end//// ,//// Revision 1.2 2002-11-11 13:19:43-06 eswartz// Added intermediate checker//// Revision 1.1 2002-11-08 13:55:20-06 eswartz// Added check routine.//// Revision 1.0 2002-10-29 19:44:38-06 eswartz// Initial revision * </CTL_AMD_STD> *//* <DOC_AMD_STD> * </DOC_AMD_STD> */#ifndef _MAE_VPI_H_#define _MAE_VPI_H_#include "mae_fe.h"#include "wmv9_filters.h"void mae_chk_csc_output_data_task();void mae_wr_reg_task();void mae_back_end_task();void mae_cp_data_task();void mae_chk_ba_task();void mae_chk_scf_vert_input_data_task();void mae_chk_scf_horz_scaling_task();void mae_chk_scf_horz_input_data_task();void mae_chk_scf_task();void mae_process_mb_task();void mae_init_task();void mae_final_chk_task();void mae_chk_iq_task();void mae_chk_tb_task();void mae_chk_presat_task();void mae_chk_postsat_task();void mae_chk_cbp_task();void mae_chk_fwd_Xs_task();void mae_chk_bwd_Xs_task();void mae_chk_fwd_As_task();void mae_chk_bwd_As_task();void stopandfail();void mae_init_ref_frame(uint32 y_in, uint32 cb_in, uint32 cr_in);// Used in wmv9_filtersextern int16 * xmotiony;extern int16 * xmotionc;extern int16 * ymotiony;extern int16 * ymotionc;extern MAE_CWMVMBMode * embmd;extern MAE_LOOPF_FLAG * loopfilterflags;extern uint8 * Filter8x8RowFlagY0;extern uint8 * Filter8x4RowFlagY0;extern uint8 * Filter8x8RowFlagU0;extern uint8 * Filter8x4RowFlagU0;extern uint8 * Filter8x8RowFlagV0;extern uint8 * Filter8x4RowFlagV0;extern uint8 * Filter8x8ColFlagY0;extern uint8 * Filter4x8ColFlagY0;extern uint8 * Filter8x8ColFlagU0;extern uint8 * Filter4x8ColFlagU0;extern uint8 * Filter8x8ColFlagV0;extern uint8 * Filter4x8ColFlagV0;// Data from the section headerextern mae_frontend * mae_fe;extern int mae_num_mb;// Final frame checking buffer for yextern uint32 * y_dst_ptr_0;extern uint32 * y_dst_ptr_1;extern uint32 y_in;extern uint32 y_out;// Final frame checking buffer for crextern uint32 * cr_dst_ptr_0;extern uint32 * cr_dst_ptr_1;extern uint32 cr_in;extern uint32 cr_out;// Final frame checking buffer for cbextern uint32 * cb_dst_ptr_0;extern uint32 * cb_dst_ptr_1;extern uint32 cb_in;extern uint32 cb_out;// Frame buffers to contain unsaturated data wmv9 loopfiltersextern int16 * cur_y_unsat;extern int16 * cur_cr_unsat;extern int16 * cur_cb_unsat;typedef struct mae_mcomp_int_chk_struct{ uint8 data[384]; uint16 data16[660]; uint32 bn; uint32 mc_mode; uint32 mc_type; uint64 oof; uint32 mc_prec;} mae_mcomp_int_chk;typedef struct mae_iqidct_int_chk_struct{ int64 data[64]; uint32 bn; uint32 mc_mode; uint32 mc_type; uint32 blk_xformsize;} mae_iqidct_int_chk;// CBP intermediate checker bufferextern mae_iqidct_int_chk cbp_buf[2][8];extern uint32 cbp_in;extern uint32 cbp_out;extern uint32 cbp_blk_cnt;extern uint32 cbp_row_cnt;// IQuant intermediate checker bufferextern mae_iqidct_int_chk iq_buf[2][8];extern uint32 iq_in;extern uint32 iq_out;extern uint32 iq_blk_cnt;extern uint32 iq_row_cnt;// Transpose buffer intermediate checker bufferextern mae_iqidct_int_chk tb[2][8];extern uint32 tb_in;extern uint32 tb_out;extern uint32 tb_blk_cnt;extern uint32 tb_row_cnt;// Prior to saturation intermediate checker bufferextern mae_iqidct_int_chk presat[2][8];extern uint32 presat_in;extern uint32 presat_out;extern uint32 presat_blk_cnt;extern uint32 presat_half_row_cnt;// After to saturation intermediate checker bufferextern mae_iqidct_int_chk postsat[2][8];extern uint32 postsat_in;extern uint32 postsat_out;extern uint32 postsat_blk_cnt;extern uint32 postsat_half_row_cnt;// X pixel intermediate checkerextern mae_mcomp_int_chk x_fwd_pixel[32];extern uint32 x_fwd_pixel_out;extern uint32 x_fwd_blk_in;extern uint32 x_fwd_blk_out;extern mae_mcomp_int_chk x_bwd_pixel[32];extern uint32 x_bwd_pixel_out;extern uint32 x_bwd_blk_in;extern uint32 x_bwd_blk_out;// A pixel intermediate checkerextern mae_mcomp_int_chk a_fwd_pixel[32];extern uint32 a_fwd_pixel_out;extern uint32 a_fwd_blk_in;extern uint32 a_fwd_blk_out;extern mae_mcomp_int_chk a_bwd_pixel[32];extern uint32 a_bwd_pixel_out;extern uint32 a_bwd_blk_in;extern uint32 a_bwd_blk_out;extern uint32 * current_y_ptr;extern uint32 * current_cb_ptr;extern uint32 * current_cr_ptr;extern uint32 * backward_y_top_ptr;extern uint32 * backward_cb_top_ptr;extern uint32 * backward_cr_top_ptr;extern uint32 * forward_y_top_ptr;extern uint32 * forward_cb_top_ptr;extern uint32 * forward_cr_top_ptr;extern uint32 * backward_y_bot_ptr;extern uint32 * backward_cb_bot_ptr;extern uint32 * backward_cr_bot_ptr;extern uint32 * forward_y_bot_ptr;extern uint32 * forward_cb_bot_ptr;extern uint32 * forward_cr_bot_ptr;#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -