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

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

?? playview.cpp

?? < VC++視頻音頻開(kāi)發(fā)>> 這本書(shū)的源碼
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
    WORD flags;
	//打開(kāi)設(shè)備驅(qū)動(dòng)
    m_hVFDrv = OpenDriver (L"av8api.dll", NULL, NULL);
    if (!m_hVFDrv)
    {
		MessageBox("Can't OpenDriver()");
        return -1;
	}
	//檢查是否有設(shè)備驅(qū)動(dòng)可用,如有,將打開(kāi)的設(shè)備與驅(qū)動(dòng)程序關(guān)聯(lián)起來(lái)
    if (!HVFAssign(m_hVFDrv, 0))
    {
        MessageBox("沒(méi)有合適的視頻設(shè)備!");
        return -1;
    }
	//鎖定設(shè)備
	HVFLock(m_hVFDrv, VF_CAP_ALL);
	
    flags = VF_FLAG_MPEG | VF_FLAG_ENCODE | VF_FLAG_OUTBUF;
	//打開(kāi)流數(shù)據(jù)
    m_bStream = static_cast<BYTE> (HVFOpen(m_hVFDrv, flags, 
		reinterpret_cast<unsigned long>(MyCallBack)));
	//配置流數(shù)據(jù)的編碼信息
   	InitEncodeVideoVxD();
    InitEncodeAudioVxD(); 
	//開(kāi)始采集數(shù)據(jù)
	if (m_bStream) 
        HVFRecord(m_hVFDrv, m_bStream, NULL, NULL);
	return 0;
}

void CPlayView::ClearDriver()
{
	//將流數(shù)據(jù)的大小置為0
    m_bStream = 0;
    if (m_hVFDrv)
    {
        //停止采集數(shù)據(jù)
		HVFStop(m_hVFDrv, m_bStream);
		//關(guān)閉流數(shù)據(jù)
        HVFClose(m_hVFDrv, m_bStream);
		//釋放設(shè)備
        HVFUnlock(m_hVFDrv, VF_CAP_ALL);
		//關(guān)閉設(shè)備驅(qū)動(dòng)
        CloseDriver(m_hVFDrv, NULL, NULL);
		//將驅(qū)動(dòng)句柄置為0
        m_hVFDrv = 0;
		//采集標(biāo)志設(shè)為FALSE
		m_Capture=FALSE;
     }
}

//配置視頻流的編碼信息
void CPlayView::InitEncodeVideoVxD()
{
   
    DWORD dwValue;
    WORD  wWidth, wHeight;
	
    wWidth  = 352;
    wHeight = 288;
    dwValue = MAKELONG(wWidth, wHeight);
	//設(shè)置視頻的輸出大小,取MAKELONG(352, 288)
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_OUTPUTSIZE, dwValue);
	
    wWidth = (wWidth * 45) / 44; 
    dwValue = MAKELONG(wWidth, wHeight);
	//設(shè)置視頻的輸入大小,取MAKELONG(360, 288)
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_INPUTSIZE, dwValue);
	//設(shè)置視頻的比特率,取1152000bits/s
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_BITRATE, BITRATE_DEFAULT);	
	//設(shè)置視頻幀速,25幀/s
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_RATE, VF_FLAG_VID_25);
	//設(shè)置MPEG壓縮的I幀間隔,取15 
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_IINTERVAL, IINTERVAL_DEFAULT);
	//設(shè)置MPEG壓縮的P幀間隔,取3
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_BINTERVAL, PINTERVAL_DEFAULT);
	//設(shè)置視頻的制式,采用PAL制式
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_MODE, VF_FLAG_VID_PAL);
	//設(shè)置視頻的輸入源的類(lèi)型,采用混合類(lèi)型
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_SOURCE, VF_FLAG_VID_COMPOSITE);
	//設(shè)置視頻的壓縮算法,采用MPEG編碼
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_ALGORITHM, VF_FLAG_VID_MPEG);
	//設(shè)置視頻的亮度
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_BRIGHTNESS, BRIGHTNESS_DEFAULT);
	//設(shè)置視頻的對(duì)比度
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_CONTRAST, CONTRAST_DEFAULT);		   
	//設(shè)置視頻的色調(diào)
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_HUE, HUE_DEFAULT);		
	//設(shè)置視頻的飽和度
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_VID_SATURATION, SATURATION_DEFAULT);

}



