Frame I DC value problem
"Xwen.Kong" <[email protected]> Tue, 22 Sep 2009 15:24:37 +0800
| Newsgroups | gmane.comp.video.xvid.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi,all In the function static int calc_acdc_coeff(...) has one line:
qcoeff[0] = qcoeff[0] - predictors[0];
which means that this 8x8 block DC value has used the predicted
direction value, but after the function returns , in function void
MBPrediction(...):
if (S<=0) { /* dont predict */
for (j = 0; j < 6; j++)
pMB->acpred_directions[j] = 0;
...
which means if S<=0 we do not use the prediction data, but the
qcoeff[0] has changed before, it seems not right.Should it be modified as
follows ?
if (S<=0) { /* dont predict */
qcoeff[0] += predictors[0];
for (j = 0; j < 6; j++)
pMB->acpred_directions[j] = 0;
...