comparison mpeg12.c @ 1725:4bc18915485a libavcodec

frame rate emulation "fix" by (Mean <fixounet at free dot fr>)
author michael
date Sun, 04 Jan 2004 17:43:28 +0000
parents 8158e66f1f75
children 1ed3664b3523
comparison
equal deleted inserted replaced
1724:ea5200a9f730 1725:4bc18915485a
307 put_bits(&s->pb, 6, (uint32_t)((time_code % fps) / MPEG1_FRAME_RATE_BASE)); 307 put_bits(&s->pb, 6, (uint32_t)((time_code % fps) / MPEG1_FRAME_RATE_BASE));
308 put_bits(&s->pb, 1, 0); /* closed gop */ 308 put_bits(&s->pb, 1, 0); /* closed gop */
309 put_bits(&s->pb, 1, 0); /* broken link */ 309 put_bits(&s->pb, 1, 0); /* broken link */
310 } 310 }
311 311
312 if (s->avctx->frame_rate < (24 * s->avctx->frame_rate_base) && s->picture_number > 0) { 312 if (s->avctx->frame_rate < (23 * s->avctx->frame_rate_base) && s->picture_number > 0) {
313 /* insert empty P pictures to slow down to the desired 313 /* insert empty P pictures to slow down to the desired
314 frame rate. Each fake pictures takes about 20 bytes */ 314 frame rate. Each fake pictures takes about 20 bytes */
315 fps = frame_rate_tab[s->frame_rate_index]; 315 fps = frame_rate_tab[s->frame_rate_index];
316 n = av_rescale((int64_t)s->picture_number * s->avctx->frame_rate_base, fps, s->avctx->frame_rate) / MPEG1_FRAME_RATE_BASE - 1; 316 n = av_rescale((int64_t)s->picture_number * s->avctx->frame_rate_base, fps, s->avctx->frame_rate) / MPEG1_FRAME_RATE_BASE - 1;
317 while (s->fake_picture_number < n) { 317 while (s->fake_picture_number < n) {