X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fmpeg2enc%2Fratectl.c;h=7758dae9f1e81db5ee1db35487bb7f1014e8cbcc;hb=0f8dc862440439b96c65bed178f2457f6f1cc079;hp=768384307e752f852a951b989a90b406cab72ff4;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/mpeg2enc/ratectl.c b/cinelerra-5.1/mpeg2enc/ratectl.c index 76838430..7758dae9 100644 --- a/cinelerra-5.1/mpeg2enc/ratectl.c +++ b/cinelerra-5.1/mpeg2enc/ratectl.c @@ -184,14 +184,14 @@ static int scale_quant(pict_data_s *picture, double quant ) - +#if 0 /* compute variance of 8x8 block */ static double var_sblk(p, lx) unsigned char *p; int lx; { int j; - register unsigned int v, s, s2; + unsigned int v, s, s2; s = s2 = 0; @@ -210,7 +210,7 @@ int lx; return (double)s2 / 64.0 - ((double)s / 64.0) * ((double)s / 64.0); } - +#endif static double calc_actj(pict_data_s *picture) { @@ -253,9 +253,9 @@ static double calc_actj(pict_data_s *picture) */ - for( l = 0; l < 6; ++l ) - actsum += - (*pquant_weight_coeff_sum) + if( cur_picture.mbinfo[k].dctblocks ) + for( l = 0; l < 6; ++l ) + actsum += (*pquant_weight_coeff_sum) ( cur_picture.mbinfo[k].dctblocks[l], i_q_mat ) ; actj = (double)actsum / (double)COEFFSUM_SCALE; if( actj < 12.0 ) @@ -291,7 +291,7 @@ void ratectl_init_pict(ratectl_t *ratectl, pict_data_s *picture) of DCT coefficients) and actual quantisation weighted activty. We use this to try to predict the activity of each frame. */ - + avg_K = 1; ratectl->actsum = calc_actj(picture ); ratectl->avg_act = (double)ratectl->actsum/(double)(mb_per_pict); ratectl->sum_avg_act += ratectl->avg_act;