--- smp_motion_est.c 2002/07/07 10:20:16 1.2 +++ smp_motion_est.c 2002/07/12 12:26:24 1.4 @@ -42,7 +42,10 @@ #include #include + +#ifndef WIN32 #include +#endif #include "../encoder.h" #include "../utils/mbfunctions.h" @@ -78,14 +81,14 @@ case MODE_INTER: case MODE_INTER_Q: - pmv = get_pmv(pMBs, x, y, iWcount, 0); + pmv = get_pmv2(pMBs, iWcount, 0, x, y, 0); pMB->pmvs[0].x = pMB->mvs[0].x - pmv.x; pMB->pmvs[0].y = pMB->mvs[0].y - pmv.y; break; case MODE_INTER4V: for (k=0;k<4;k++) { - pmv = get_pmv(pMBs, x, y, iWcount, k); + pmv = get_pmv2(pMBs, iWcount, 0, x, y, k); pMB->pmvs[k].x = pMB->mvs[k].x - pmv.x; pMB->pmvs[k].y = pMB->mvs[k].y - pmv.y; } @@ -353,17 +356,17 @@ pthread_mutex_lock(&me_mutex); me_iIntra=0; - me_inqueue=NUMTHREADS; - me_corrqueue=NUMTHREADS; - me_outqueue=NUMTHREADS; + me_inqueue=pParam->num_threads; + me_corrqueue=pParam->num_threads; + me_outqueue=pParam->num_threads; if (!threadscreated) { - for (i=0;inum_threads;i++) { /* split domain into NUMTHREADS parts */ jdata[i].id = i; - jdata[i].minx = i*iWcount/NUMTHREADS; - jdata[i].maxx = (i+1)*iWcount/NUMTHREADS; + jdata[i].minx = i*iWcount/pParam->num_threads; + jdata[i].maxx = (i+1)*iWcount/pParam->num_threads; jdata[i].miny = 0; jdata[i].maxy = iHcount; jdata[i].gdata = &gdata;