void CPlayView::DiskSpace(TCHAR sDriver)
{//檢查磁盤(pán)空間
	struct _diskfree_t diskfree;
	int nDriver =sDriver-'A'+1; 
	if (_getdiskfree(nDriver, &diskfree) == 0)
	{
		FreeDiskSpace.Format("硬盤(pán)%c剩余:%luMB",sDriver,
			(DWORD)diskfree.avail_clusters *
			(DWORD)diskfree.sectors_per_cluster *
			(DWORD)diskfree.bytes_per_sector / ((DWORD)1024L*(DWORD)1024L));
	}
	else
		return;
}

void CPlayView::OnCaptureSave() 
{
	// TODO: Add your command handler code here
	CString strCaptureSave;
	TCHAR Driver;
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	CFileDialog FileDlg(TRUE,NULL,"temp",NULL,"mpeg文件(*.mpg)|*.mpg|AVI文件(*.avi)|*.avi");
	FileDlg.m_ofn.lpstrInitialDir="c:\\temp";
	CStopModeDlg StopModeDlg;
	FileDlg.m_ofn.lpstrTitle="指定采集文件名";
	if(FileDlg.DoModal()==IDOK)
	{
		//選擇采集文件
		CapFileName=FileDlg.GetPathName();
        Driver=CapFileName.GetAt(0);
        strCaptureSave.Format("采集到:%s",CapFileName);
		//檢查磁盤(pán)剩余空間
		DiskSpace(Driver);
        CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
        pFrame->m_wndStatusBar.SetPaneText(1,strCaptureSave);
		pFrame->m_wndStatusBar.SetPaneText(2,FreeDiskSpace);
		//選擇自動(dòng)停止采集方式
        if(StopModeDlg.DoModal()==IDOK)
		{ 
			if(StopModeDlg.m_SizeCheck)
			{//選擇根據(jù)文件大小停止
				sscanf(StopModeDlg.m_size,"%f",&m_size);
				m_SizeCheck=StopModeDlg.m_SizeCheck;
			}
			if(StopModeDlg.m_TimeCheck)
			{//選擇根據(jù)采集時(shí)間停止
				sscanf(StopModeDlg.m_time,"%d",&m_time);
				m_TimeCheck=StopModeDlg.m_TimeCheck;
			}
		}
	}
}




void CPlayView::OnBeginCapture() 
{
	// TODO: Add your command handler code here
	DWORD dwFlags = 0;
    RECT Srct,Erct,Prct;
    int width;
    UINT Sid;
    UINT SStyle;
	//如果當(dāng)前不在實(shí)時(shí)發(fā)送數(shù)據(jù)而且不在采集,
	//對(duì)設(shè)備進(jìn)行初始化,開(kāi)始采集數(shù)據(jù)
	if((!m_RealSend)&&(!m_Capture))
	   if(InitDriver()<0)
	    	return;
	//采集標(biāo)志設(shè)為T(mén)RUE
    m_Capture=TRUE;
	LPSTR caFileName=CapFileName.GetBuffer(_MAX_PATH);
	CapFileName.ReleaseBuffer();
	dwFlags = MMIO_CREATE | MMIO_WRITE;
	//打開(kāi)采集文件
	hmmioOutput = mmioOpen(caFileName, (LPMMIOINFO)NULL, dwFlags);

	//在狀態(tài)欄中顯示相關(guān)信息
 	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"");
	pFrame->m_wndStatusBar.GetPaneInfo(0,Sid,SStyle,width);
 	::GetClientRect(pFrame->m_wndStatusBar.m_hWnd,&Prct);
	Srct.left=10;
    Srct.top=4;
    Srct.right=width/2-20;
    Srct.bottom=Prct.bottom-1;
    Erct.left=width/2;
    Erct.top=4;
 	Erct.right=width-10;
 	Erct.bottom=Prct.bottom-1;
    m_static.Create(_T("已采集(時(shí):分:秒)"),WS_CHILD|WS_VISIBLE|SS_LEFT,
	Srct,&pFrame->m_wndStatusBar,ID_STATIC);
	m_static.SetFont(&m_font);
	m_edit.Create(ES_CENTER|WS_BORDER|WS_VISIBLE,Erct,&pFrame->m_wndStatusBar,ID_EDIT);
    m_edit.SetWindowText("00:00:00");

	//采集定時(shí)器標(biāo)志設(shè)為T(mén)RUE
    m_TCapture=TRUE;
	//設(shè)定計(jì)時(shí)器
	SetTimer(ID_TIMER,1000,NULL);	
}

