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

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

?? scaler_test.c

?? 三星 s3c6400測試代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
				
			 	if (uPostFrameCount % 2)
					POST_SetNextFrameStAddr(uNxtAddr2, uLcdStAddr, &oSc);
				else 
					POST_SetNextFrameStAddr(uNxtAddr1, uLcdStAddr, &oSc);

				if (uPostFrameCount == uMaxFrameCnt)
				{
					POST_StopProcessingOfFreeRun(&oSc);	
					while (!POST_IsProcessingDone(&oSc));	
					uScalerIntOccured = FALSE;
					break;
				}
				uPostIsrCount = 0;
			}
			uScalerIntOccured = FALSE;
		}
	}

	POST_DisableInterrupt(&oSc);
	POST_ClearPending(&oSc);	
	//INTC_Mask(INT_POST);
	INTC_Disable(NUM_SCALER);
}


void ScalerT_ScaleUpDown_RGB(void)
{
	u32 uGlibStAddr, uGlibStAddr1;
	u32 uBytesPerPixel;
	u32 uScaleOffsetX, uScaleOffsetY;
	u8 uScale;
	u32 uHOffset, uVOffset, uPreHOffset, uPreVOffset, uHRatio, uVRatio;
	s32 nSelDmaCscType_R2R;	

	UART_Printf("[ScalerT_ScaleUpDown_RGB]\n");

	while(1)
	{
		UART_Printf("\n");
		UART_Printf("[1] RGB16\n");
		UART_Printf("[2] RGB24\n");
		UART_Printf("\n");

		UART_Printf(">>Select The Source Image Type: ");

		nSelDmaCscType_R2R = UART_GetIntNum();

		if (nSelDmaCscType_R2R == 1 || nSelDmaCscType_R2R == 2 )
		{
			eSrcDataFmt = (nSelDmaCscType_R2R == 1) ? RGB16 : RGB24;
			eDstDataFmt = (nSelDmaCscType_R2R == 2) ? RGB16 : RGB24;
			break;
		}
		else 
			UART_Printf("Invalid Input! Retry It!!\n");
		
	}

	ePostRunMode = ONE_SHOT;

	//LCD_InitLDI(MAIN);
	LCD_InitDISPC(eSrcDataFmt, uLcdStAddr, WIN0, false);
	LCD_Start();
	LCD_SetWinOnOff(1, WIN0);
	LCD_GetFrmSz(&uLcdHSz, &uLcdVSz, WIN0);

	uImgHSz = uLcdHSz;	
	uImgVSz = uLcdVSz;
	uSrcStartX = 0; 
	uSrcStartY = 0;
	uSrcCroppedHSz = uLcdHSz;	
	uSrcCroppedVSz = uLcdVSz;
	
	uMidImgHSz = 2048;
	uMidImgVSz = 2048;
	uMidStartX = 0;
	uMidStartY = 0;
	uMidScaledHSz = 2048;
	uMidScaledVSz = 2048;
		
	uDstStartX = 0; 
	uDstStartY = 0;
	uDstScaledHSz = uLcdHSz, 
	uDstScaledVSz = uLcdVSz;	
	
	// To Clear the LCD Display
	GLIB_Init(uLcdStAddr, uLcdHSz, uLcdVSz, eSrcDataFmt);
	GLIB_ClearFrame(C_BLACK);

	uBytesPerPixel = (eSrcDataFmt == RGB16) ? 2: 4;
	uGlibStAddr = uLcdStAddr + uLcdHSz*uLcdVSz*uBytesPerPixel;
	uGlibStAddr1 = uGlibStAddr + uMidImgHSz*uMidImgVSz*uBytesPerPixel;
	
	//uSrcStAddr=0;

	// CSC & Scaling the DrawPattern 1
	//GLIB_Init(uGlibStAddr, uImgHSz, uImgVSz, eSrcDataFmt);
	//GLIB_DrawPattern(uImgHSz, uImgVSz);
	ScalerT_GetImageFromBMP(uGlibStAddr, uLcdHSz, uLcdVSz, 11, eSrcDataFmt);

	uScaleOffsetX = uMidImgHSz/2;
	uScaleOffsetY = uMidImgVSz/2;
	// generation mid image
	POST_InitIp1(	uImgHSz, uImgVSz, uSrcStartX, uSrcStartY, uSrcCroppedHSz, uSrcCroppedVSz, uGlibStAddr, eSrcDataFmt,
					uMidImgHSz, uMidImgVSz, uMidStartX, uMidStartY, uMidScaledHSz, uMidScaledVSz, uGlibStAddr1, eSrcDataFmt,
					1, false, ePostRunMode, POST_DMA, POST_DMA, &oSc);
	POST_StartProcessing1(0, 0, &oSc);
	while (!POST_IsProcessingDone(&oSc));

	// default display image
	POST_InitIp1(	uMidImgHSz, uMidImgVSz, uMidStartX, uMidStartY, uMidScaledHSz-uScaleOffsetX, uMidScaledVSz-uScaleOffsetY, uGlibStAddr1, eSrcDataFmt,
					uLcdHSz, uLcdVSz, uDstStartX, uDstStartY, uDstScaledHSz, uDstScaledVSz, uLcdStAddr, eSrcDataFmt,
					1, false, ePostRunMode, POST_DMA, POST_DMA, &oSc);
	POST_StartProcessing1(0, 0, &oSc);
	while (!POST_IsProcessingDone(&oSc));

	UART_Printf("=============================================\n");
	UART_Printf("'w' : Vertical Scale-up,  'x' : Vertical Scale-down\n");
	UART_Printf("'d' : Horizontal Scale-up,  'a' : Horizontal Scale-down\n");
	UART_Printf("=============================================\n");
	UART_Printf("Press 'q' key to exit\n");	

	//RGB24 -> Width : multiple of 1,   RGB16 -> Width : multiple of 2
	while((uScale=UART_Getc()) != 'q')
	{
		switch (uScale)
		{
			//Vetical Scale Up
			case 'w' :
			case 'W' :	POST_CalcurateScaleOffset(	uMidScaledHSz-uScaleOffsetX-uPreHOffset, uMidScaledVSz-uScaleOffsetY-uPreVOffset, uDstScaledHSz, uDstScaledVSz, &oSc, 
													&uHOffset, &uVOffset, &uHRatio, &uVRatio, eSrcDataFmt);
						if(uPreVOffset == uVOffset)
						{
							if(uScaleOffsetY < (uMidImgVSz-uPreVOffset))
								 uScaleOffsetY += uPreVOffset;
						}
						else
						{	
							if(uScaleOffsetY < (uMidImgVSz-uVOffset))
								uScaleOffsetY += uVOffset - (uScaleOffsetY%(uVOffset));
							uPreVOffset = uVOffset;
						}
						break;
			//Vetical Scale Down
			case 'x' :
			case 'X' :	POST_CalcurateScaleOffset(	uMidScaledHSz-uScaleOffsetX+uPreHOffset, uMidScaledVSz-uScaleOffsetY+uPreVOffset, uDstScaledHSz, uDstScaledVSz, &oSc, 
													&uHOffset, &uVOffset, &uHRatio, &uVRatio, eSrcDataFmt);
						if(uPreVOffset == uVOffset)
						{
							if(uScaleOffsetY >= uPreVOffset)
								 uScaleOffsetY -= uPreVOffset;
						}
						else
						{	
							if(uScaleOffsetY >= uVOffset)
								uScaleOffsetY -= uVOffset - (uScaleOffsetY%(uVOffset));
							uPreVOffset = uVOffset;
						}
						break;	
			//Horizontal Scale Up	
			case 'd' :
			case 'D' :	POST_CalcurateScaleOffset(	uMidScaledHSz-uScaleOffsetX-uPreHOffset, uMidScaledVSz-uScaleOffsetY-uPreVOffset, uDstScaledHSz, uDstScaledVSz, &oSc, 
													&uHOffset, &uVOffset, &uHRatio, &uVRatio, eSrcDataFmt);
						if(uPreHOffset == uHOffset)
						{
							if(uScaleOffsetX < (uMidImgHSz-uPreHOffset))
								 uScaleOffsetX += uPreHOffset;
						}
						else
						{	
							if(uScaleOffsetX < (uMidImgHSz-uHOffset))
								uScaleOffsetX += uHOffset - (uScaleOffsetX%(uHOffset));
							uPreHOffset = uHOffset;
						}
						break;	
			//Horizontal Scale Down						
			case 'a' :
			case 'A' :	POST_CalcurateScaleOffset(	uMidScaledHSz-uScaleOffsetX+uPreHOffset, uMidScaledVSz-uScaleOffsetY+uPreVOffset, uDstScaledHSz, uDstScaledVSz, &oSc, 
													&uHOffset, &uVOffset, &uHRatio, &uVRatio, eSrcDataFmt);
						if(uPreHOffset == uHOffset)
						{
							if(uScaleOffsetX >= uPreHOffset)
								 uScaleOffsetX -= uPreHOffset;
						}
						else
						{	
							if(uScaleOffsetX >= uHOffset)
								uScaleOffsetX -= uHOffset - (uScaleOffsetX%(uHOffset));
							uPreHOffset = uHOffset;
						}
			default : 	break;
		}

		UART_Printf("(%d*%d) -> (%d*%d)\n",uMidScaledHSz-uScaleOffsetX, uMidScaledVSz-uScaleOffsetY, uDstScaledHSz, uDstScaledVSz);
		
		POST_InitIp1(	uMidImgHSz, uMidImgVSz, uMidStartX, uMidStartY, uMidScaledHSz-uScaleOffsetX, uMidScaledVSz-uScaleOffsetY, uGlibStAddr1, eSrcDataFmt,
						uLcdHSz, uLcdVSz, uDstStartX, uDstStartY, uDstScaledHSz, uDstScaledVSz, uLcdStAddr, eSrcDataFmt,
						1, false, ePostRunMode, POST_DMA, POST_DMA, &oSc);
		POST_StartProcessing1(0, 0, &oSc);
		while (!POST_IsProcessingDone(&oSc));		
	}
	
}





