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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? predict.c

?? mp3解碼程序vc++環(huán)境下運(yùn)行
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
 */
static void pred_comp(src,dst,lx,w,h,x,y,dx,dy,addflag)unsigned char *src;unsigned char *dst;int lx;int w, h;int x, y;int dx, dy;int addflag;{	int xint, xh, yint, yh;	int i, j;	unsigned char *s, *d;

	/* half pel scaling */	xint = dx>>1; /* integer part */	xh = dx & 1;  /* half pel flag */	yint = dy>>1;	yh = dy & 1;	/* origins */	s = src + lx*(y+yint) + (x+xint); /* motion vector */	d = dst + lx*y + x;

	if (!xh && !yh)
	{		if (addflag)
		{
			if(cpu_MMX)
			{
				if(w == 8)
				{
					_asm
					{
						mov ecx, h					;// ecx = h
						mov edx, lx					;// edx = lx
						mov esi, s					;// esi = s
						mov edi, d					;// edi = d
pred_comp__l1:
						movd mm0, [esi]				;// lower 4 bytes into mm0 = esi[0..3]
						movd mm1, [edi]				;// lower 4 bytes into mm1 = edi[0..3]
						movd mm2, [esi+4]			;// lower 4 bytes into mm2 = esi[4..7]
						movd mm3, [edi+4]			;// lower 4 bytes into mm3 = edi[4..7]
						punpcklbw mm0, PACKED_0		;// unpack the lower 2 words into mm0
						punpcklbw mm1, PACKED_0		;// unpack the lower 2 words into mm1
						punpcklbw mm2, PACKED_0		;// unpack the lower 2 words into mm2
						punpcklbw mm3, PACKED_0		;// unpack the lower 2 words into mm3
						paddw mm0, mm1				;// mm0 += mm1
						paddw mm2, mm3				;// mm2 += mm3
						psrlw mm0, 1				;// mm0 >>= 1
						psrlw mm2, 1				;// mm2 >>= 1
						packuswb mm0, mm2			;// pack mm0 and mm2
						movq [edi], mm0				;// store mm0 into edi[0..7]

						add esi, edx				;// esi += edx
						add edi, edx				;// edi += edx
						dec ecx						;// decrement ecx
						jnz pred_comp__l1			;// loop while not zero
						emms						;// empty MMX state
					}
					return;
				}

				if(w == 16)
				{
					_asm
					{
						mov ecx, h					;// ecx = h
						mov edx, lx					;// edx = lx
						mov esi, s					;// esi = s
						mov edi, d					;// edi = d
pred_comp__l2:
						movd mm0, [esi]				;// lower 4 bytes into mm0 = esi[0..3]
						movd mm1, [edi]				;// lower 4 bytes into mm1 = edi[0..3]
						movd mm2, [esi+4]			;// lower 4 bytes into mm2 = esi[4..7]
						movd mm3, [edi+4]			;// lower 4 bytes into mm3 = edi[4..7]
						movd mm4, [esi+8]			;// lower 4 bytes into mm4 = esi[8..11]
						movd mm5, [edi+8]			;// lower 4 bytes into mm5 = edi[8..11]
						movd mm6, [esi+12]			;// lower 4 bytes into mm6 = esi[12..15]
						movd mm7, [edi+12]			;// lower 4 bytes into mm7 = edi[12..15]
						punpcklbw mm0, PACKED_0		;// unpack the lower 2 words into mm0
						punpcklbw mm1, PACKED_0		;// unpack the lower 2 words into mm1
						punpcklbw mm2, PACKED_0		;// unpack the lower 2 words into mm2
						punpcklbw mm3, PACKED_0		;// unpack the lower 2 words into mm3
						punpcklbw mm4, PACKED_0		;// unpack the lower 2 words into mm4
						punpcklbw mm5, PACKED_0		;// unpack the lower 2 words into mm5
						punpcklbw mm6, PACKED_0		;// unpack the lower 2 words into mm6
						punpcklbw mm7, PACKED_0		;// unpack the lower 2 words into mm7
						paddw mm0, mm1				;// mm0 += mm1
						paddw mm2, mm3				;// mm2 += mm3
						paddw mm4, mm5				;// mm4 += mm5
						paddw mm6, mm7				;// mm6 += mm7
						psrlw mm0, 1				;// mm0 >>= 1
						psrlw mm2, 1				;// mm2 >>= 1
						psrlw mm4, 1				;// mm4 >>= 1
						psrlw mm6, 1				;// mm6 >>= 1
						packuswb mm0, mm2			;// pack mm0 and mm2
						packuswb mm4, mm6			;// pack mm4 and mm6
						movq [edi], mm0				;// store mm0 into edi[0..7]
						movq [edi+8], mm4			;// store mm4 into edi[8..15]

						add esi, edx				;// esi += edx
						add edi, edx				;// edi += edx
						dec ecx						;// decrement ecx
						jnz pred_comp__l2			;// loop while not zero
						emms						;// empty MMX state
					}
					return;
				}
			}

			for (j=0; j<h; j++)
			{
				for (i=0; i<w; i++)
					d[i] = (unsigned int)(d[i]+s[i]+1)>>1;

				s+= lx;
				d+= lx;
			}
		}
		else
		{
			if(cpu_MMX)
			{
				if(w == 8)
				{
					_asm
					{
						mov esi, s			;// esi = s
						mov edi, d			;// edi = d
						mov ecx, h			;// ecx = h
						mov edx, lx			;// edx = lx
pred_comp__l3:
						movq mm0, [esi]
						movq [edi], mm0		;// simply move from esi[0..7] to edi[0..7]
						add esi, edx		;// esi += edx
						add edi, edx		;// esi += edx
						dec ecx				;// decrement ecx
						jnz pred_comp__l3	;// loop while not zero
						emms				;// empty MMX state
					}
					return;
				}
				
				if(w == 16)
				{
					_asm
					{
						mov esi, s			;// esi = s
						mov edi, d			;// edi = d
						mov ecx, h			;// ecx = h
						mov edx, lx			;// edx = lx
pred_comp__l4:
						movq mm0, [esi]
						movq mm1, [esi+8]
						movq [edi], mm0		;// simply move from esi[0..7] to edi[0..7]
						movq [edi+8], mm1	;// simply move from esi[8..15] to edi[8..15]
						add esi, edx		;// esi += edx
						add edi, edx		;// esi += edx
						dec ecx				;// decrement ecx
						jnz pred_comp__l4	;// loop while not zero
						emms				;// empty MMX state
					}
					return;
				}
			}

			for (j=0; j<h; j++)			{				for (i=0; i<w; i++)					d[i] = s[i];
				s+= lx;				d+= lx;			}
		}
	}	else if (!xh && yh)
	if (addflag)
	{
		if(cpu_MMX)
		{
			if(w == 8)
			{
				_asm
				{
					mov esi, s					;// esi = s
					mov edi, d					;// edi = d
					mov ecx, h					;// ecx = h
					mov edx, lx					;// edx = lx
pred_comp__l5:
					movd mm0, [esi]				;// lower 4 bytes into mm0 = esi[0..3]
					movd mm1, [esi+edx]			;// lower 4 bytes into mm1 = (esi + edx)[0..3]
					movd mm2, [esi+4]			;// lower 4 bytes into mm2 = esi[4..7]
					movd mm3, [esi+edx+4]		;// lower 4 bytes into mm3 = (esi + edx)[4..7]
					punpcklbw mm0, PACKED_0		;// unpack the lower 4 bytes into mm0
					punpcklbw mm1, PACKED_0		;// unpack the lower 4 bytes into mm1
					punpcklbw mm2, PACKED_0		;// unpack the lower 4 bytes into mm2
					punpcklbw mm3, PACKED_0		;// unpack the lower 4 bytes into mm3
					paddw mm0, mm1
					paddw mm2, mm3
					paddw mm0, PACKED_1			;// mm0 += mm1 + (1, 1, 1, 1)
					paddw mm2, PACKED_1			;// mm2 += mm3 + (1, 1, 1, 1)
					movd mm1, [edi]				;// lower 4 bytes into mm1 = edi[0..3]
					movd mm3, [edi+4]			;// lower 4 bytes into mm3 = edi[4..7]
					punpcklbw mm1, PACKED_0		;// unpack the lower 2 bytes into mm1
					punpcklbw mm3, PACKED_0		;// unpack the lower 2 bytes into mm3
					psrlw mm0, 1				;// mm0 >>= 1
					psrlw mm2, 1				;// mm2 >>= 1
					paddw mm0, mm1				;// mm0 += mm1
					paddw mm2, mm3				;// mm2 += mm3
					psrlw mm0, 1				;// mm0 >>= 1
					psrlw mm2, 1				;// mm2 >>= 1
					packuswb mm0, mm2			;// pack mm0 and mm2
					movq [edi], mm0				;// store mm0 into edi[0..7]

					add esi, edx				;// esi += edx
					add edi, edx				;// edi += edx
					dec ecx						;// decrement ecx
					jnz pred_comp__l5			;// loop while not zero
					emms						;// empty MMX state
				}
				return;
			}

			if(w == 16)
			{
				_asm
				{
					mov esi, s					;// esi = s
					mov edi, d					;// edi = d
					mov ecx, h					;// ecx = h
					mov edx, lx					;// edx = lx
pred_comp__l6:
					movd mm0, [esi]				;// lower 4 bytes into mm0 = esi[0..3]
					movd mm1, [esi+edx]			;// lower 4 bytes into mm1 = (esi + edx)[0..3]
					movd mm2, [esi+4]			;// lower 4 bytes into mm2 = esi[4..7]
					movd mm3, [esi+edx+4]		;// lower 4 bytes into mm3 = (esi + edx)[4..7]
					movd mm4, [esi+8]			;// lower 4 bytes into mm4 = esi[8..11]
					movd mm5, [esi+edx+8]		;// lower 4 bytes into mm5 = (esi + edx)[8..11]
					movd mm6, [esi+12]			;// lower 4 bytes into mm6 = esi[12..15]
					movd mm7, [esi+edx+12]		;// lower 4 bytes into mm7 = (esi + edx)[12..15]
					punpcklbw mm0, PACKED_0		;// unpack the lower 4 bytes into mm0
					punpcklbw mm1, PACKED_0		;// unpack the lower 4 bytes into mm1
					punpcklbw mm2, PACKED_0		;// unpack the lower 4 bytes into mm2
					punpcklbw mm3, PACKED_0		;// unpack the lower 4 bytes into mm3
					punpcklbw mm4, PACKED_0		;// unpack the lower 4 bytes into mm4
					punpcklbw mm5, PACKED_0		;// unpack the lower 4 bytes into mm5
					punpcklbw mm6, PACKED_0		;// unpack the lower 4 bytes into mm6
					punpcklbw mm7, PACKED_0		;// unpack the lower 4 bytes into mm7
					paddw mm0, mm1
					paddw mm2, mm3
					paddw mm4, mm5
					paddw mm6, mm7
					paddw mm0, PACKED_1			;// mm0 += mm1 + (1, 1, 1, 1)
					paddw mm2, PACKED_1			;// mm2 += mm3 + (1, 1, 1, 1)
					paddw mm4, PACKED_1			;// mm4 += mm5 + (1, 1, 1, 1)
					paddw mm6, PACKED_1			;// mm6 += mm7 + (1, 1, 1, 1)
					movd mm1, [edi]				;// lower 4 bytes into mm1 = edi[0..3]
					movd mm3, [edi+4]			;// lower 4 bytes into mm3 = edi[4..7]
					movd mm5, [edi+8]			;// lower 4 bytes into mm5 = edi[8..11]
					movd mm7, [edi+12]			;// lower 4 bytes into mm7 = edi[12..15]
					punpcklbw mm1, PACKED_0		;// unpack the lower 2 bytes into mm1
					punpcklbw mm3, PACKED_0		;// unpack the lower 2 bytes into mm3
					punpcklbw mm5, PACKED_0		;// unpack the lower 2 bytes into mm5
					punpcklbw mm7, PACKED_0		;// unpack the lower 2 bytes into mm7
					psrlw mm0, 1				;// mm0 >>= 1
					psrlw mm2, 1				;// mm2 >>= 1
					psrlw mm4, 1				;// mm4 >>= 1
					psrlw mm6, 1				;// mm6 >>= 1
					paddw mm0, mm1				;// mm0 += mm1
					paddw mm2, mm3				;// mm2 += mm3
					paddw mm4, mm5				;// mm4 += mm5
					paddw mm6, mm7				;// mm6 += mm7
					psrlw mm0, 1				;// mm0 >>= 1
					psrlw mm2, 1				;// mm2 >>= 1
					psrlw mm4, 1				;// mm4 >>= 1
					psrlw mm6, 1				;// mm6 >>= 1
					packuswb mm0, mm2			;// pack mm0 and mm2
					packuswb mm4, mm6			;// pack mm4 and mm6
					movq [edi], mm0				;// store mm0 into edi[0..7]
					movq [edi+8], mm4			;// store mm4 into edi[8..15]

					add esi, edx				;// esi += edx
					add edi, edx				;// edi += edx
					dec ecx						;// decrement ecx
					jnz pred_comp__l6			;// loop while not zero
					emms						;// empty MMX state
				}
				return;
			}
		}

		for (j=0; j<h; j++)		{			for (i=0; i<w; i++)				d[i] = (d[i] + ((unsigned int)(s[i]+s[i+lx]+1)>>1)+1)>>1;				
			s+= lx;			d+= lx;		}
	}	else
	{
		if(cpu_MMX)
		{
			if(w == 8)
			{
				_asm
				{
					mov esi, s					;// esi = s
					mov edi, d					;// edi = d
					mov ecx, h					;// ecx = h
					mov edx, lx					;// edx = lx
pred_comp__l7:
					movd mm0, [esi]				;// lower 4 bytes into mm0 = esi[0..3]
					movd mm1, [esi+edx]			;// lower 4 bytes into mm1 = (esi + edx)[0..3]
					movd mm2, [esi+4]			;// lower 4 bytes into mm2 = esi[4..7]
					movd mm3, [esi+edx+4]		;// lower 4 bytes into mm3 = (esi + edx)[4..7]
					punpcklbw mm0, PACKED_0		;// unpack the lower 4 bytes into mm0
					punpcklbw mm1, PACKED_0		;// unpack the lower 4 bytes into mm1
					punpcklbw mm2, PACKED_0		;// unpack the lower 4 bytes into mm2
					punpcklbw mm3, PACKED_0		;// unpack the lower 4 bytes into mm3
					paddw mm0, mm1
					paddw mm2, mm3
					paddw mm0, PACKED_1			;// mm0 += mm1 + (1, 1, 1, 1)
					paddw mm2, PACKED_1			;// mm2 += mm3 + (1, 1, 1, 1)
					psrlw mm0, 1				;// mm0 >>= 1
					psrlw mm2, 1				;// mm2 >>= 1
					packuswb mm0, mm2			;// pack mm0 and mm2
					movq [edi], mm0				;// store mm0 into edi[0..7]

					add esi, edx				;// esi += edx
					add edi, edx				;// edi += edx
					dec ecx						;// decrement ecx
					jnz pred_comp__l7			;// loop while not zero
					emms						;// empty MMX state
				}
				return;
			}

			if(w == 16)
			{

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费成人av在线| 国产精品一区在线观看乱码 | 国产精品情趣视频| 欧美美女网站色| 国产传媒欧美日韩成人| 亚洲成人第一页| 亚洲欧美日韩电影| 久久精品欧美一区二区三区麻豆| 色av一区二区| www.激情成人| 国产精品伊人色| 美女脱光内衣内裤视频久久网站| 亚洲人一二三区| 国产欧美日韩综合精品一区二区| 7777精品伊人久久久大香线蕉超级流畅 | 久久久99免费| 日韩欧美激情四射| 欧美日韩精品久久久| 91性感美女视频| 99久久久久久| 粉嫩13p一区二区三区| 久久99国产精品尤物| 视频一区二区不卡| 午夜精品久久久久影视| 亚洲精品免费在线播放| 国产精品久久三| 国产精品天干天干在观线| 亚洲精品在线一区二区| 日韩欧美专区在线| 欧美一级日韩不卡播放免费| 欧美日韩一区三区| 欧美午夜精品一区二区蜜桃| 91国偷自产一区二区三区成为亚洲经典 | 9久草视频在线视频精品| 成人激情校园春色| 北条麻妃一区二区三区| 成人久久视频在线观看| 成人中文字幕合集| 成人ar影院免费观看视频| 粉嫩av一区二区三区| 成人国产精品免费观看| 北条麻妃一区二区三区| 91视频精品在这里| 在线欧美日韩精品| 欧美日本不卡视频| 日韩久久精品一区| 久久综合九色欧美综合狠狠| 久久久久久久久伊人| 国产精品美女久久久久久2018| 欧美激情综合网| 亚洲色图19p| 亚洲成av人片一区二区三区| 天堂av在线一区| 久久99精品视频| 高清国产一区二区| 色综合婷婷久久| 欧美日韩在线电影| 日韩美女天天操| 中文字幕 久热精品 视频在线| 亚洲日本青草视频在线怡红院 | 美腿丝袜亚洲三区| 国内精品嫩模私拍在线| 成人性生交大片免费看中文网站| 不卡的电影网站| 欧美日韩免费高清一区色橹橹 | 亚洲欧美另类久久久精品| 亚洲精品写真福利| 日本成人超碰在线观看| 国产精品亚洲人在线观看| av网站免费线看精品| 欧美日本视频在线| 久久精品视频一区二区三区| 亚洲视频你懂的| 美腿丝袜在线亚洲一区| a级高清视频欧美日韩| 欧美日韩三级在线| 国产日韩欧美精品在线| 亚洲图片有声小说| 国产不卡免费视频| 欧美亚洲愉拍一区二区| 精品国产乱码久久久久久牛牛| 亚洲日本在线视频观看| 男男成人高潮片免费网站| 成人美女在线观看| 欧美一区午夜精品| 综合激情成人伊人| 精品亚洲成a人在线观看| 91麻豆国产精品久久| 精品日产卡一卡二卡麻豆| 亚洲精品视频在线| 国产麻豆精品在线观看| 欧美系列亚洲系列| 国产精品美女久久久久久2018| 免费人成精品欧美精品| 色综合激情五月| 久久综合国产精品| 性做久久久久久久免费看| 国产·精品毛片| 欧美刺激午夜性久久久久久久| 亚洲人成网站在线| 粉嫩嫩av羞羞动漫久久久| 欧美一级片免费看| 一区二区三区精品视频在线| 国产传媒一区在线| 欧美va亚洲va| 青青草视频一区| 欧美日免费三级在线| 综合欧美亚洲日本| 成人午夜大片免费观看| 久久午夜羞羞影院免费观看| 五月天一区二区三区| 一本大道久久a久久精二百| 国产免费成人在线视频| 久久精品国产第一区二区三区| 欧美老女人在线| 一区二区三区久久久| 91首页免费视频| 成人免费一区二区三区视频| 国产91丝袜在线18| 久久久久国产精品麻豆ai换脸| 麻豆成人在线观看| 91精品久久久久久久91蜜桃| 亚洲成人免费看| 欧美日韩综合在线免费观看| 亚洲已满18点击进入久久| 在线日韩一区二区| 亚洲一区在线观看免费观看电影高清 | 久久精品99国产精品日本| 在线播放亚洲一区| 日韩精品乱码av一区二区| 欧美日韩视频在线第一区| 首页欧美精品中文字幕| 69堂精品视频| 青青国产91久久久久久| 欧美一级二级三级蜜桃| 久久97超碰色| 久久欧美中文字幕| 国产黄人亚洲片| 国产精品少妇自拍| 99精品1区2区| 一区二区三区四区精品在线视频| 色吧成人激情小说| 日韩经典一区二区| 欧美变态tickling挠脚心| 精品一区二区三区免费观看| 欧美精品一区二区久久婷婷| 国产一区二区三区蝌蚪| 中文字幕精品—区二区四季| www.日韩精品| 亚洲成人福利片| 精品久久久网站| 成人精品视频一区二区三区尤物| 国产精品久久久久久妇女6080| 色综合天天性综合| 婷婷成人综合网| 亚洲精品一区二区三区影院| 国产成人在线视频网站| 亚洲靠逼com| 日韩久久免费av| 99精品热视频| 日日摸夜夜添夜夜添亚洲女人| 精品国产一区二区精华| eeuss影院一区二区三区| 午夜精品福利一区二区三区蜜桃| 精品国产免费一区二区三区香蕉| 成人av小说网| 日本欧美一区二区在线观看| 国产亚洲精品bt天堂精选| 一本高清dvd不卡在线观看| 青娱乐精品视频| 成人欧美一区二区三区| 91麻豆精品91久久久久久清纯| 国产老肥熟一区二区三区| 一区二区三区国产豹纹内裤在线| 欧美一区二区黄| 成人app在线| 久久精品国产精品青草| 亚洲另类一区二区| 精品国产sm最大网站| 色悠悠亚洲一区二区| 捆绑紧缚一区二区三区视频 | 一区二区三区四区av| 日韩欧美国产一区二区在线播放 | 亚洲激情图片小说视频| 欧美精品一区二区三区蜜桃 | 日本sm残虐另类| 综合分类小说区另类春色亚洲小说欧美| 欧美区在线观看| youjizz久久| 麻豆极品一区二区三区| 亚洲免费av网站| 2024国产精品| 正在播放亚洲一区| 91女厕偷拍女厕偷拍高清| 捆绑紧缚一区二区三区视频| 一区二区免费在线| 中文字幕欧美区| 久久网站最新地址| 制服视频三区第一页精品| 色88888久久久久久影院野外|