void CPlayView::OnStopCapture() 
{
	//關(guān)閉計(jì)時(shí)器
    KillTimer(ID_TIMER);
	//采集定時(shí)器標(biāo)志設(shè)為FALSE
    m_TCapture=FALSE;
	//如果現(xiàn)在不在實(shí)時(shí)發(fā)送數(shù)據(jù),
	//停止采集數(shù)據(jù),并關(guān)閉相關(guān)設(shè)備
	if(!m_RealSend)
		ClearDriver();
	//關(guān)閉采集文件
   	FILE_CLOSE(hmmioOutput);

	Ts=CTimeSpan(0,0,0,0);
	m_static.DestroyWindow();
	m_edit.DestroyWindow();
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
 	pFrame->m_wndStatusBar.SetPaneText(0,"停止采集");

}


void CPlayView::OnPauseCapture() 
{
	//關(guān)閉計(jì)時(shí)器
	KillTimer(ID_TIMER);
	//采集計(jì)時(shí)器標(biāo)志設(shè)為FALSE
    m_TCapture=FALSE;
	//暫停采集
	HVFPause(m_hVFDrv, m_bStream);
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"暫停采集");
	
}

void CPlayView::OnResumeCapture() 
{
	// TODO: Add your command handler code here
	//繼續(xù)采集
	HVFResume(m_hVFDrv, m_bStream);
	//采集計(jì)時(shí)器標(biāo)志設(shè)為T(mén)RUE
	m_TCapture=TRUE;
	//設(shè)定計(jì)時(shí)器
	SetTimer(ID_TIMER,1000,NULL);
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"");
	
}




void CPlayView::OnOpenPlayfile() 
{
	CString FTemp;	 	

	CFileDialog dlg(TRUE,NULL,NULL,NULL,"mpeg文件(*.mpg)|*.mpg|AVI文件(*.avi)|*.avi");
	dlg.m_ofn.lpstrTitle="打開(kāi)多媒體文件";
	//dlg.m_ofn.lpstrInitialDir="c:\\Windows\\Temp";
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	if(dlg.DoModal()==IDOK)
	{
	    Fname=dlg.GetPathName();
	   	FTemp.Format("播放:%s",Fname);
		pFrame->m_wndStatusBar.SetPaneText(0,"停止");
    	pFrame->m_wndStatusBar.SetPaneText(1,FTemp);
	} 	
}

void CPlayView::OnPlayfile() 
{
	// TODO: Add your command handler code here
	RECT Srct,Prct;
 	int width;
 	UINT Sid;
    UINT SStyle;
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	if(!pVideoPlay)
		pVideoPlay=new CVideoPlay(this->m_hWnd);
   	pFrame->m_wndStatusBar.SetPaneText(0,"播放");
 	pFrame->m_wndStatusBar.GetPaneInfo(0,Sid,SStyle,width);
 	::GetClientRect(pFrame->m_wndStatusBar.m_hWnd,&Srct);
    Prct.left=40;
 	Prct.top=4;
 	Prct.right=width;
 	Prct.bottom=Srct.bottom-1;
 	m_prog.Create(PBS_SMOOTH,Prct,&pFrame->m_wndStatusBar,ID_PROGRESS);
   	pVideoPlay->PlayFromFile(Fname);  
	m_prog.SetRange(0,(int)pVideoPlay->tLength);
    m_prog.ShowWindow(SW_SHOW);
	m_TPlayFile=TRUE;
 	SetTimer(ID_TIMER,1000,NULL);
}


LRESULT CPlayView::OnPlayOver(WPARAM wParam,LPARAM lParam)
{
	int status;
	status=pVideoPlay->PlayOver();
	if(status==0)
	{
		KillTimer(ID_TIMER);
		m_prog.DestroyWindow();
		CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
		pFrame->m_wndStatusBar.SetPaneText(0,"停止");
		Pos=0;
		Ts=CTimeSpan(0,0,0,0);
		m_TPlayFile=FALSE;
	}
	return 0;
}