const testFuncMenu scaler_r2r_menu[] =
{
	ScalerT_SimpleDmaToDma_R2R,                        			"Simple DMA CSC Test From RGB To RGB",
	ScalerT_ComplexIDmaToDma_R2R,                       		"Complex DMA CSC Test From RGB To RGB",
	ScalerT_SimpleFreeRunDmaToDma_R2R_Polling,          	"Simple FreeRun And CSC Test From RGB To RGB By Using Polling",
	ScalerT_SimpleFreeRunDmaToDma_R2R_Int,              	"Simple FreeRun And CSC Test From RGB To RGB By Using Interrupt", 		
	ScalerT_ComplexFreeRunDmaToDma_R2R_Polling, 		"Complex FreeRun And CSC Test From RGB To RGB By Using Polling",
	ScalerT_ComplexFreeRunDmaToDma_R2R_Int,             	"Complex FreeRun And CSC Test From RGB To RGB By Using Interrupt",		
	ScalerT_ScaleUpDown_RGB,							"Scale Up/Down RGB",
	0,                                          0
};


static void ScalerT_ConvertRGBToRGB(void)
{
	u32 i; 
	s32 uSel;
	
	UART_Printf("[ScalerT_ConvertRGBToRGB]\n");
	
	while(1)
	{
		UART_Printf("\n");
		for (i=0; (int)(scaler_r2r_menu[i].desc)!=0; i++)
		{
			UART_Printf("%2d: %s\n", i, scaler_r2r_menu[i].desc);
		}

		UART_Printf("\n");
		UART_Printf("Select The Function To Test: ");

		uSel = UART_GetIntNum();
		UART_Printf("\n");

		if (uSel == -1)
			break;
		if (uSel>=0 && uSel<(sizeof(scaler_r2r_menu)/8-1))
			(scaler_r2r_menu[uSel].func)();
	}
}


