16 pixmap[i]=((p[0]&0xF8)<<8) | ((p[1]&0xFC)<<3) | ((p[2]&0xF8)>>3);
30 pixmap[i]=(((
unsigned int)p[0])<<16) |
31 (((
unsigned int)p[1])<<8) |
32 (((
unsigned int)p[2]));
41#define INTERP_NORM_BITS 16
42#define INTERP_NORM (1 << INTERP_NORM_BITS)
44static inline int interpolate(
int v00,
int v01,
int v10,
int xf,
int yf)
55 unsigned char *src,
int xsize_src,
int ysize_src)
57 unsigned char *pix,*pix_src;
58 float x1,y1,x1inc,y1inc;
59 int xi,yi,j,xf,yf,x,y;
64 x1inc=(float) (xsize_src - 1) / (float) (xsize_dest - 1);
65 y1inc=(float) (ysize_src - 1) / (float) (ysize_dest - 1);
68 for(y=0;y<ysize_dest;y++) {
70 for(x=0;x<xsize_dest;x++) {
78 pix[j]=interpolate(pix_src[(yi*xsize_src+xi)*3+j],
79 pix_src[(yi*xsize_src+xi+1)*3+j],
80 pix_src[((yi+1)*xsize_src+xi)*3+j],
87 pix[j]=interpolate(pix_src[((yi+1)*xsize_src+xi+1)*3+j],
88 pix_src[((yi+1)*xsize_src+xi)*3+j],
89 pix_src[(yi*xsize_src+xi+1)*3+j],
106 unsigned char *src,
int xsize_src,
int ysize_src)
108 unsigned char *pix,*pix_src,*pix1;
109 int x1,y1,x1inc,y1inc;
115 x1inc=(int)((
float) ((xsize_src)<<
FRAC_BITS) / (float) (xsize_dest));
116 y1inc=(int)((
float) ((ysize_src)<<
FRAC_BITS) / (float) (ysize_dest));
119 for(y=0;y<ysize_dest;y++) {
121 for(x=0;x<xsize_dest;x++) {
124 pix1=pix_src+(yi*xsize_src+xi)*3;
void gl_convertRGB_to_8A8R8G8B(unsigned int *pixmap, unsigned char *rgb, int xsize, int ysize)
void gl_resizeImage(unsigned char *dest, int xsize_dest, int ysize_dest, unsigned char *src, int xsize_src, int ysize_src)
void gl_convertRGB_to_5R6G5B(unsigned short *pixmap, unsigned char *rgb, int xsize, int ysize)
void gl_resizeImageNoInterpolate(unsigned char *dest, int xsize_dest, int ysize_dest, unsigned char *src, int xsize_src, int ysize_src)