void CPlayView::OnFileStop() 
{
	// TODO: Add your command handler code here
	KillTimer(ID_TIMER);
	m_prog.DestroyWindow();
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"停止");
    Pos=0;
    Ts=CTimeSpan(0,0,0,0);
	m_TPlayFile=FALSE;
	RELEASE_CVIDEOPLAY;
}

void CPlayView::OnRealplay() 
{
	// TODO: Add your command handler code here
	int i,MenuCount;
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
    pVideoPlay=new CVideoPlay(this->m_hWnd);
	pVideoPlay->RealPlay();
	pFrame->m_wndStatusBar.SetPaneText(0,"實(shí)時(shí)播放");
	pFrame->m_wndStatusBar.SetPaneText(1,"");
	CMenu* pSubMenu=PopMenu.GetSubMenu(0);
	MenuCount=pSubMenu->GetMenuItemCount();	
	for(i=0;i<2;i++)
		pSubMenu->EnableMenuItem(i,MF_ENABLED|MF_BYPOSITION); 
	
}

void CPlayView::OnRealStop() 
{
	// TODO: Add your command handler code here
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"");
	RELEASE_CVIDEOPLAY;
}

void CPlayView::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	CTimeSpan TsAdd(1);
	Ts=TsAdd+Ts;
	if(m_TPlayFile)
	{
		CString s1 =Ts.Format("已播放:%H:%M:%S");
		Pos=Pos+1;
		m_prog.SetPos(Pos);
		CDC* pControlDC=m_prog.GetDC();  
		CFont* pOldFont = (CFont*) pControlDC->SelectObject(&m_font); 
		//CPen* pOldPen =(CPen*) pControlDC->SelectObject(&Wpen);
		int iOld = pControlDC->GetBkMode();
		int iOldMode = pControlDC->GetROP2();
		pControlDC->SetROP2(R2_XORPEN);
		CRect rc;
		m_prog.GetClientRect(&rc);
		pControlDC->SetBkMode(TRANSPARENT);
		m_prog.Invalidate();
		m_prog.UpdateWindow();
		pControlDC->DrawText(s1, &rc, DT_CENTER | DT_VCENTER);
		pControlDC->SelectObject(pOldFont);
		pControlDC->SetROP2(iOldMode);
		pControlDC->SetBkMode(iOld);
		m_prog.ReleaseDC(pControlDC);
	}
	if(m_TCapture)
	{
		CString s2 =Ts.Format("%H:%M:%S");
		m_edit.SetWindowText(s2);
		if(m_TimeCheck)
		{
			m_TimeIndex++;
			if(m_TimeIndex==m_time+1)
			{
				OnStopCapture();
				MessageBox("采集時(shí)間到,停止采集");
				m_TimeCheck=FALSE;
				m_TimeIndex=0;
			}
		}
	}
	CView::OnTimer(nIDEvent);
}


void CPlayView::OnPausePlay() 
{
	// TODO: Add your command handler code here
	pVideoPlay->PausePlay();
	KillTimer(ID_TIMER);
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	pFrame->m_wndStatusBar.SetPaneText(0,"暫停");
}

void CPlayView::OnResumePlay() 
{
	// TODO: Add your command handler code here
	pVideoPlay->ResumePlay();
	SetTimer(ID_TIMER,1000,NULL);
	CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
    pFrame->m_wndStatusBar.SetPaneText(0,"播放");
}

void CPlayView::InitEncodeSystemVxD()
{
    HVFSet(m_hVFDrv, m_bStream, VF_INDEX_STM_TYPE, VF_FLAG_MPGSYS);
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_STM_ENCODEMODE, VF_FLAG_STM_NORMAL);
}




/////////////////////////////////////////////////////////////////////////////
// CMyEdit

IMPLEMENT_DYNAMIC(CMyEdit,CEdit)

CMyEdit::CMyEdit()
{
	m_clrFont =RGB(0 , 255 , 0) ;   // yellow text 

	m_clrBack=RGB(0 , 0 , 0) ;    // blue background 

	m_brush.CreateSolidBrush(m_clrBack); 

	m_font.CreatePointFont(90, "宋體");
}

CMyEdit::~CMyEdit()
{
}


BEGIN_MESSAGE_MAP(CMyEdit, CEdit)
	//{{AFX_MSG_MAP(CMyEdit)
	ON_WM_CREATE()
	ON_WM_CTLCOLOR_REFLECT()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMyEdit message handlers

