bug dvb subtitle

Message ID 50377C63.6050807@free.fr
State New
Headers

Commit Message

zaverel Aug. 24, 2012, 1:06 p.m. UTC
  Hello,

I recently change vdr-1.7.23 to vdr-1.7.29

Now, dvb subtitle are badly display

Jerky, faster speeds, and the display remains on the last sentence until 
a new dialogue happens.
(clearly visible in a scene change)

It's available for dvb-t and dvb-s (almost TV5 Monde Europe on astra)

It's seem that is "improving handling subtitles of BBC channels" from 
vdr-1.7.24
that make the bug with the delete of "page->regions.Clear(); in 
dvbsubtitle.c||

with this patch that work fine again

|diff -ur vdr-1.7.29--clean/dvbsubtitle.c vdr-1.7.29/dvbsubtitle.c
page->Timeout(), page->State());
              while (!bs.IsEOF()) {|



see you
  

Comments

Klaus Schmidinger Aug. 25, 2012, 9:28 a.m. UTC | #1
On 24.08.2012 15:06, zaverel wrote:
> Hello,
>
> I recently change vdr-1.7.23 to vdr-1.7.29
>
> Now, dvb subtitle are badly display
>
> Jerky, faster speeds, and the display remains on the last sentence until a new dialogue happens.
> (clearly visible in a scene change)
>
> It's available for dvb-t and dvb-s (almost TV5 Monde Europe on astra)
>
> It's seem that is "improving handling subtitles of BBC channels" from vdr-1.7.24
> that make the bug with the delete of "page->regions.Clear(); in dvbsubtitle.c||
>
> with this patch that work fine again
>
> |diff -ur vdr-1.7.29--clean/dvbsubtitle.c vdr-1.7.29/dvbsubtitle.c
> --- vdr-1.7.29--clean/dvbsubtitle.c   2012-05-08 10:17:17.000000000 +0200
> +++ vdr-1.7.29/dvbsubtitle.c   2012-08-10 15:30:55.797708056 +0200
> @@ -1043,6 +1043,7 @@
>               page->SetVersion(pageVersion);
>               page->SetTimeout(pageTimeout);
>               page->SetState(bs.GetBits(2));
> +       page->regions.Clear();
>               bs.SkipBits(2); // reserved
>               dbgpages("Update page id %d version %d pts %"PRId64" timeout %d state %d\n", pageId, page->Version(), page->Pts(), page->Timeout(), page->State());
>               while (!bs.IsEOF()) {|

And what about the BBC subtitles?
If the TV5 subtitles need this, and the BBC subtitles don't work with it,
we need some information that indicates dynamically whether or not to
call Clear() here.

Klaus
  

Patch

--- vdr-1.7.29--clean/dvbsubtitle.c   2012-05-08 10:17:17.000000000 +0200
+++ vdr-1.7.29/dvbsubtitle.c   2012-08-10 15:30:55.797708056 +0200
@@ -1043,6 +1043,7 @@ 
              page->SetVersion(pageVersion);
              page->SetTimeout(pageTimeout);
              page->SetState(bs.GetBits(2));
+       page->regions.Clear();
              bs.SkipBits(2); // reserved
              dbgpages("Update page id %d version %d pts %"PRId64" 
timeout %d state %d\n", pageId, page->Version(), page->Pts(),