--- divx4.c 2002/03/08 20:53:48 1.2 +++ divx4.c 2002/04/21 02:30:24 1.7 @@ -39,8 +39,11 @@ * *************************************************************************/ - +#ifndef FREEBSD #include +#else +#include +#endif #include // memset #include "xvid.h" @@ -251,7 +254,8 @@ case DEC_OPT_FRAME: { - int csp_tmp; + int csp_tmp = 0; + DEC_FRAME * dframe = (DEC_FRAME *)param1; DINST * dcur = dinst_find(key); if (dcur == NULL) @@ -309,7 +313,7 @@ #define FRAMERATE_INCR 1001 -int pmvfast_presets[7] = { +int divx4_motion_presets[7] = { 0, PMV_QUICKSTOP16, PMV_EARLYSTOP16, PMV_EARLYSTOP16 | PMV_EARLYSTOP8, PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EARLYSTOP8 | PMV_HALFPELDIAMOND8, PMV_EARLYSTOP16 | PMV_HALFPELREFINE16 | PMV_EARLYSTOP8 | PMV_HALFPELDIAMOND8, @@ -346,8 +350,10 @@ xparam.fincr = FRAMERATE_INCR; xparam.fbase = (int)(FRAMERATE_INCR * eparam->framerate); } - xparam.bitrate = eparam->bitrate; - xparam.rc_buffersize = 10 * eparam->bitrate; + xparam.rc_bitrate = eparam->bitrate; + xparam.rc_reaction_delay_factor = 16; + xparam.rc_averaging_period = 100; + xparam.rc_buffer = 100; xparam.min_quantizer = eparam->min_quantizer; xparam.max_quantizer = eparam->max_quantizer; xparam.max_key_interval = eparam->max_key_interval; @@ -382,7 +388,7 @@ if(quality > 3) xframe.general |= XVID_INTER4V; - xframe.motion = pmvfast_presets[quality]; + xframe.motion = divx4_motion_presets[quality]; xframe.image = eframe->image; switch (eframe->colorspace)