mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-24 12:09:55 +00:00
avformat/utils: fix dts from pts code in compute_pkt_fields() during ascending delay
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
51bcc0bf38
commit
de1de49324
@ -1200,12 +1200,13 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st,
|
||||
}
|
||||
}
|
||||
|
||||
if (pkt->pts != AV_NOPTS_VALUE && delay <= MAX_REORDER_DELAY && has_decode_delay_been_guessed(st)) {
|
||||
if (pkt->pts != AV_NOPTS_VALUE && delay <= MAX_REORDER_DELAY) {
|
||||
st->pts_buffer[0] = pkt->pts;
|
||||
for (i = 0; i<delay && st->pts_buffer[i] > st->pts_buffer[i + 1]; i++)
|
||||
FFSWAP(int64_t, st->pts_buffer[i], st->pts_buffer[i + 1]);
|
||||
|
||||
pkt->dts = select_from_pts_buffer(st, st->pts_buffer, pkt->dts);
|
||||
if(has_decode_delay_been_guessed(st))
|
||||
pkt->dts = select_from_pts_buffer(st, st->pts_buffer, pkt->dts);
|
||||
}
|
||||
// We skipped it above so we try here.
|
||||
if (!onein_oneout)
|
||||
|
@ -25,9 +25,9 @@
|
||||
1, 264, 264, 21, 609, 0xc0dc255c
|
||||
1, 285, 285, 21, 619, 0x9ac52dd1
|
||||
0, 292, 292, 41, 16751, 0xf293ab46, F=0x0
|
||||
0, 292, 417, 41, 22029, 0x3696462b, F=0x0
|
||||
1, 306, 306, 21, 574, 0xf6410d4d
|
||||
1, 327, 327, 22, 565, 0xfd561191
|
||||
0, 334, 417, 41, 22029, 0x3696462b, F=0x0
|
||||
1, 350, 350, 21, 713, 0x48425147
|
||||
1, 371, 371, 21, 537, 0x09bbf515
|
||||
0, 375, 375, 41, 5044, 0xa0344ae6, F=0x0
|
||||
|
Loading…
Reference in New Issue
Block a user