亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unpalette.c

?? 網絡攝像頭的webserver
?? C
字號:
#include <stdio.h>#include <sys/types.h>#include <linux/videodev.h>#include "config.h"#include "unpalette.h"#include "image.h"static unsigned char citb(int);static unpalettizer unpalette_yuv420p;static unpalettizer unpalette_rgb24;static unpalettizer unpalette_bgr24;static unpalettizer unpalette_rgb32;static unpalettizer unpalette_bgr32;static unpalettizer unpalette_grey;static unpalettizer unpalette_yuyv;static unpalettizer unpalette_yuv420;static unpalettizer unpalette_rgb565;static unpalettizer unpalette_rgb555;struct palette palettes[] ={	{ VIDEO_PALETTE_RGB24,			unpalette_bgr24,		3,		24,	"bgr24"							},	{ VIDEO_PALETTE_RGB24 | 0x80,	unpalette_rgb24,		3,		24,	"rgb24"							},	{ VIDEO_PALETTE_RGB32,			unpalette_bgr32,		4,		32,	"bgr32"							},	{ VIDEO_PALETTE_RGB32 | 0x80,	unpalette_rgb32,		4,		32,	"rgb32"							},	{ VIDEO_PALETTE_YUYV,			unpalette_yuyv,		2,		24,	"yuyv (16 bpp)"				},	{ VIDEO_PALETTE_YUV422,			unpalette_yuyv,		2,		24,	"yuv422 (16 bpp)"				},	{ VIDEO_PALETTE_RGB565,			unpalette_rgb565,		2,		16,	"rgb565"							},	{ VIDEO_PALETTE_RGB555,			unpalette_rgb555,		2,		15,	"rgb555"							},	{ VIDEO_PALETTE_YUV420P,		unpalette_yuv420p,	1.5,	24,	"yuv420 planar (12 bpp)"	},	{ VIDEO_PALETTE_YUV420,			unpalette_yuv420,		1.5,	24,	"yuv420 (12 bpp)"				},	{ VIDEO_PALETTE_GREY,			unpalette_grey,		1,		8,		"grayscale (8 bpp)"			},	{ -1 }};staticunsigned charcitb(int i){	if (i >= 256)		return 255;	if (i < 0)		return 0;	return i;}staticvoidunpalette_yuv420p(struct image *dst, unsigned char *src){	const unsigned char *u, *v, *bu, *bv;	unsigned char *dstbuf;	unsigned int dx, dy, uvc, buvc;		u = src + dst->x * dst->y;	v = u + (dst->x / 2) * (dst->y / 2);	dstbuf = dst->buf;		buvc = 0;	for (dy = 0; dy < dst->y; dy++)	{		bu = u;		bv = v;		uvc = 0;				for (dx = 0; dx < dst->x; dx++)		{			*dstbuf++ = citb((int) *src + 1.140 * ((int) *v - 128));			*dstbuf++ = citb((int) *src - 0.396 * ((int) *u - 128) - 0.581 * ((int) *v - 128));			*dstbuf++ = citb((int) *src++ + 2.029 * ((int) *u - 128));						uvc++;			if (uvc >= 2)			{				uvc = 0;				u++;				v++;			}		}		buvc++;		if (buvc < 2)		{			u = bu;			v = bv;		}		else			buvc = 0;	}}staticvoidunpalette_rgb24(struct image *dst, unsigned char *src){	memcpy(dst->buf, src, dst->bufsize);}staticvoidunpalette_bgr24(struct image *dst, unsigned char *src){	unsigned char *dstbuf, *dstend;		dstbuf = dst->buf;	dstend = dstbuf + dst->bufsize; 	while (dstbuf < dstend)	{		dstbuf[0] = src[2];		dstbuf[1] = src[1];		dstbuf[2] = src[0];		dstbuf += 3;		src += 3;	}}staticvoidunpalette_rgb32(struct image *dst, unsigned char *src){	unsigned char *dstbuf, *dstend;		dstbuf = dst->buf;	dstend = dstbuf + dst->bufsize; 	while (dstbuf < dstend)	{		*dstbuf++ = *src++;		*dstbuf++ = *src++;		*dstbuf++ = *src++;		src++;	}}staticvoidunpalette_bgr32(struct image *dst, unsigned char *src){	unsigned char *dstbuf, *dstend;		dstbuf = dst->buf;	dstend = dstbuf + dst->bufsize; 	while (dstbuf < dstend)	{		dstbuf[0] = src[2];		dstbuf[1] = src[1];		dstbuf[2] = src[0];		dstbuf += 3;		src += 4;	}}staticvoidunpalette_grey(struct image *dst, unsigned char *src){	unsigned char *dstbuf, *dstend;		dstbuf = dst->buf;	dstend = dstbuf + dst->bufsize; 	while (dstbuf < dstend)	{		*dstbuf++ = *src;		*dstbuf++ = *src;		*dstbuf++ = *src++;	}}staticvoidunpalette_yuyv(struct image *dst, unsigned char *src){	unsigned char *dbuf, *dend;	unsigned char u, v;	int i;		dbuf = dst->buf;	dend = dbuf + dst->bufsize;		while (dbuf < dend)	{		u = src[1];		v = src[3];		for (i = 0; i < 2; i++)		{			*dbuf++ = citb((int) *src + 1.140 * ((int) v - 128));			*dbuf++ = citb((int) *src - 0.396 * ((int) u - 128) - 0.581 * ((int) v - 128));			*dbuf++ = citb((int) *src + 2.029 * ((int) u - 128));			src += 2;		}	}}staticvoidunpalette_yuv420(struct image *dst, unsigned char *src){	unsigned char *dbuf, *dend;	unsigned char *u, *v;	int ypl, bpl;	int i, j, k, l;	dbuf = dst->buf;	dend = dbuf + dst->bufsize;		u = src + 4;	bpl = dst->x * 1.5;	v = u + bpl;	ypl = dst->x / 4;		/* YYYY UU YYYY UU	 * YYYY VV YYYY VV */	while (dbuf < dend)	{		for (l = 0; l < 2; l++)		{			for (k = 0; k < ypl; k++)			{				for (j = 0; j < 2; j++)				{					for (i = 0; i < 2; i++)					{						*dbuf++ = citb((int) *src + 1.140 * ((int) *v - 128));						*dbuf++ = citb((int) *src - 0.396 * ((int) *u - 128) - 0.581 * ((int) *v - 128));						*dbuf++ = citb((int) *src + 2.029 * ((int) *u - 128));						src++;					}					u++;					v++;				}				src += 2;				u += 4;				v += 4;			}			u -= bpl;			v -= bpl;		}		u += bpl * 2;		v += bpl * 2;	}}staticvoidunpalette_rgb565(struct image *dst, unsigned char *src){	unsigned char *dbuf, *dend;	dbuf = dst->buf;	dend = dbuf + dst->bufsize;	while (dbuf < dend)	{		/* rrrrrggg gggbbbbb -> gggbbbbb rrrrrggg */		*dbuf++ = (src[1] & 0xf8) | ((src[1] >> 3) & 0x07);		*dbuf++ = (src[1] << 5) | ((src[0] >> 3) & 0x1c) | ((src[0] >> 5) & 0x03);		*dbuf++ = (src[0] << 3) | (src[0] & 0x07);		src += 2;	}}staticvoidunpalette_rgb555(struct image *dst, unsigned char *src){	unsigned char *dbuf, *dend;	dbuf = dst->buf;	dend = dbuf + dst->bufsize;	while (dbuf < dend)	{		/* 0rrrrrgg gggbbbbb -> gggbbbbb 0rrrrrgg */		*dbuf++ = ((src[1] << 1) & 0xf8) | ((src[1] >> 2) & 0x07);		*dbuf++ = (src[1] << 6) | ((src[0] >> 2) & 0x38) | ((src[0] >> 5) & 0x07);		*dbuf++ = (src[0] << 3) | (src[0] & 0x07);		src += 2;	}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲电影中文字幕在线观看| 亚洲欧美日韩中文字幕一区二区三区| 精品国内片67194| 777色狠狠一区二区三区| 久久精品水蜜桃av综合天堂| 亚洲欧洲制服丝袜| 成人性生交大片免费| 日韩欧美123| 无吗不卡中文字幕| 欧美亚一区二区| 成人欧美一区二区三区视频网页| 国产一区二区福利| 91麻豆精品国产91久久久久久| 亚洲色欲色欲www| 国产精品18久久久久久vr| 91精品国产黑色紧身裤美女| 亚洲国产日韩在线一区模特| 91麻豆精品秘密| 亚洲欧洲韩国日本视频| 粉嫩高潮美女一区二区三区| 久久久亚洲午夜电影| 久久99精品久久久久久久久久久久 | 成人精品电影在线观看| 91精品国产手机| 亚洲电影第三页| 欧美伊人精品成人久久综合97| 国产精品天美传媒| 成人91在线观看| 国产精品福利一区二区三区| 国产精品一级二级三级| 国产清纯美女被跳蛋高潮一区二区久久w | 中文字幕欧美日韩一区| 国产剧情一区二区三区| 国产亚洲精品中文字幕| 懂色av一区二区夜夜嗨| 国产精品传媒在线| jizzjizzjizz欧美| 777午夜精品视频在线播放| 国产精品资源在线| 中文字幕制服丝袜一区二区三区 | 91精品国产综合久久福利软件 | 日本不卡不码高清免费观看| 欧美一卡2卡三卡4卡5免费| 日韩成人伦理电影在线观看| 91麻豆精品国产91久久久久久| 日韩精品福利网| 久久综合一区二区| 国产suv精品一区二区三区 | 久久影院电视剧免费观看| 国产a级毛片一区| 最新中文字幕一区二区三区| 91小视频在线| 免费在线成人网| 精品一区二区在线视频| 欧美日韩久久不卡| 日本成人在线一区| 久久精品亚洲乱码伦伦中文| av激情综合网| 蜜臂av日日欢夜夜爽一区| 国产欧美一区二区三区沐欲| 一本大道久久a久久综合婷婷| 日日夜夜精品免费视频| 国产欧美日韩精品一区| 色婷婷狠狠综合| 精品一区二区三区日韩| 亚洲欧美日本韩国| 日韩欧美一级特黄在线播放| 99久久久久久99| 麻豆精品久久精品色综合| 国产欧美精品一区二区色综合 | 欧美日韩中文另类| 狠狠v欧美v日韩v亚洲ⅴ| 不卡视频免费播放| 国产亚洲综合在线| 欧美在线一二三| 国内国产精品久久| 一区二区三区四区不卡在线 | 一区二区三区波多野结衣在线观看| 欧美午夜一区二区三区免费大片| 美国av一区二区| 亚洲精品日日夜夜| 久久久久久久久久久久久久久99 | 成人午夜av电影| 免费看欧美女人艹b| 一区二区三区免费观看| 国产色产综合产在线视频| 欧美一区二区三区色| 一本一道综合狠狠老| 成人在线综合网| 久久成人羞羞网站| 欧美一区二区在线免费播放| 久久国产精品99久久久久久老狼| 亚洲欧美日韩人成在线播放| 精品国产青草久久久久福利| 欧美人体做爰大胆视频| 色呦呦国产精品| 91在线观看高清| 国产99精品视频| 高清不卡一区二区在线| 久久99精品国产| 精油按摩中文字幕久久| 男人的天堂亚洲一区| 亚洲国产欧美在线人成| 一区二区三区精品视频| 亚洲欧美日韩小说| 亚洲男人的天堂在线观看| 中文字幕中文在线不卡住| 中文字幕精品一区| 国产欧美精品区一区二区三区| 欧美成人国产一区二区| 欧美一级精品在线| 欧美一区二区在线视频| 666欧美在线视频| 欧美蜜桃一区二区三区| 欧美体内she精高潮| 欧美一区二区三区在线视频| 欧美性受xxxx| 色一区在线观看| 色婷婷狠狠综合| 日韩高清电影一区| 老司机精品视频在线| 国产一区二区三区免费看| 精品午夜久久福利影院| 国产电影一区在线| 国产成人免费av在线| eeuss鲁片一区二区三区| 不卡电影一区二区三区| 99re这里都是精品| 91丨九色丨国产丨porny| 成人av电影观看| 91在线视频官网| 99久久精品国产网站| 欧美色网一区二区| 精品视频1区2区3区| 日韩欧美综合在线| 欧美一二三四在线| 中文字幕乱码日本亚洲一区二区| 1区2区3区国产精品| 亚洲精品久久久蜜桃| 日本女人一区二区三区| 日韩电影一区二区三区| 精品久久久久一区二区国产| 久久蜜桃av一区精品变态类天堂| 欧美成人国产一区二区| 中文字幕一区免费在线观看| 亚洲精品国产一区二区精华液| 亚洲一区在线视频| 久久99精品国产麻豆婷婷洗澡| 国产一区在线不卡| 成人一区在线观看| 欧美亚州韩日在线看免费版国语版| 欧美一区二区视频在线观看2020 | 91影院在线观看| 日韩免费福利电影在线观看| 久久精品亚洲国产奇米99| 一区二区在线免费| 亚洲成a人v欧美综合天堂下载| 全部av―极品视觉盛宴亚洲| 成人午夜视频免费看| 欧美日韩另类国产亚洲欧美一级| 久久午夜羞羞影院免费观看| 亚洲已满18点击进入久久| 久久国产麻豆精品| 欧美系列在线观看| 成人小视频免费观看| 777a∨成人精品桃花网| 久久久精品国产99久久精品芒果 | 亚洲444eee在线观看| 丁香激情综合国产| 日韩一区二区三区av| 国产精品视频一二三区| 激情欧美一区二区三区在线观看| 色综合色综合色综合| 国产亚洲一二三区| 三级一区在线视频先锋 | 欧美激情艳妇裸体舞| 男女男精品视频网| 在线亚洲高清视频| ...xxx性欧美| 久久se精品一区二区| 欧洲av在线精品| 亚洲视频在线一区二区| 精品亚洲国产成人av制服丝袜| 91精品国产色综合久久不卡蜜臀| 亚洲欧洲另类国产综合| 成人av资源下载| 欧美日韩一区二区三区免费看| 日韩精彩视频在线观看| 99re这里只有精品视频首页| 日韩美女在线视频 | 欧美极品美女视频| 国产乱子伦一区二区三区国色天香| 欧美四级电影网| 午夜激情综合网| 777a∨成人精品桃花网| 一区二区三区免费看视频| 在线观看视频欧美| 亚洲天堂成人网| 91国产丝袜在线播放| 日韩美女视频19|