int CMyEdit::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CEdit::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	SetFont(&m_font);
	return 0;
}

HBRUSH CMyEdit::CtlColor(CDC* pDC, UINT nCtlColor) 
{
	// TODO: Change any attributes of the DC here
	pDC->SetTextColor (m_clrFont); 
    pDC->SetBkMode(TRANSPARENT); 
    return (HBRUSH)m_brush.GetSafeHandle (); 

}


//配置音頻流的編碼信息
void CPlayView::InitEncodeAudioVxD()
{
    DWORD dwValue;
	//設(shè)置音頻的采樣率,取默認(rèn)值44100 kHz
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_SAMPLE, SAMPLE_RATE_DEFAULT);
	//設(shè)置音頻的比特率,取默認(rèn)值224000bits/s
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_BITRATE, BIT_RATE_DEFAULT);

	dwValue=VF_FLAG_AUD_MPEG;	
	dwValue=(dwValue<<16)+VF_FLAG_AUD_NONE;
	//設(shè)置音頻的壓縮算法,采用MPEG編碼
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_ALGORITHM, dwValue);
	//設(shè)置音頻方式,為立體聲
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_MODE, MODE_DEFAULT);
	//設(shè)置音頻的音量大小,取默認(rèn)值100
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_VOLUME, VOLUME_DEFAULT);
	//設(shè)置音頻電平,取默認(rèn)值0
	HVFSet(m_hVFDrv, m_bStream, VF_INDEX_AUD_GAIN, GAIN_DEFAULT);
}



