[Mplayer-cvslog] CVS: main/libvo vo_fbdev.c,1.80,1.81

Arpi arpi at thot.banki.hu
Tue Aug 12 09:13:58 CEST 2003


Hi,

> Added DR support

hmm

    if (
        !IMGFMT_IS_BGR(mpi->imgfmt) ||
        (IMGFMT_BGR_DEPTH(mpi->imgfmt) != fb_bpp) ||
        ((mpi->type != MP_IMGTYPE_STATIC) && (mpi->type != MP_IMGTYPE_TEMP)) ||
        (mpi->flags & MP_IMGFLAG_PLANAR) ||
        (mpi->flags & MP_IMGFLAG_YUV) ||
        (mpi->width != in_width) ||
        (mpi->height != in_height)
       )

it's a bit buggy (ok, i know i'm the only one who actually understands how
this dr hack in g1 works...)

since there is !IMGFMT_IS_BGR(mpi->imgfmt), the second check for (mpi->flags
& MP_IMGFLAG_YUV) is redundant.

you overlimit dr here:  (mpi->width != in_width)
instead the stride support should be checked, ie one of these should matched:
  ACCEPT_STRIDE
  ACCEPT_WIDTH && (fb_line_len*8 % mpi->bpp == 0)
  mpi->width==in_width  (or better: mpi->width==fb_line_len*8/mpi->bpp)

and if DR is avail, then set mpi->width too, not only planes/stride


A'rpi / Astral & ESP-team

--
Developer of MPlayer G2, the Movie Framework for all - http://www.MPlayerHQ.hu



More information about the MPlayer-cvslog mailing list