colorspaceconvert.h

来自「一个优化的H.263解码器,性能达到商用级」· C头文件 代码 · 共 52 行

H
52
字号
// ColorSpaceConvert.h: interface for the CColorSpaceConvert class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_COLORSPACECONVERT_H__3C790C2C_DDA8_4EE6_A7FA_64D8DBCBCED2__INCLUDED_)
#define AFX_COLORSPACECONVERT_H__3C790C2C_DDA8_4EE6_A7FA_64D8DBCBCED2__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define  R_U -1049//-10    //-0.001
#define  R_V 1470103//14020  //1.402

#define  G_U -360815//-3441  //-0.3441
#define  G_V -748788//-7141  //-0.7141

#define  B_U 1858077//17720  //1.772
#define  B_V 1049//10     //0.001

class CColorSpaceConvert  
{
public:
    int iYUV_RGB_data[522];
    unsigned int m_y2rgb[256];
    unsigned int m_u2rgb[256];
    unsigned int m_v2rgb[256];
    unsigned char m_limit_rgb[1024];
public:
	CColorSpaceConvert();
	virtual ~CColorSpaceConvert();

	//Mode 1,RGB,RGB,RGB......
/*****************************************************/
/*    Cb = Cb - 128;   Cr = Cr - 128;
/*    R = Y - 0.001  * Cb + 1.402  * Cr
/*    G = Y - 0.3441 * Cb - 0.7141 * Cr
/*    B = Y + 1.772  * Cb + 0.001  * Cr 
/*****************************************************/
void ConvertYUVtoRGB (const unsigned char *src0, 
						 const unsigned char *src1, 
						 const unsigned char *src2, 
						 unsigned char *rgb_bits, 
						 int width,
						 int height
						 );


};

#endif // !defined(AFX_COLORSPACECONVERT_H__3C790C2C_DDA8_4EE6_A7FA_64D8DBCBCED2__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?