aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRodger Combs <rodger.combs@gmail.com>2016-09-25 14:43:42 -0500
committerRodger Combs <rodger.combs@gmail.com>2016-10-04 01:20:20 -0500
commit14fe54bbfb988f4f5a6acb358282640a13162311 (patch)
tree28537ad32f7b8011f1b7476ed87ff2161bb00308
parent63fbeebf6ecb40b21db84d42f9f18867b3f89dca (diff)
downloadffmpeg-14fe54bbfb988f4f5a6acb358282640a13162311.tar.gz
lavf/mpegtsenc: fix autobsf when the first NAL is 0x1<XX> bytes
-rw-r--r--libavformat/mpegtsenc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index c10a3bfed2..3ad3de705c 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -1790,11 +1790,15 @@ static int mpegts_check_bitstream(struct AVFormatContext *s, const AVPacket *pkt
if (st->codecpar->codec_id == AV_CODEC_ID_H264) {
if (pkt->size >= 5 && AV_RB32(pkt->data) != 0x0000001 &&
- AV_RB24(pkt->data) != 0x000001)
+ (AV_RB24(pkt->data) != 0x000001 ||
+ (st->codecpar->extradata_size > 0 &&
+ st->codecpar->extradata[0] == 1)))
ret = ff_stream_add_bitstream_filter(st, "h264_mp4toannexb", NULL);
} else if (st->codecpar->codec_id == AV_CODEC_ID_HEVC) {
if (pkt->size >= 5 && AV_RB32(pkt->data) != 0x0000001 &&
- AV_RB24(pkt->data) != 0x000001)
+ (AV_RB24(pkt->data) != 0x000001 ||
+ (st->codecpar->extradata_size > 0 &&
+ st->codecpar->extradata[0] == 1)))
ret = ff_stream_add_bitstream_filter(st, "hevc_mp4toannexb", NULL);
}