--- decoder.h 2003/06/09 13:50:02 1.13.2.3 +++ decoder.h 2010/03/09 10:00:14 1.19 @@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: decoder.h,v 1.13.2.3 2003/06/09 13:50:02 edgomez Exp $ + * $Id: decoder.h,v 1.19 2010/03/09 10:00:14 Isibaar Exp $ * ****************************************************************************/ @@ -30,6 +30,7 @@ #include "portab.h" #include "global.h" #include "image/image.h" +#include "image/postprocessing.h" /***************************************************************************** * Structures @@ -79,9 +80,12 @@ uint32_t time_inc_bits; uint32_t shape; + int ver_id; uint32_t quant_bits; uint32_t quant_type; + uint16_t *mpeg_quant_matrices; int32_t quarterpel; + int32_t cartoon_mode; int complexity_estimation_disable; ESTIMATION estimation; @@ -101,6 +105,9 @@ int newpred_enable; int reduced_resolution_enable; + /* The bitstream version if it's a Xvid stream */ + int bs_version; + /* image */ int fixed_dimensions; @@ -115,6 +122,9 @@ IMAGE tmp; /* bframe interpolation, and post processing tmp buffer */ IMAGE qtmp; /* quarter pel tmp buffer */ + /* postprocessing */ + XVID_POSTPROC postproc; + /* macroblock */ uint32_t mb_width; @@ -136,17 +146,23 @@ int64_t time_base; int64_t last_time_base; int64_t last_non_b_time; - uint32_t time_pp; - uint32_t time_bp; + int32_t time_pp; + int32_t time_bp; uint32_t low_delay; /* low_delay flage (1 means no B_VOP) */ uint32_t low_delay_default; /* default value for low_delay flag */ /* for GMC: central place for all parameters */ - + IMAGE gmc; /* gmc tmp buffer, remove for blockbased compensation */ GMC_DATA gmc_data; - + NEW_GMC_DATA new_gmc_data; + xvid_image_t* out_frm; /* This is used for slice rendering */ + + int * qscale; /* quantization table for decoder's stats */ + + /* Tells if the reference image is edged or not */ + int is_edged[2]; } DECODER;