////////////////////////////////////////////////////////////////////////////
//////////////////                    RGB to YUV to RGB                    ///////////////////
////////////////////////////////////////////////////////////////////////////


static void ScalerT_SetCscTypeDmaToDma_R2Y2R(void)
{
	int nSelDmaCscType_R2Y2R;

	while(1)
	{
		UART_Printf("\n");		
		UART_Printf(" [1] RGB16 -> YCbYCr422_Intlv And YCbYCr422_Intlv -> RGB16\n");
		UART_Printf(" [2] RGB16 -> YCrYCb422_Intlv And YCrYCb422_Intlv -> RGB16\n");		
		UART_Printf(" [3] RGB16 -> CbYCrY422_Intlv And CbYCrY422_Intlv -> RGB16\n");	
		UART_Printf(" [4] RGB16 -> CrYCbY422_Intlv And CrYCbY422_Intlv -> RGB16\n");
		UART_Printf(" [5] RGB16 -> YC420 And YC420 -> RGB16\n");
		UART_Printf("\n");
		UART_Printf(" [6] RGB24 -> YCbYCr422_Intlv And YCbYCr422_Intlv -> RGB24\n");
		UART_Printf(" [7] RGB24 -> YCrYCb422_Intlv And YCrYCb422_Intlv -> RGB24\n");		
		UART_Printf(" [8] RGB24 -> CbYCrY422_Intlv And CbYCrY422_Intlv -> RGB24\n");	
		UART_Printf(" [9] RGB24 -> CrYCbY422_Intlv And CrYCbY422_Intlv -> RGB24\n");
		UART_Printf("[10] RGB24 -> YC420 And YC420 -> RGB24\n");
		UART_Printf("\n");
		UART_Printf("[11] RGB16 -> YCbYCr422_Intlv And YCbYCr422_Intlv -> RGB24\n");
		UART_Printf("[12] RGB16 -> YCrYCb422_Intlv And YCrYCb422_Intlv -> RGB24\n");		
		UART_Printf("[13] RGB16 -> CbYCrY422_Intlv And CbYCrY422_Intlv -> RGB24\n");	
		UART_Printf("[14] RGB16 -> CrYCbY422_Intlv And CrYCbY422_Intlv -> RGB24\n");
		UART_Printf("[15] RGB16 -> YC420 And YC420 -> RGB24\n");
		UART_Printf("\n");
		UART_Printf("[16] RGB24 -> YCbYCr422_Intlv And YCbYCr422_Intlv -> RGB16\n");
		UART_Printf("[17] RGB24 -> YCrYCb422_Intlv And YCrYCb422_Intlv -> RGB16\n");		
		UART_Printf("[18] RGB24 -> CbYCrY422_Intlv And CbYCrY422_Intlv -> RGB16\n");	
		UART_Printf("[19] RGB24 -> CrYCbY422_Intlv And CrYCbY422_Intlv -> RGB16\n");
		UART_Printf("[20] RGB24 -> YC420 And YC420 -> RGB16\n");
		UART_Printf("\n");

		UART_Printf(">> Select The Color Space Conversion Type: ");
		nSelDmaCscType_R2Y2R = UART_GetIntNum();

//		if(	nSelDmaCscType_R2Y2R == 1 || nSelDmaCscType_R2Y2R == 2 || nSelDmaCscType_R2Y2R == 3 || nSelDmaCscType_R2Y2R == 4 ||
//			nSelDmaCscType_R2Y2R == 5 || nSelDmaCscType_R2Y2R == 6 || nSelDmaCscType_R2Y2R == 7 || nSelDmaCscType_R2Y2R == 8 ||
//			nSelDmaCscType_R2Y2R == 9 || nSelDmaCscType_R2Y2R == 10 || nSelDmaCscType_R2Y2R == 11 || nSelDmaCscType_R2Y2R == 12 ||
//			nSelDmaCscType_R2Y2R == 13 || nSelDmaCscType_R2Y2R == 14 || nSelDmaCscType_R2Y2R == 15 || nSelDmaCscType_R2Y2R == 16 ||
//			nSelDmaCscType_R2Y2R == 17 || nSelDmaCscType_R2Y2R == 18 || nSelDmaCscType_R2Y2R == 19 || nSelDmaCscType_R2Y2R == 20)
		if( (nSelDmaCscType_R2Y2R >= 1) && (nSelDmaCscType_R2Y2R <=20) )
		{
			eSrcDataFmt =
				(nSelDmaCscType_R2Y2R == 1 || nSelDmaCscType_R2Y2R == 2 || nSelDmaCscType_R2Y2R == 3 ||
				nSelDmaCscType_R2Y2R == 4 || nSelDmaCscType_R2Y2R == 5 || nSelDmaCscType_R2Y2R == 11 || 
				nSelDmaCscType_R2Y2R == 12 || nSelDmaCscType_R2Y2R == 13 || nSelDmaCscType_R2Y2R == 14 ||
				nSelDmaCscType_R2Y2R == 15) ? RGB16 : RGB24;

			eMidDataFmt =
				(nSelDmaCscType_R2Y2R == 1 || nSelDmaCscType_R2Y2R == 6 ||
				nSelDmaCscType_R2Y2R == 11 || nSelDmaCscType_R2Y2R == 16 ) ? YCBYCR :
				(nSelDmaCscType_R2Y2R == 2 || nSelDmaCscType_R2Y2R == 7 ||
				nSelDmaCscType_R2Y2R == 12 || nSelDmaCscType_R2Y2R == 17 ) ? YCRYCB :
				(nSelDmaCscType_R2Y2R == 3 || nSelDmaCscType_R2Y2R == 8 ||
				nSelDmaCscType_R2Y2R == 13 || nSelDmaCscType_R2Y2R == 18 ) ? CBYCRY :
				(nSelDmaCscType_R2Y2R == 4 || nSelDmaCscType_R2Y2R == 9 ||
				nSelDmaCscType_R2Y2R == 14 || nSelDmaCscType_R2Y2R == 19 ) ? CRYCBY : YC420;

			eDstDataFmt =
				(nSelDmaCscType_R2Y2R == 1 || nSelDmaCscType_R2Y2R == 2 || nSelDmaCscType_R2Y2R == 3 ||
				nSelDmaCscType_R2Y2R == 4 || nSelDmaCscType_R2Y2R == 5 || nSelDmaCscType_R2Y2R == 16 || 
				nSelDmaCscType_R2Y2R == 17 || nSelDmaCscType_R2Y2R == 18 || nSelDmaCscType_R2Y2R == 19 ||
				nSelDmaCscType_R2Y2R == 20) ? RGB16 : RGB24;

			break;
		}
		else
			UART_Printf("Invalid Input! Retry It!!\n");
		
	}
	
	if (eSrcDataFmt == RGB16 && eMidDataFmt == YCBYCR && eDstDataFmt == RGB16)
	{
		uImgHSz = 240, uImgVSz = 320, uSrcStartX = 20, uSrcStartY = 20;
		uSrcCroppedHSz = 160, uSrcCroppedVSz = 240;

		uMidImgHSz = 240, uMidImgVSz = 320, uMidStartX = 60, uMidStartY = 40;
		uMidScaledHSz = 120, uMidScaledVSz = 120;

		uDstStartX = 120, 	uDstStartY = 100, uDstScaledHSz = 104, uDstScaledVSz = 140;		
	}
	else if (eSrcDataFmt == RGB16 && eMidDataFmt == YCRYCB && eDstDataFmt == RGB16)
	{

		uImgHSz = 120, 	uImgVSz = 160, uSrcStartX = 0, uSrcStartY = 40;
		uSrcCroppedHSz = 120, 	uSrcCroppedVSz = 100;

		uMidImgHSz = 240, uMidImgVSz = 320, uMidStartX = 0, uMidStartY = 40;
		uMidScaledHSz = 120, uMidScaledVSz = 120;

		uDstStartX = 0, uDstStartY = 50, uDstScaledHSz = 120, uDstScaledVSz = 110;//160;		
	}
	else if (eSrcDataFmt == RGB16 && eMidDataFmt == CBYCRY && eDstDataFmt == RGB16)	
	{
		uImgHSz = 360, 	uImgVSz = 480,	uSrcStartX = 80, uSrcStartY = 120;
		uSrcCroppedHSz = 104, 	uSrcCroppedVSz = 100;

		uMidImgHSz = 240, uMidImgVSz = 320, uMidStartX = 20, uMidStartY = 40;
		uMidScaledHSz = 160, uMidScaledVSz = 120;

		uDstStartX = 120, uDstStartY = 80, uDstScaledHSz = 80, uDstScaledVSz = 160;		
	}
	else if (eSrcDataFmt == RGB16 && eMidDataFmt == CRYCBY && eDstDataFmt == RGB16)
	{
		uImgHSz = 240, 	uImgVSz = 320, uSrcStartX = 0, uSrcStartY = 20;
		uSrcCroppedHSz = 160, 	uSrcCroppedVSz = 200;

		uMidImgHSz = 120, uMidImgVSz = 160 ,uMidStartX = 10, uMidStartY = 30;
		uMidScaledHSz = 80, uMidScaledVSz = 100;

		uDstStartX = 50, uDstStartY = 60, uDstScaledHSz = 176 ,uDstScaledVSz = 180;		
	}
	else if (eSrcDataFmt == RGB16 && eMidDataFmt == YC420 && eDstDataFmt == RGB16)
	{
		uImgHSz = 240,	uImgVSz = 320, uSrcStartX = 20, uSrcStartY = 20;
		uSrcCroppedHSz = 160, 	uSrcCroppedVSz = 200;

		uMidImgHSz = 120, uMidImgVSz = 160, uMidStartX = 0, uMidStartY = 30;
		uMidScaledHSz = 48, uMidScaledVSz = 100;

		uDstStartX = 50, uDstStartY = 40, uDstScaledHSz = 160, uDstScaledVSz = 200;		
	}
	else if (eSrcDataFmt == RGB24 && eMidDataFmt == YCBYCR && eDstDataFmt == RGB24)
	{
		uImgHSz = 240, 	uImgVSz = 320, uSrcStartX = 20, uSrcStartY = 10;
		uSrcCroppedHSz = 128, 	uSrcCroppedVSz = 128;

		uMidImgHSz = 360, uMidImgVSz = 480, uMidStartX = 60, uMidStartY = 40;
		uMidScaledHSz = 240, uMidScaledVSz = 240;

		uDstStartX = 20, uDstStartY = 80, uDstScaledHSz = 160, uDstScaledVSz = 160;		
	}
	else if (eSrcDataFmt == RGB24 && eMidDataFmt == YCRYCB&& eDstDataFmt == RGB24)
	{
		uImgHSz = 120, 	uImgVSz = 160, uSrcStartX = 20, uSrcStartY = 10;
		uSrcCroppedHSz = 80, uSrcCroppedVSz = 120;

		uMidImgHSz = 240, uMidImgVSz = 320, uMidStartX = 120, uMidStartY = 120;
		uMidScaledHSz = 80, uMidScaledVSz = 160;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠狠色丁香婷婷综合激情| 精品久久久久久最新网址| 日日欢夜夜爽一区| 久久久.com| 在线播放中文一区| 一本到三区不卡视频| 国产美女精品在线| 日本不卡一区二区| 伊人色综合久久天天人手人婷| 精品国产91久久久久久久妲己| 欧美日韩视频在线观看一区二区三区 | 色综合一区二区| 欧美精品一区二区三区四区| 成人免费在线视频观看| 成人福利视频网站| 精品亚洲porn| 蜜臀va亚洲va欧美va天堂| 亚洲精品国产精华液| 中文字幕日韩欧美一区二区三区| 欧美成人aa大片| 欧美一区二区三区视频免费| 欧美色图天堂网| 色婷婷精品久久二区二区蜜臀av| 成人激情免费视频| 国产不卡免费视频| 国产精品综合久久| 激情欧美一区二区| 精东粉嫩av免费一区二区三区| 奇米影视在线99精品| 亚洲日本韩国一区| 国产蜜臀97一区二区三区| 国产午夜精品福利| 欧美吻胸吃奶大尺度电影 | 久久五月婷婷丁香社区| 欧美一级日韩免费不卡| 91麻豆精品国产91久久久更新时间| 色噜噜狠狠一区二区三区果冻| 色综合色综合色综合色综合色综合| 成人精品免费视频| 97aⅴ精品视频一二三区| 99re成人精品视频| 91在线免费看| 亚洲精品一区二区三区福利| 精品乱人伦小说| 久久久www成人免费毛片麻豆| 久久久久久久久久电影| 国产日韩精品一区二区三区 | 亚洲欧洲精品天堂一级| 欧美精品一区视频| 久久久91精品国产一区二区精品| 国产欧美精品在线观看| 国产精品美女久久福利网站| 亚洲欧美怡红院| 亚洲一区二区三区爽爽爽爽爽| 一区二区三区在线视频免费观看 | 美女精品一区二区| 国产伦精品一区二区三区免费迷| 色综合久久综合网| 欧美成人bangbros| 蜜臀91精品一区二区三区| 欧美videos大乳护士334| 666欧美在线视频| 久久成人综合网| 亚洲美女一区二区三区| 亚洲高清三级视频| 日韩成人午夜电影| 懂色av中文一区二区三区| 91亚洲国产成人精品一区二三| 欧美吞精做爰啪啪高潮| 久久影院午夜片一区| 亚洲人成亚洲人成在线观看图片| 三级不卡在线观看| 国产成人免费av在线| 91国产成人在线| 精品久久久久久久久久久久久久久久久 | 国产一区二区三区免费在线观看| www.99精品| 欧美人成免费网站| 国产欧美日韩另类一区| 亚洲va在线va天堂| 成人小视频在线观看| 欧美精品tushy高清| 日本一区二区视频在线| 日韩主播视频在线| www.爱久久.com| 精品乱人伦一区二区三区| 一区二区三区在线视频免费| 国模大尺度一区二区三区| 欧美亚洲一区三区| 中文子幕无线码一区tr| 免费高清成人在线| 在线看国产一区二区| 国产午夜精品在线观看| 青青草国产精品97视觉盛宴| 91亚洲午夜精品久久久久久| 久久影院视频免费| 免费一级片91| 欧美性生活影院| 中文字幕一区在线| 国产乱一区二区| 91精品国产综合久久久久久漫画| 亚洲啪啪综合av一区二区三区| 国产精品影视在线观看| 欧美一级艳片视频免费观看| 一区二区三区蜜桃网| jizzjizzjizz欧美| 久久婷婷综合激情| 麻豆精品国产传媒mv男同 | 日韩欧美专区在线| 亚洲永久精品国产| 91免费版pro下载短视频| 樱桃视频在线观看一区| 不卡一区中文字幕| 精品欧美乱码久久久久久| 性做久久久久久免费观看欧美| 色综合久久88色综合天天6| 中文字幕国产精品一区二区| 国产一区二区三区久久悠悠色av| 91精品国模一区二区三区| 亚洲福利视频一区| 成人三级伦理片| 国产欧美日韩麻豆91| 国产精品18久久久久久久久久久久| 欧美一区二区精品| 蜜桃91丨九色丨蝌蚪91桃色| 91精品国产综合久久婷婷香蕉| 五月婷婷久久丁香| 欧美日韩国产一级片| 亚洲欧美aⅴ...| 色av成人天堂桃色av| 亚洲精品videosex极品| 色天使色偷偷av一区二区| 中文字幕五月欧美| 91免费视频大全| 亚洲精品一区二区三区影院| 久久爱另类一区二区小说| 精品久久久久久久久久久久久久久| 免费成人性网站| 2023国产精品自拍| 国产91丝袜在线播放| 国产精品久久久久9999吃药| 91香蕉国产在线观看软件| 亚洲美女视频在线观看| 欧美在线一二三四区| 亚洲r级在线视频| 欧美一级高清片| 精品伊人久久久久7777人| 久久久99免费| 91免费观看在线| 午夜精品一区二区三区电影天堂| 欧美日韩久久久一区| 六月婷婷色综合| 日本一区二区三区四区| 91在线看国产| 天天综合网天天综合色| 欧美电视剧在线看免费| 国产aⅴ综合色| 国产成人超碰人人澡人人澡| 国产精品久久久久久久久久免费看| 日本乱码高清不卡字幕| 午夜伦欧美伦电影理论片| 欧美精品一区视频| 成人精品一区二区三区四区| 亚洲欧美日韩精品久久久久| 欧美妇女性影城| 国产精品自拍在线| 亚洲日本在线天堂| 日韩一区二区三区视频在线| 福利电影一区二区| 亚洲成人综合视频| 国产日产精品1区| 91网站视频在线观看| 青草av.久久免费一区| 国产精品乱人伦一区二区| 欧美日韩视频在线观看一区二区三区| 美女脱光内衣内裤视频久久网站 | 裸体健美xxxx欧美裸体表演| 日本一区免费视频| 在线不卡免费av| av激情综合网| 久久99精品久久久| 一区二区三区.www| 国产日韩欧美制服另类| 欧美日韩一区中文字幕| 国产成人免费视频一区| 视频在线观看91| 亚洲欧洲另类国产综合| 日韩西西人体444www| 色婷婷香蕉在线一区二区| 国产一区二区网址| 三级成人在线视频| 综合分类小说区另类春色亚洲小说欧美 | 色综合天天综合狠狠| 国内精品久久久久影院色| 亚洲一区二区三区四区不卡| 中文字幕巨乱亚洲| 亚洲精品一区二区三区99 | 亚洲色图一区二区| 国产亚洲欧美激情| 欧美一区二区三区不卡|