From 1728127e8c9407d688943c46f8a0524b8870a9b2 Mon Sep 17 00:00:00 2001 From: Alex Shumsky Date: Thu, 21 Oct 2021 17:58:02 +0300 Subject: avformat/mpegtsenc: do not include adaptation field in teletext TS packets From ETSI EN 300 472 V1.3.1 (2003-05) Specification for conveying ITU-R System B Teletext in DVB bitstreams: 4.1 Transport Stream (TS) packet format The standard TS packet syntax and semantics are followed, noting the following constraint: - adaptation_field_control only the values "01" and "10" are permitted. Some set top boxes (Motorola, Arris, Zyxel) refuse non-conforming packets. Signed-off-by: Alex Shumsky Signed-off-by: Marton Balint --- libavformat/mpegtsenc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libavformat/mpegtsenc.c') diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c index fe2e742c15..e3fba54939 100644 --- a/libavformat/mpegtsenc.c +++ b/libavformat/mpegtsenc.c @@ -1564,7 +1564,8 @@ static void mpegts_write_pes(AVFormatContext *s, AVStream *st, q = get_ts_payload_start(buf); ts_st->discontinuity = 0; } - if (key && is_start && pts != AV_NOPTS_VALUE) { + if (key && is_start && pts != AV_NOPTS_VALUE && + !is_dvb_teletext /* adaptation+payload forbidden for teletext (ETSI EN 300 472 V1.3.1 4.1) */) { // set Random Access for key frames if (ts_st->pcr_period) write_pcr = 1; -- cgit v1.2.3