You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
mpegvideo: Use the current_picture pts
The picture slot can be recycled by select_input_picture and only current_picture is populated with the valid pts. Unbreak timestamps when in cbr mode. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
committed by
Luca Barbato
parent
6f243b17c5
commit
1c7b71a5bd
@@ -1664,12 +1664,12 @@ vbv_retry:
|
|||||||
avctx->frame_bits = s->frame_bits;
|
avctx->frame_bits = s->frame_bits;
|
||||||
|
|
||||||
pkt->pts = s->current_picture.f->pts;
|
pkt->pts = s->current_picture.f->pts;
|
||||||
if (!s->low_delay) {
|
if (!s->low_delay && s->pict_type != AV_PICTURE_TYPE_B) {
|
||||||
if (!s->current_picture.f->coded_picture_number)
|
if (!s->current_picture.f->coded_picture_number)
|
||||||
pkt->dts = pkt->pts - s->dts_delta;
|
pkt->dts = pkt->pts - s->dts_delta;
|
||||||
else
|
else
|
||||||
pkt->dts = s->reordered_pts;
|
pkt->dts = s->reordered_pts;
|
||||||
s->reordered_pts = s->input_picture[0]->f->pts;
|
s->reordered_pts = pkt->pts;
|
||||||
} else
|
} else
|
||||||
pkt->dts = pkt->pts;
|
pkt->dts = pkt->pts;
|
||||||
if (s->current_picture.f->key_frame)
|
if (s->current_picture.f->key_frame)
|
||||||
|
Reference in New Issue
Block a user