[cvs] / xvidcore / src / encoder.c Repository:
ViewVC logotype

Diff of /xvidcore/src/encoder.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.54, Thu Jul 11 00:15:59 2002 UTC revision 1.56, Thu Jul 18 23:52:40 2002 UTC
# Line 212  Line 212 
212          if (pParam->max_key_interval == 0)          if (pParam->max_key_interval == 0)
213                  pParam->max_key_interval = 10 * pParam->fincr / pParam->fbase;                  pParam->max_key_interval = 10 * pParam->fincr / pParam->fbase;
214    
   
215          pEnc = (Encoder *) xvid_malloc(sizeof(Encoder), CACHE_LINE);          pEnc = (Encoder *) xvid_malloc(sizeof(Encoder), CACHE_LINE);
216          if (pEnc == NULL)          if (pEnc == NULL)
217                  return XVID_ERR_MEMORY;                  return XVID_ERR_MEMORY;
# Line 237  Line 236 
236    
237          pEnc->mbParam.m_quant_type = H263_QUANT;          pEnc->mbParam.m_quant_type = H263_QUANT;
238    
239    #ifdef _SMP
240            pEnc->mbParam.num_threads = MIN(pParam->num_threads, MAXNUMTHREADS);
241    #endif
242    
243          pEnc->sStat.fMvPrevSigma = -1;          pEnc->sStat.fMvPrevSigma = -1;
244    
245          /* Fill rate control parameters */          /* Fill rate control parameters */
# Line 1595  Line 1598 
1598          } else {          } else {
1599    
1600  #ifdef _SMP  #ifdef _SMP
1601                  if (NUMTHREADS > 1)          if (pEnc->mbParam.num_threads > 1)
1602                          bIntra =                          bIntra =
1603                                  SMP_MotionEstimation(&pEnc->mbParam, pEnc->current, pEnc->reference,                                  SMP_MotionEstimation(&pEnc->mbParam, pEnc->current, pEnc->reference,
1604                                                           &pEnc->vInterH, &pEnc->vInterV, &pEnc->vInterHV,                                                           &pEnc->vInterH, &pEnc->vInterV, &pEnc->vInterHV,
1605                                                           iLimit);                                                           iLimit);
1606                  else                  else
1607  #endif  #endif
   
1608                  bIntra =                  bIntra =
1609                           MotionEstimation(&pEnc->mbParam, pEnc->current, pEnc->reference,                           MotionEstimation(&pEnc->mbParam, pEnc->current, pEnc->reference,
1610                                                      &pEnc->vInterH, &pEnc->vInterV, &pEnc->vInterHV,                                                      &pEnc->vInterH, &pEnc->vInterV, &pEnc->vInterHV,
1611                                                      iLimit);                                                      iLimit);
1612    
   
1613          }          }
1614          stop_motion_timer();          stop_motion_timer();
1615    
# Line 1843  Line 1844 
1844    
1845                          if ((mb->mode == MODE_INTERPOLATE || mb->mode == MODE_DIRECT)                          if ((mb->mode == MODE_INTERPOLATE || mb->mode == MODE_DIRECT)
1846                                  && mb->cbp == 0 && mb->mvs[0].x == 0 && mb->mvs[0].y == 0) {                                  && mb->cbp == 0 && mb->mvs[0].x == 0 && mb->mvs[0].y == 0) {
1847                                  mb->mode = 5;   // skipped                                  mb->mode = MODE_DIRECT_NONE_MV; // skipped
1848                          }                          }
1849    
1850                          if (mb->mode == MODE_INTERPOLATE || mb->mode == MODE_FORWARD) {                          if (mb->mode == MODE_INTERPOLATE || mb->mode == MODE_FORWARD) {

Legend:
Removed from v.1.54  
changed lines
  Added in v.1.56

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4