--- estimation_bvop.c 2003/09/30 18:20:31 1.1.2.2 +++ estimation_bvop.c 2003/11/16 15:32:37 1.1.2.4 @@ -21,7 +21,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: estimation_bvop.c,v 1.1.2.2 2003/09/30 18:20:31 edgomez Exp $ + * $Id: estimation_bvop.c,v 1.1.2.4 2003/11/16 15:32:37 edgomez Exp $ * ****************************************************************************/ @@ -291,7 +291,7 @@ ChoosePred(const MACROBLOCK * const pMB, const uint32_t mode) { /* the stupidiest function ever */ - return (mode == MODE_FORWARD ? pMB->mvs[0] : pMB->b_mvs[0]); + return (mode == MODE_FORWARD) ? pMB->mvs[0] : pMB->b_mvs[0]; } static void __inline @@ -468,8 +468,8 @@ if (sum < MAX_CHROMA_SAD_FOR_SKIP * (int)Data->iQuant) { pMB->mode = MODE_DIRECT_NONE_MV; /* skipped */ for (k = 0; k < 4; k++) { - pMB->qmvs[k] = pMB->mvs[k]; - pMB->b_qmvs[k] = pMB->b_mvs[k]; + pMB->qmvs[k] = pMB->mvs[k] = Data->directmvF[k]; + pMB->b_qmvs[k] = pMB->b_mvs[k] = Data->directmvB[k]; } } } @@ -800,6 +800,8 @@ if (b_reference->coding_type != S_VOP) if (b_mb->mode == MODE_NOT_CODED) { pMB->mode = MODE_NOT_CODED; + pMB->mvs[0] = zeroMV; + pMB->b_mvs[0] = zeroMV; continue; }