读取视频帧出来的是32位bmp,由于要用到24位,所以要有个转换,方法很简单,就是去掉32位里的每个像素alpha值,
BYTE *pTemp; //已知 32位 数据
BYTE *pData24;
DWORD dwSize32; //已知,32位大小
DWORD dwSize24;
dwSize24 = (dwSize32*3)/4;
pData24 = new BYTE[dwSize24];
for(int index=0;index<dwSize32/4;index++) //像素总个数
{
unsigned char r = *(pTemp++);
unsigned char g = *(pTemp++);
unsigned char b= *(pTemp++);
(pTemp++); //去掉alpha
*(pData24++) = r;
*(pData24++) = g;
*(pData24++) = b;
}