From 156b5bb9bf75777ee01b327ff3af01eeb4d7e3fd Mon Sep 17 00:00:00 2001 From: Stefano Sabatini Date: Tue, 19 Apr 2016 10:19:55 +0200 Subject: [PATCH] lavf/mpegtsenc: add special case for handling timed ID3 packets Set the stream_id to 0xbd (private_stream_id_1). Tools seem to assume that value, and this is consistent with MPEG TS specification (ITU-T H.222.0 section 2.12.3). --- libavformat/mpegtsenc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c index b45a283285..fd849e5b36 100644 --- a/libavformat/mpegtsenc.c +++ b/libavformat/mpegtsenc.c @@ -1238,6 +1238,9 @@ static void mpegts_write_pes(AVFormatContext *s, AVStream *st, st->codecpar->codec_id == AV_CODEC_ID_AC3 && ts->m2ts_mode) { *q++ = 0xfd; + } else if (st->codecpar->codec_type == AVMEDIA_TYPE_DATA && + st->codecpar->codec_id == AV_CODEC_ID_TIMED_ID3) { + *q++ = 0xbd; } else if (st->codecpar->codec_type == AVMEDIA_TYPE_DATA) { *q++ = stream_id != -1 ? stream_id : 0xfc;