[svn] / branches / dev-api-3 / vfw / src / 2pass.c Repository:
ViewVC logotype

Diff of /branches/dev-api-3/vfw/src/2pass.c

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

revision 734, Fri Dec 20 05:14:34 2002 UTC revision 735, Fri Dec 20 05:35:56 2002 UTC
# Line 993  Line 993 
993    
994          if (twopass->nns_array_pos >= twopass->nns_array_length)          if (twopass->nns_array_pos >= twopass->nns_array_length)
995          {          {
996                  twopass->nns_array_pos = 0;                  // fix for VirtualDub 1.4.13 bframe handling
997                    if (codec->config.max_bframes > 0 &&
998                            codec->framenum < twopass->nns_array_length + codec->config.max_bframes)
999                    {
1000                            return ICERR_OK;
1001                    }
1002                    else
1003                    {
1004                  DEBUGERR("ERROR: VIDEO EXCEEDS 1ST PASS!!!");                  DEBUGERR("ERROR: VIDEO EXCEEDS 1ST PASS!!!");
1005                  return ICERR_ERROR;                  return ICERR_ERROR;
1006          }          }
1007            }
1008    
1009          memcpy(&twopass->nns1, &twopass->nns1_array[twopass->nns_array_pos], sizeof(NNSTATS));          memcpy(&twopass->nns1, &twopass->nns1_array[twopass->nns_array_pos], sizeof(NNSTATS));
1010          if (codec->config.mode == DLG_MODE_2PASS_2_EXT)          if (codec->config.mode == DLG_MODE_2PASS_2_EXT)
# Line 1012  Line 1020 
1020                  twopass->bytes2 = bytes1;                  twopass->bytes2 = bytes1;
1021                  twopass->desired_bytes2 = bytes1;                  twopass->desired_bytes2 = bytes1;
1022                  frame->intra = 3;                  frame->intra = 3;
1023                  return 2;                  return ICERR_OK;
1024          }          }
1025          else if (twopass->nns1.dd_v & NNSTATS_PADFRAME)          else if (twopass->nns1.dd_v & NNSTATS_PADFRAME)
1026          {          {
# Line 1020  Line 1028 
1028                  twopass->bytes2 = bytes1;                  twopass->bytes2 = bytes1;
1029                  twopass->desired_bytes2 = bytes1;                  twopass->desired_bytes2 = bytes1;
1030                  frame->intra = 4;                  frame->intra = 4;
1031                  return 2;                  return ICERR_OK;
1032          }          }
1033          else if (twopass->nns1.dd_v & NNSTATS_DELAYFRAME)          else if (twopass->nns1.dd_v & NNSTATS_DELAYFRAME)
1034          {          {
# Line 1028  Line 1036 
1036                  twopass->bytes2 = bytes1;                  twopass->bytes2 = bytes1;
1037                  twopass->desired_bytes2 = bytes1;                  twopass->desired_bytes2 = bytes1;
1038                  frame->intra = 5;                  frame->intra = 5;
1039                  return 2;                  return ICERR_OK;
1040          }          }
1041    
1042          overflow = twopass->overflow / 8;          overflow = twopass->overflow / 8;
# Line 1473  Line 1481 
1481                  frame->general |= (frame->quant < 4) ? XVID_MPEGQUANT : XVID_H263QUANT;                  frame->general |= (frame->quant < 4) ? XVID_MPEGQUANT : XVID_H263QUANT;
1482                  frame->general &= (frame->quant < 4) ? ~XVID_H263QUANT : ~XVID_MPEGQUANT;                  frame->general &= (frame->quant < 4) ? ~XVID_H263QUANT : ~XVID_MPEGQUANT;
1483          }          }
1484  /*  
1485          if (codec->config.quant_type == QUANT_MODE_MOD_NEW)          if (codec->config.quant_type == QUANT_MODE_MOD_NEW)
1486          {          {
1487                  frame->general |= (frame->quant < 4) ? XVID_H263QUANT : XVID_MPEGQUANT;                  frame->general |= (frame->quant < 4) ? XVID_H263QUANT : XVID_MPEGQUANT;
1488                  frame->general &= (frame->quant < 4) ? ~XVID_MPEGQUANT : ~XVID_H263QUANT;                  frame->general &= (frame->quant < 4) ? ~XVID_MPEGQUANT : ~XVID_H263QUANT;
1489          }          }
1490  */  
1491          return ICERR_OK;          return ICERR_OK;
1492  }  }
1493    

Legend:
Removed from v.734  
changed lines
  Added in v.735

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