[Mplayer-cvslog] CVS: main/libmpcodecs vd_ffmpeg.c,1.32,1.33

Arpi arpi at thot.banki.hu
Tue Jul 16 14:30:59 CEST 2002


Hi,

> dr2 support (disabled as mplayer doesnt like slices with width!=picture
> width sometimes)

hmm. yes, as no one used width/x parameters of draw_slice(), many of the
converters/vo drivers supporting draw_slices just ignore them :(

anyway, using draw_slice() to blit the macroblocks is imho a big overhead,
and probably means more slowdown than speedup.

imho, you should add skip-table support to the csp converters, or at least a
special version of agpmemcpy, doing linear copy with skips.

so, when doung the copy, check for skip flag, and if it's skipped, do not
write it to agp, just continue with next 8/16/32 pixels.

something like this:

char* src=srcbuff
char* dst=dstbuff
for(my=0;my<mb_h;my++)
  for(y=0;y<16;y++){
    for(mx=0;mx<mb_w;mx++)
      if(skiptable[my][mx]==0) memcpy(dst+mx*16,src+mx*16,16);
    src+=srcstride; dst+=dststride;    
  }

(of course that memcpy() should be copy using mmx/sse register)


A'rpi / Astral & ESP-team

--
Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu



More information about the MPlayer-cvslog mailing list