Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: VDR crashed while playing DVD



Sergei Haller wrote:
> On Sun, 24 Mar 2002, valshare (v) wrote:
> 
> v>
> v> Hi,
> v> [... removed some =0D ;-) ...]
> v> i have the follow problem.
> v>
> v> If i want to want to play STAR WARS I - CD1 and the MENUE comes up. VDR
> v> crashed with the follow error:
> v>
> v> linux kernel: dvb0: ARM crashed!
> 
> the same here -
>   with vdr 0.99  + AIO (must have been nav6) + dvb-0.9.4-20020207
>   with 1.0.0pre4 + AIO 18.03 (dvd nav4) + dvb-0.9.4-20020326
>   with 1.0.0pre4 + AIO 26.03 (dvd nav5) + dvb-0.9.4-20020326
> 
> (all drivers with Klaus' still patch, although I don't think, that's the
> reason)
> 
> But I was able to watch StarWarsI before -
>   with vdr-0.99pre3 + AIO (also I think nav6) + dvb-0.9-20011117

i restarted the nav number when switching to 1.0.0preX, so this was really 
an  older verion of the DVD patch. The change that causes the trouble is 
the improved SPU/Menu handling. In the old version, only the highlighted 
section (the select menu item) was shown. Newer versions get it right by 
showing the full background and overlay the select item on this. That also 
means that it could overflow the OSD buffer if the combination of 
background image and selected menu item is too big. This is apparently what 
is happening here and causing the ARM crash.

> I checked this just now:
> doesn't work with 1.0.0pre4 + AIO 26.03 (dvd nav5) + dvb-0.9-20011117
> works        with 0.99pre3  + AIO   (I think nav6) + dvb-0.9.4-20020326
> 
> StarWarsI CD1 - there comes a "WARNING" chapter - and then bang! Arm
> crashed
> With FinalFantasy CD2 - nearly the same - mostly in menues.
> with this DVD I also get the following message in syslog:
> 
> vdr[2891]: ERROR: too many different colors used in palette
> 
> is this related to the ARM crash?

maybe, although this should not happen at all.

> further I noticed in the above 0.99 config that the "overlaying" grey
> parts over menues on FF CD2 were mostly positioned in the left top corner
> instead of where they belong. This is corrected now, but there are still
> some problems: the menu is considered to overlay all menu items with a
> grey bar - only the selected item is not greyed. sometimes it is
> displayed just other way 'round - the selected one is greyed and the other
> not, but this is mostly displayed correctly again, if I move the cursor
> down and up again.

This basicly confirms my idea about to big OSD's. The gray bars are the 
backgound and no grey bar is the selected which is the highlight, together 
they are just to big.

I guess the only way is to drop the background part of the menu, if it is 
to big. This will lead to some incorrect menus, but will also avoid the 
crashes.

As a workarround and to test it, you can remove lines 547 to 556 from spu.c:

   if (width > 0 && height > 0) {

      //open the background window
     int win_width = width;
     if (win_width & 0x03)
        win_width += 4 - (win_width & 0x03);
     osd->Create(spu->x_min+spu->x, spu->y_min+spu->y,
                 win_width, height, 2, false);
     osd->SetBitmap(spu->x_min+spu->x, spu->y_min+spu->y, *bitmap);
   }


Andreas




Home | Main Index | Thread Index