28 |
* along with this program; if not, write to the Free Software |
* along with this program; if not, write to the Free Software |
29 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
30 |
* |
* |
31 |
* $Id: encoder.c,v 1.80 2002-09-05 19:34:35 edgomez Exp $ |
* $Id: encoder.c,v 1.83 2002-09-12 18:53:35 edgomez Exp $ |
32 |
* |
* |
33 |
****************************************************************************/ |
****************************************************************************/ |
34 |
|
|
560 |
emms(); |
emms(); |
561 |
|
|
562 |
if (pFrame->quant == 0) { |
if (pFrame->quant == 0) { |
563 |
RateControlUpdate(&pEnc->rate_control, pEnc->current->quant, |
RateControlUpdate(&pEnc->rate_control, (int16_t)pEnc->current->quant, |
564 |
pFrame->length, pFrame->intra); |
pFrame->length, pFrame->intra); |
565 |
} |
} |
566 |
#ifdef _DEBUG_PSNR |
#ifdef _DEBUG_PSNR |
889 |
DECLARE_ALIGNED_MATRIX(qcoeff, 6, 64, int16_t, CACHE_LINE); |
DECLARE_ALIGNED_MATRIX(qcoeff, 6, 64, int16_t, CACHE_LINE); |
890 |
|
|
891 |
int iLimit; |
int iLimit; |
892 |
int x, y, k; |
unsigned int x, y; |
893 |
int iSearchRange; |
int iSearchRange; |
894 |
int bIntra; |
int bIntra; |
895 |
|
|
1000 |
CodeIntraMB(pEnc, pMB); |
CodeIntraMB(pEnc, pMB); |
1001 |
MBTransQuantIntra(&pEnc->mbParam, pEnc->current, pMB, x, y, |
MBTransQuantIntra(&pEnc->mbParam, pEnc->current, pMB, x, y, |
1002 |
dct_codes, qcoeff); |
dct_codes, qcoeff); |
|
} |
|
1003 |
|
|
1004 |
start_timer(); |
start_timer(); |
1005 |
MBPrediction(pEnc->current, x, y, pEnc->mbParam.mb_width, qcoeff); |
MBPrediction(pEnc->current, x, y, pEnc->mbParam.mb_width, qcoeff); |
1006 |
stop_prediction_timer(); |
stop_prediction_timer(); |
1007 |
|
} |
1008 |
|
|
1009 |
if (pMB->mode == MODE_INTRA || pMB->mode == MODE_INTRA_Q) { |
if (pMB->mode == MODE_INTRA || pMB->mode == MODE_INTRA_Q) { |
1010 |
pEnc->sStat.kblks++; |
pEnc->sStat.kblks++; |