diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-11-03 21:26:40 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-11-17 19:11:07 +0100 |
commit | 8c00647982590115b9dedb9cc42bec70c0531782 (patch) | |
tree | 47e2db4c810f9adc7af9231e05af17e2dbc60393 /libavformat/utils.c | |
parent | e40d01f45dfd34e8294a39b16a5c4f5d73a81fb6 (diff) | |
download | ffmpeg-8c00647982590115b9dedb9cc42bec70c0531782.tar.gz |
avformat/utils: never decrease has_b_frames in compute_pkt_fields()
The intent of the original check was to increase has_b_frames when
it was incorrectly set to 0. Later codecs allowed larger values
Found-by: divVerent
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 8b73a3f6f6598cb9249034fa020ddead3c943e2f)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/utils.c')
-rw-r--r-- | libavformat/utils.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c index 265813693a..04984a1187 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1039,7 +1039,8 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st, if((s->flags & AVFMT_FLAG_IGNDTS) && pkt->pts != AV_NOPTS_VALUE) pkt->dts= AV_NOPTS_VALUE; - if (st->codec->codec_id != AV_CODEC_ID_H264 && pc && pc->pict_type == AV_PICTURE_TYPE_B) + if (pc && pc->pict_type == AV_PICTURE_TYPE_B + && !st->codec->has_b_frames) //FIXME Set low_delay = 0 when has_b_frames = 1 st->codec->has_b_frames = 1; |