91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 427KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-29
  • 語言: 其他
  • 標(biāo)簽: rgba8888??yuvsp420??

資源簡介

RGBA8888轉(zhuǎn)換為YUV NV21格式的幾種算法

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
#include?
#include?

#include?“rgb2yuv420sp.h“


static?void?rgb2yuv420p_float(char*?pYUV?char*?pRGB?int?w?int?h)
{
????????int?frameSize?=?w?*?h;

????????int?yIndex?=?0;
????????int?uvIndex?=?frameSize;

????????int??R?G?B?Y?U?V;
????????int?index?=?0;

????????int?ij;
????????struct?RGBQUAD*?rbgBuf?=?(struct?RGBQUAD*)pRGB;

????????for?(j?=?0;?j?????????????for?(i?=?0;?i?????????????????//alpha?is?not?used
????????????????R?=?rbgBuf[index].rgbRed;
????????????????G?=?rbgBuf[index].rgbGreen;???
????????????????B?=?rbgBuf[index].rgbBlue;

?????//?printf(“R:%d?G:%d?B:%d\n?“?RGB);

????????????????//?well?known?RGB?to?YUV?algorithm
????????????????Y?=??0.299?*?R?+?0.587?*?G?+?0.114?*?B;
????????????????U?=?-0.147?*?R?-?0.289?*?G?+?0.436?*?B;
????????????????V?=?0.615?*?R?-?0.515?*?G?-?0.100?*?B;


????????????????pYUV[yIndex++]?=?(char)?((Y??255)???255?:?Y));
????????????????if?(j?%?2?==?0?&&?index?%?2?==?0)?{
????????????????????pYUV[uvIndex++]?=?(char)((V<0)???0?:?((V?>?255)???255?:?V));
????????????????????pYUV[uvIndex++]?=?(char)((U<0)???0?:?((U?>?255)???255?:?U));
????????????????}

????????????????index?++;
????????????}
????????}
}


static?void?rgb2yuv420p_int(unsigned?char*?pYUV?char*?pRGB?int?w?int?h)
{
????????int?frameSize?=?w?*?h;

????????int?yIndex?=?0;
????????int?uvIndex?=?frameSize;

????????int??R?G?B?Y?U?V;
????????int?index?=?0;

????????int?ij;
????????struct?RGBQUAD*?rbgBuf?=?(struct?RGBQUAD*)pRGB;

????????for?(j?=?0;?j?????????????for?(i?=?0;?i?????????????????//alpha?is?not?used
????????????????R?=?rbgBuf[index].rgbRed;
????????????????G?=?rbgBuf[index].rgbGreen;
????????????????B?=?rbgBuf[index].rgbBlue;;
??????//printf(“R:%d?G:%d?B:%d\n?“?RGB);

????????????????Y?=??(1224?*?R?+?2404?*?G?+?467?*B)?>>?12;
????????????????U?=??(-602?*?R?-?1184?*?G?+?1786?*?B)?>>?12;
????????????????V?=??(2519?*?R?-?2109?*?G?-?410?*?B?)?>>?12;


????????????????pYUV[yIndex++]?=?(unsigned?char)?((Y??255)???255?:?Y));
????????????????if?(j?%?2?==?0?&&?index?%?2?==?0)?{
????????????????????pYUV[uvIndex++]?=?(unsigned?char)((V<0)???0?:?((V?>?255)???255?:?V));
????????????????????pYUV[uvIndex++]?=?(unsigned?char)((U<0)???0?:?((U?>?255)???255?:?U));
????????????????}

????????????????index?++;
????????????}
????????}
}

static?int?tlb_RY[256];
static?int?tlb_GY[256];
static?int?tlb_BY[256];

static?int?tlb_RU[256];
static?int?tlb_GU[256];
static?int?tlb_BU[256];

static?int?tlb_RV[256];
static?int?tlb_GV[256];
static?int?tlb_BV[256];

static?void?init_lookup_tables()
{
????????int?i;
for?(i?=?0;?i? tlb_RY[i]?=?(i?*?1224)?>>?12;
tlb_GY[i]?=?(i?*?2404)?>>?12;
tlb_BY[i]?=?(i?*?467)?>>?12;

tlb_RU[i]?=?(i?*?602)

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????290454??2013-10-22?15:41??32.bmp
?????文件??????108900??2013-10-22?15:56??32.yuv
?????文件????????2706??2013-10-22?19:00??rgb2yuv.zip
?????文件????????8126??2013-10-22?16:01??rgb2yuv420sp.c
?????文件????????1433??2013-10-22?15:30??rgb2yuv420sp.h
?????文件??????319488??2013-10-22?13:14??YUVViewer.exe

評論

共有 條評論

相關(guān)資源