Mailing List archive

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

[vdr] Re: cOsd tArea explanation



Hi,

Maynard Cedric wrote:

Well, I'm fighting with those tArea and trying to understand why :

tArea Area = { 228, 50, 623, 99,2};
osd->SetAreas(&Area,1);

just work fine and why

tArea Area = { 228, 50, 623, 99,1};
osd->SetAreas(&Area,1);
Won't..
>
> After looking more, I find out that the returned error is:
> "ERROR: cOsd::SetAreas returned 5"
> 5 -> oeWrongAlignment

Have a look into dvbosd.c, method cDvbOsd::CanHandleAreas():

if ((Areas[i].Width() & (8 / Areas[i].bpp - 1)) != 0)
return oeWrongAlignment;

The width of your area is not a multiple of 8 for the case where bpp is 1, but it is a multiple of 4 for the case where bpp is 2.

Bye.
--
Dipl.-Inform. (FH) Reinhard Nissl
mailto:rnissl@gmx.de





Home | Main Index | Thread Index