From 2d03f14ca12ee50e2dac8b97b1a54e681dc86cef Mon Sep 17 00:00:00 2001 From: ghost Date: Fri, 12 Jun 2009 00:18:44 +0200 Subject: [PATCH 1/1] lib/service/servicedvb.cpp: immediate show ttx subtitles instead of skip them when pts difference is to big also immediate show ttx subtitles without pts in pes packet --- lib/service/servicedvb.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index a57a813b..c97980fd 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -2825,6 +2825,11 @@ void eDVBServicePlay::checkSubtitleTiming() eDebug("%lld %lld", pos, show_time); int diff = show_time - pos; + if (type == TELETEXT && !page.m_have_pts) + { + eDebug("ttx subtitle page without pts... immediate show"); + diff = 0; + } if (diff < 0) { eDebug("[late (%d ms)]", -diff / 90); @@ -2832,14 +2837,9 @@ void eDVBServicePlay::checkSubtitleTiming() } if (abs(diff) > 1800000) { - eDebug("skip [invalid]"); - if (type == TELETEXT) - m_subtitle_pages.pop_front(); - else - m_dvb_subtitle_pages.pop_front(); - continue; + eDebug("[invalid]... immediate show!"); + diff = 0; } - if ((diff/90)<20) { if (type == TELETEXT) -- 2.30.2