183 |
/* 1 keyframe each 10 seconds */ |
/* 1 keyframe each 10 seconds */ |
184 |
|
|
185 |
if (pParam->max_key_interval <= 0) |
if (pParam->max_key_interval <= 0) |
186 |
pParam->max_key_interval = 10 * pParam->fincr / pParam->fbase; |
pParam->max_key_interval = 10 * pParam->fbase / pParam->fincr; |
187 |
|
|
188 |
pEnc = (Encoder *) xvid_malloc(sizeof(Encoder), CACHE_LINE); |
pEnc = (Encoder *) xvid_malloc(sizeof(Encoder), CACHE_LINE); |
189 |
if (pEnc == NULL) |
if (pEnc == NULL) |
1016 |
mode = MEanalysis(&pEnc->reference->image, pEnc->current, |
mode = MEanalysis(&pEnc->reference->image, pEnc->current, |
1017 |
&pEnc->mbParam, pEnc->mbParam.iMaxKeyInterval, |
&pEnc->mbParam, pEnc->mbParam.iMaxKeyInterval, |
1018 |
(/*mode < 0*/1/*hack*/) ? pEnc->iFrameNum : 0, |
(/*mode < 0*/1/*hack*/) ? pEnc->iFrameNum : 0, |
1019 |
bframes_count++, 0 /*pFrame->bframe_threshold*/); |
bframes_count++, pFrame->bframe_threshold); |
1020 |
} |
} |
1021 |
|
|
1022 |
if (mode == I_VOP) { |
if (mode == I_VOP) { |
1638 |
|
|
1639 |
set_timecodes(pEnc->current,pEnc->reference,pEnc->mbParam.fbase); |
set_timecodes(pEnc->current,pEnc->reference,pEnc->mbParam.fbase); |
1640 |
|
|
1641 |
BitstreamPadAlways(bs); |
BitstreamPad(bs); |
1642 |
BitstreamWriteVopHeader(bs, &pEnc->mbParam, pEnc->current, 1); |
BitstreamWriteVopHeader(bs, &pEnc->mbParam, pEnc->current, 1); |
1643 |
|
|
1644 |
*pBits = BitstreamPos(bs); |
*pBits = BitstreamPos(bs); |
1785 |
set_timecodes(pEnc->current,pEnc->reference,pEnc->mbParam.fbase); |
set_timecodes(pEnc->current,pEnc->reference,pEnc->mbParam.fbase); |
1786 |
if (vol_header) |
if (vol_header) |
1787 |
{ BitstreamWriteVolHeader(bs, &pEnc->mbParam, pEnc->current); |
{ BitstreamWriteVolHeader(bs, &pEnc->mbParam, pEnc->current); |
1788 |
BitstreamPadAlways(bs); |
BitstreamPad(bs); |
1789 |
} |
} |
1790 |
|
|
1791 |
BitstreamWriteVopHeader(bs, &pEnc->mbParam, pEnc->current, 1); |
BitstreamWriteVopHeader(bs, &pEnc->mbParam, pEnc->current, 1); |