From 9469ef0ddf5cbef24407384295c463a6fc9157f5 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Fri, 12 Dec 2014 16:25:15 +0100 Subject: [PATCH] dvbpsi: add hack for broken PMT tables --- src/input/mpegts/dvb_psi.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/input/mpegts/dvb_psi.c b/src/input/mpegts/dvb_psi.c index e6ff7e4d..251b855c 100644 --- a/src/input/mpegts/dvb_psi.c +++ b/src/input/mpegts/dvb_psi.c @@ -948,6 +948,14 @@ dvb_table_begin tvhtrace(mt->mt_name, " section %d last %d ver %d (ver %d st %d incomp %d comp %d)", *sect, *last, *ver, st->version, st->complete, mt->mt_incomplete, mt->mt_complete); + /* Ignore previous version */ + /* This check is for the broken PMT tables where: + * last 0 version 21 = PCR + Audio PID 0x0044 + * last 0 version 22 = Audio PID 0x0044, PCR + Video PID 0x0045 + */ + if (*last == 0 && st->version - 1 == *ver) + return -1; + /* New version */ if (st->version != *ver) { if (st->complete == 2)