BOOL CPlayView::OnEraseBkgnd(CDC* pDC) 
{
	// TODO: Add your message handler code here and/or call default
	// Create a pruple brush. 

	CBrush Brush (RGB (0,0,255) ); 
	CBrush* pOldBrush = pDC->SelectObject(&Brush); 
	CRect reClip ; 
	pDC->GetClipBox(&reClip); 
	pDC->PatBlt (reClip.left , reClip.top , 
    reClip.Width ( ) , reClip.Height ( ) , PATCOPY ); 
	pDC->SelectObject (pOldBrush ); 
	return TRUE; 

}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精选在线播放| 日韩毛片在线免费观看| 91精品在线免费观看| 在线精品观看国产| 在线看国产一区| 欧美性猛片xxxx免费看久爱| 色综合av在线| 欧美艳星brazzers| 91精品欧美久久久久久动漫| 欧美一区二区女人| 精品国产乱码久久久久久浪潮| 91麻豆精品国产91久久久久久久久| 91.麻豆视频| 欧美成人一区二区三区| www国产亚洲精品久久麻豆| 久久免费午夜影院| 国产三级精品三级| 国产精品国产自产拍高清av| 亚洲人成影院在线观看| 亚洲精品免费播放| 午夜欧美大尺度福利影院在线看| 五月激情综合色| 国内精品免费**视频| 国产精品一区专区| 播五月开心婷婷综合| 91福利国产精品| 欧美三级欧美一级| 日韩女优av电影| 国产精品系列在线| 亚洲激情网站免费观看| 美女高潮久久久| 大桥未久av一区二区三区中文| 91在线视频免费91| 7777精品伊人久久久大香线蕉完整版| 日韩美一区二区三区| 国产精品久久福利| 日日摸夜夜添夜夜添精品视频| 国产一区久久久| 91免费视频网址| 日韩欧美色综合网站| 欧美国产视频在线| 亚洲第一精品在线| 激情综合色综合久久| 色综合婷婷久久| 欧美xxxxxxxx| 亚洲日本在线天堂| 久久精品国内一区二区三区| 99精品一区二区| 91麻豆精品国产自产在线观看一区 | 91精品国模一区二区三区| 久久综合资源网| 亚洲男人的天堂一区二区| 久久成人久久爱| 一本一道综合狠狠老| 日韩视频在线你懂得| 国产精品乱人伦中文| 日韩精品乱码免费| 99re热这里只有精品免费视频| 欧美一三区三区四区免费在线看| 国产精品久久久久久久久快鸭 | 日本中文字幕不卡| 成人精品国产福利| 91精品一区二区三区在线观看| 中文字幕一区视频| 韩国av一区二区| 欧美三级电影网| 国产精品福利影院| 国产一区二区中文字幕| 欧美美女直播网站| 亚洲人成网站在线| 国产精品一卡二| 日韩一区二区在线观看视频播放| 亚洲人成网站精品片在线观看| 色网站国产精品| 久久久久久久久久电影| 偷拍与自拍一区| 亚洲天堂网中文字| 午夜精品免费在线| 99国产精品视频免费观看| 精品美女在线播放| 免费在线观看一区二区三区| 色综合天天做天天爱| 国产女同互慰高潮91漫画| 日韩不卡手机在线v区| 在线观看91精品国产入口| 中文字幕欧美日本乱码一线二线| 青青草原综合久久大伊人精品优势| 91国模大尺度私拍在线视频| 国产精品乱人伦一区二区| 狠狠网亚洲精品| 日韩女优毛片在线| 亚洲超碰精品一区二区| 91免费在线播放| 亚洲日本免费电影| 91丨porny丨户外露出| 国产精品免费视频网站| 国产精品亚洲а∨天堂免在线| 日韩欧美国产综合在线一区二区三区| 午夜视黄欧洲亚洲| 欧美性猛交xxxxxx富婆| 亚洲欧美视频一区| 91美女在线视频| √…a在线天堂一区| www.日韩大片| 日韩毛片在线免费观看| 色婷婷一区二区三区四区| 亚洲女人的天堂| 91成人在线观看喷潮| 一区二区三区不卡视频| 97精品国产97久久久久久久久久久久 | 欧美日韩亚洲另类| 亚洲午夜av在线| 欧美日韩精品一二三区| 亚洲成人三级小说| 91.麻豆视频| 精品一区二区在线观看| 久久影院视频免费| 成人激情图片网| 亚洲欧美一区二区三区久本道91| 色综合久久99| 午夜日韩在线观看| 精品va天堂亚洲国产| 成人免费毛片片v| 亚洲天天做日日做天天谢日日欢 | 日本韩国一区二区| 亚洲国产一区二区视频| 欧美一区二区三区视频| 国产制服丝袜一区| 中文字幕中文在线不卡住| 一本到高清视频免费精品| 亚洲va韩国va欧美va| 欧美刺激午夜性久久久久久久| 国产一区二区在线免费观看| 成人免费一区二区三区视频 | 中文字幕不卡三区| 91免费精品国自产拍在线不卡| 亚洲永久精品国产| 欧美一区二区人人喊爽| 国产激情视频一区二区三区欧美| 中文字幕中文字幕中文字幕亚洲无线| 色综合一区二区三区| 老司机免费视频一区二区三区| 国产精品理论在线观看| 欧美视频一区在线| 国产一区 二区| 亚洲激情第一区| 精品福利av导航| 91网站黄www| 看电影不卡的网站| 亚洲色图丝袜美腿| 日韩欧美精品三级| 色综合久久天天| 激情文学综合丁香| 亚洲在线视频网站| 国产喂奶挤奶一区二区三区| 欧美性淫爽ww久久久久无| 国产一区二区三区久久久| 亚洲制服丝袜一区| 亚洲国产高清aⅴ视频| 欧美一区在线视频| 色94色欧美sute亚洲线路一久| 国产揄拍国内精品对白| 亚洲在线免费播放| 中文字幕制服丝袜成人av | 奇米777欧美一区二区| 国产精品网站在线| 日韩美一区二区三区| 欧洲一区二区三区在线| 国产999精品久久久久久绿帽| 亚洲成人免费看| 1000精品久久久久久久久| 久久亚洲一区二区三区明星换脸| 欧美午夜影院一区| av在线一区二区| 国产精品一区二区久久不卡| 日韩高清在线电影| 亚洲欧美在线高清| 国产无人区一区二区三区| 精品少妇一区二区三区日产乱码| 欧美亚洲国产一区二区三区va| 不卡视频一二三| 国产成人av一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲午夜免费福利视频| 亚洲男同1069视频| 中文字幕av资源一区| 久久久99久久| 日韩精品一区二区三区四区| 欧美人妇做爰xxxⅹ性高电影| 色婷婷综合在线| 一本一道久久a久久精品| 麻豆国产欧美一区二区三区| 性欧美疯狂xxxxbbbb| 亚洲精品视频在线观看网站| 国产精品青草久久| 国产日产欧产精品推荐色| 精品美女一区二区| 久久嫩草精品久久久精品一| 26uuu国产在线精品一区二区| 欧美成人精品1314www|