diff options
Diffstat (limited to 'mpeglib/lib/util/render/dither2YUV/rgb2yuv16.h')
-rw-r--r-- | mpeglib/lib/util/render/dither2YUV/rgb2yuv16.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/mpeglib/lib/util/render/dither2YUV/rgb2yuv16.h b/mpeglib/lib/util/render/dither2YUV/rgb2yuv16.h new file mode 100644 index 00000000..7e4d6508 --- /dev/null +++ b/mpeglib/lib/util/render/dither2YUV/rgb2yuv16.h @@ -0,0 +1,74 @@ +/*************************************************************************** + rgb2yuv16.h - description + ------------------- + begin : Tue Nov 2 2000 + copyright : (C) 2000 by Christian Gerlach + email : cgerlach@rhrk.uni-kl.de + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#ifndef __RGB2YUV16_H +#define __RGB2YUV16_H + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "../yuvPicture.h" +#include "rgb2yuvdefs.h" + +// slow C implementation +void rgb2yuv16bit(unsigned char* rgbSource, + unsigned char* destLum, + unsigned char* destCr, + unsigned char* destCb,int height, int width); + + + +// +// We compile with MMX if we are on INTEL arch +// (this does not mean that we really support MMX, +// this is a seperate/runtime check) +// + +#ifdef INTEL + +void rgb2yuv16bit_mmx(unsigned char* rgbSource, + unsigned char* lum, + unsigned char* cr, + unsigned char* cb,int height, int width); + +void rgb2yuv16bit_mmx_fast(unsigned char* rgbSource, + unsigned char* lum, + unsigned char* cr, + unsigned char* cb,int height, int width); + +void rgb2yuv16bit_mmx422_row(unsigned char* rgb, + unsigned char* lum, unsigned char* cr, + unsigned char* cb, int pixel); + +void rgb2y16bit_mmx_row(unsigned char* rgbSource, + unsigned char* lum, int pixel); + +void rgb2yuv16bit_mmx422_row_fast(unsigned char* rgb, + unsigned char* lum, unsigned char* cr, + unsigned char* cb, int pixel); + +void rgb2y16bit_mmx_row_fast(unsigned char* rgb, + unsigned char* lum, int pixel); + + +#endif +// INTEL + + + +#endif |