?? colorspace.h
字號:
/***************************************************************************** * * XVID MPEG4 Codec * - Colorspace functions - header files * * This file is part of XviD, a free MPEG-4 video encoder/decoder * * XviD 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. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * Under section 8 of the GNU General Public License, the copyright * holders of XVID explicitly forbid distribution in the following * countries: * * - Japan * - United States of America * * Linking XviD statically or dynamically with other modules is making a * combined work based on XviD. Thus, the terms and conditions of the * GNU General Public License cover the whole combination. * * As a special exception, the copyright holders of XviD give you * permission to link XviD with independent modules that communicate with * XviD solely through the VFW1.1 and DShow interfaces, regardless of the * license terms of these independent modules, and to copy and distribute * the resulting combined work under terms of your choice, provided that * every copy of the combined work is accompanied by a complete copy of * the source code of XviD (the version of XviD used to produce the * combined work), being distributed under the terms of the GNU General * Public License plus this exception. An independent module is a module * which is not derived from or based on XviD. * * Note that people who make modified versions of XviD are not obligated * their choice whether to do so. The GNU General Public License gives * permission to release a modified version without this exception; this * exception also makes it possible to release a modified version which * carries forward this exception. * * $Id: colorspace.h,v 1.1.1.1 2005/09/15 06:18:09 ivan Exp $ * ****************************************************************************/#ifndef _COLORSPACE_H#define _COLORSPACE_H#include "../portab.h"#include "../divx4.h"/* initialize tables */void colorspace_init(void);/* input color conversion functions (encoder) */typedef void (color_inputFunc) (uint8_t * y_out, uint8_t * u_out, uint8_t * v_out, uint8_t * src, int width, int height, int stride);typedef color_inputFunc *color_inputFuncPtr;extern color_inputFuncPtr rgb555_to_yv12;extern color_inputFuncPtr rgb565_to_yv12;extern color_inputFuncPtr rgb24_to_yv12;extern color_inputFuncPtr rgb32_to_yv12;extern color_inputFuncPtr yuv_to_yv12;extern color_inputFuncPtr yuyv_to_yv12;extern color_inputFuncPtr uyvy_to_yv12;/* plain c */color_inputFunc rgb555_to_yv12_c;color_inputFunc rgb565_to_yv12_c;color_inputFunc rgb24_to_yv12_c;color_inputFunc rgb32_to_yv12_c;color_inputFunc yuv_to_yv12_c;color_inputFunc yuyv_to_yv12_c;color_inputFunc uyvy_to_yv12_c;/* mmx */color_inputFunc rgb24_to_yv12_mmx;color_inputFunc rgb32_to_yv12_mmx;color_inputFunc yuv_to_yv12_mmx;color_inputFunc yuyv_to_yv12_mmx;color_inputFunc uyvy_to_yv12_mmx;/* xmm */color_inputFunc yuv_to_yv12_xmm;/* output color conversion functions (decoder) */typedef void (color_outputFunc) (uint8_t * dst, int dst_stride, uint8_t * y_src, uint8_t * v_src, uint8_t * u_src, int y_stride, int uv_stride, int width, int height);typedef color_outputFunc *color_outputFuncPtr;extern color_outputFuncPtr yv12_to_rgb555;extern color_outputFuncPtr yv12_to_rgb565;extern color_outputFuncPtr yv12_to_rgb24;extern color_outputFuncPtr yv12_to_rgb32;extern color_outputFuncPtr yv12_to_yuv;extern color_outputFuncPtr yv12_to_yuyv;extern color_outputFuncPtr yv12_to_uyvy;/* plain c */void init_yuv_to_rgb(void);color_outputFunc yv12_to_rgb555_c;color_outputFunc yv12_to_rgb565_c;color_outputFunc yv12_to_rgb24_c;color_outputFunc yv12_to_rgb32_c;color_outputFunc yv12_to_yuv_c;color_outputFunc yv12_to_yuyv_c;color_outputFunc yv12_to_uyvy_c;/* mmx */color_outputFunc yv12_to_rgb24_mmx;color_outputFunc yv12_to_rgb32_mmx;color_outputFunc yv12_to_yuyv_mmx;color_outputFunc yv12_to_uyvy_mmx;void user_to_yuv_c(uint8_t * y_out, uint8_t * u_out, uint8_t * v_out, int stride, DEC_PICTURE * picture, int width, int height);#endif /* _COLORSPACE_H_ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -