日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第6季2:基于RTSP协议的实时视频流传输的源码分析

發布時間:2024/1/1 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第6季2:基于RTSP协议的实时视频流传输的源码分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

以下內容源于朱有鵬嵌入式課程的學習與整理,如有侵權請告知刪除。

前言

博文第一季2:HI3518EV200的初體驗中,所提供的測試文件sample_venc實現了基于RTSP協議的實時視頻流傳輸功能。當時直接提供了二進制文件,現在我們來分析其對應的源碼文件。

“基于RTSP協議的實時視頻流傳輸”,以下統一簡稱“RTSP視頻傳輸”。

一、RTSP視頻傳輸實驗

(1)將上面提到的源碼文件解壓到虛擬機的mpp/目錄,并修改名字為sample_rtsp_ar0130(只是為了辨認方便)。

root@ubuntu:/home/xjh/iot/hisi_development/Hi3518E_SDK/Hi3518E_SDK_V1.0.3.0/mpp/sample_rtsp_ar0130# ls audio common hifb ive Makefile Makefile.param readme region scene_auto tde venc vio root@ubuntu:/home/xjh/iot/hisi_development/Hi3518E_SDK/Hi3518E_SDK_V1.0.3.0/mpp/sample_rtsp_ar0130#

(2)在mpp/sample_rtsp_ar0130/venc目錄下執行make。

(3)接下來與第一季2:HI3518EV200的初體驗中第一節第7點的(2)(3)一致,不再贅述。

二、源碼分析

RTSP視頻傳輸源碼,是基于海思SDK的sample_venc.c來編寫的,主要修改sample_venc.c文件、sample_comm_venc.c文件。后續可以對比兩個sample的內容,深化對流程的理解。

1、函數調用關系

利用SI軟件建立上述源碼的工程,然后在sample_venc.c文件中找到main函數并分析調用情況:

mainRtspServer_init //VLC是客服端,HI3518E當做RTSP服務器,后者肯定要先運行起來RtspServerListen //線程RtspClientMsg//線程,針對每個客戶端的線程ParseRequestString//解析消息頭vdRTPSendThread //線程,有賴于RtspServer_init的內容,這里是傳輸數據VENC_Sent//真正發送的函數SAMPLE_VENC_720P_CLASSICSAMPLE_COMM_VENC_StartGetStream//和之前sample不同的地方SAMPLE_COMM_VENC_Sentjin//rtsp的發送VENC_Sent//真正發送的函數

2、分析RtspServer_init函數

(1)RtspServer_init函數內容如下。

void RtspServer_init(void) {int i;pthread_t threadId = 0;memset(&g_rtp_playload,0,sizeof(g_rtp_playload));strcpy(&g_rtp_playload,"G726-32");g_audio_rate = 8000;pthread_mutex_init(&g_sendmutex,NULL);pthread_mutex_init(&g_mutex,NULL);pthread_cond_init(&g_cond,NULL);//g_rtspClients用來存儲一些客戶端的信息memset(&g_rtspClients,0,sizeof(RTSP_CLIENT)*MAX_RTSP_CLIENT);//pthread_create(&g_SendDataThreadId, NULL, SendDataThread, NULL);struct sched_param thdsched;thdsched.sched_priority = 2;//定義線程優先級//to listen visitingpthread_create(&threadId, NULL, RtspServerListen, NULL);//pthread_setschedparam(threadId,SCHED_RR,&thdsched);printf("RTSP:-----Init Rtsp server\n");pthread_create(&gs_RtpPid, 0, vdRTPSendThread, NULL);//exitok++;}

(2)RtspServerListen函數的內容與分析

void * RtspServerListen(void*pParam) {int s32Socket;struct sockaddr_in servaddr;int s32CSocket;int s32Rtn;int s32Socket_opt_value = 1;int nAddrLen;struct sockaddr_in addrAccept;int bResult;memset(&servaddr, 0, sizeof(servaddr));servaddr.sin_family = AF_INET;servaddr.sin_addr.s_addr = htonl(INADDR_ANY);servaddr.sin_port = htons(RTSP_SERVER_PORT); //554,所以VLC設置那里端口也是554s32Socket = socket(AF_INET, SOCK_STREAM, 0);//這里使用TCPif (setsockopt(s32Socket ,SOL_SOCKET,SO_REUSEADDR,&s32Socket_opt_value,sizeof(int)) == -1) //設置一些屬性 {return (void *)(-1);}s32Rtn = bind(s32Socket, (struct sockaddr *)&servaddr, sizeof(struct sockaddr_in));if(s32Rtn < 0){return (void *)(-2);}s32Rtn = listen(s32Socket, 50); if(s32Rtn < 0){return (void *)(-2);}nAddrLen = sizeof(struct sockaddr_in);int nSessionId = 1000;while ((s32CSocket = accept(s32Socket, (struct sockaddr*)&addrAccept, &nAddrLen)) >= 0)//accept是阻塞的,然后等待客服端的連接,連接上了就執行下面內容{printf("<<<<RTSP Client %s Connected...\n", inet_ntoa(addrAccept.sin_addr));int nMaxBuf = 10 * 1024; // 脧碌脥魯艙蘆祿謾路脰脜盲 2 x nMaxBuf 碌脛祿潞魯氓漚貿脨隆if(setsockopt(s32CSocket, SOL_SOCKET, SO_SNDBUF, (char*)&nMaxBuf, sizeof(nMaxBuf)) == -1)printf("RTSP:!!!!!! Enalarge socket sending buffer error !!!!!!\n");int i;int bAdd=FALSE;for(i=0;i<MAX_RTSP_CLIENT;i++){if(g_rtspClients[i].status == RTSP_IDLE){memset(&g_rtspClients[i],0,sizeof(RTSP_CLIENT));g_rtspClients[i].index = i;g_rtspClients[i].socket = s32CSocket;g_rtspClients[i].status = RTSP_CONNECTED ;//RTSP_SENDING;g_rtspClients[i].sessionid = nSessionId++;strcpy(g_rtspClients[i].IP,inet_ntoa(addrAccept.sin_addr));pthread_t threadIdlsn = 0;struct sched_param sched;sched.sched_priority = 1;//to return ACKechopthread_create(&threadIdlsn, NULL, RtspClientMsg, &g_rtspClients[i]);//pthread_setschedparam(threadIdlsn,SCHED_RR,&sched);bAdd = TRUE;break;}}if(bAdd==FALSE){memset(&g_rtspClients[0],0,sizeof(RTSP_CLIENT));g_rtspClients[0].index = 0;g_rtspClients[0].socket = s32CSocket;g_rtspClients[0].status = RTSP_CONNECTED ;//RTSP_SENDING;g_rtspClients[0].sessionid = nSessionId++;strcpy(g_rtspClients[0].IP,inet_ntoa(addrAccept.sin_addr));pthread_t threadIdlsn = 0;struct sched_param sched;sched.sched_priority = 1;//to return ACKechopthread_create(&threadIdlsn, NULL, RtspClientMsg, &g_rtspClients[0]);//pthread_setschedparam(threadIdlsn,SCHED_RR,&sched);bAdd = TRUE;}//if(exitok){ exitok++;return NULL; } }if(s32CSocket < 0){// HI_OUT_Printf(0, "RTSP listening on port %d,accept err, %d\n", RTSP_SERVER_PORT, s32CSocket);}printf("----- INIT_RTSP_Listen() Exit !! \n");return NULL; }

(3)RtspClientMsg函數內容與分析

void * RtspClientMsg(void*pParam) {pthread_detach(pthread_self());//讓線程自己回收自己int nRes;char pRecvBuf[RTSP_RECV_SIZE];RTSP_CLIENT * pClient = (RTSP_CLIENT*)pParam;//由傳參而來memset(pRecvBuf,0,sizeof(pRecvBuf));printf("RTSP:-----Create Client %s\n",pClient->IP);while(pClient->status != RTSP_IDLE)//肯定不等于idle{nRes = recv(pClient->socket, pRecvBuf, RTSP_RECV_SIZE,0);//printf("-------------------%d\n",nRes);if(nRes < 1)//沒有讀到數據的異常情況{//usleep(1000);printf("RTSP:Recv Error--- %d\n",nRes);g_rtspClients[pClient->index].status = RTSP_IDLE;g_rtspClients[pClient->index].seqnum = 0;g_rtspClients[pClient->index].tsvid = 0;g_rtspClients[pClient->index].tsaud = 0;close(pClient->socket);break;}char cmdName[PARAM_STRING_MAX];char urlPreSuffix[PARAM_STRING_MAX];char urlSuffix[PARAM_STRING_MAX];char cseq[PARAM_STRING_MAX]; ParseRequestString(pRecvBuf,nRes,cmdName,sizeof(cmdName),urlPreSuffix,sizeof(urlPreSuffix),urlSuffix,sizeof(urlSuffix),cseq,sizeof(cseq));char *p = pRecvBuf;printf("<<<<<%s\n",p);//printf("\--------------------------\n");//printf("%s %s\n",urlPreSuffix,urlSuffix);if(strstr(cmdName, "OPTIONS")){OptionAnswer(cseq,pClient->socket);}else if(strstr(cmdName, "DESCRIBE")){DescribeAnswer(cseq,pClient->socket,urlSuffix,p);//printf("-----------------------------DescribeAnswer %s %s\n",// urlPreSuffix,urlSuffix);}else if(strstr(cmdName, "SETUP")){int rtpport,rtcpport;int trackID=0;SetupAnswer(cseq,pClient->socket,pClient->sessionid,urlPreSuffix,p,&rtpport,&rtcpport);sscanf(urlSuffix, "trackID=%u", &trackID);//printf("----------------------------------------------TrackId %d\n",trackID);if(trackID<0 || trackID>=2)trackID=0;g_rtspClients[pClient->index].rtpport[trackID] = rtpport;g_rtspClients[pClient->index].rtcpport= rtcpport;g_rtspClients[pClient->index].reqchn = atoi(urlPreSuffix);if(strlen(urlPreSuffix)<100)strcpy(g_rtspClients[pClient->index].urlPre,urlPreSuffix);//printf("-----------------------------SetupAnswer %s-%d-%d\n",// urlPreSuffix,g_rtspClients[pClient->index].reqchn,rtpport);}else if(strstr(cmdName, "PLAY")){PlayAnswer(cseq,pClient->socket,pClient->sessionid,g_rtspClients[pClient->index].urlPre,p);g_rtspClients[pClient->index].status = RTSP_SENDING;printf("Start Play\n",pClient->index);//printf("-----------------------------PlayAnswer %d %d\n",pClient->index);//usleep(100);}else if(strstr(cmdName, "PAUSE")){PauseAnswer(cseq,pClient->socket,p);}else if(strstr(cmdName, "TEARDOWN")){TeardownAnswer(cseq,pClient->socket,pClient->sessionid,p);g_rtspClients[pClient->index].status = RTSP_IDLE;g_rtspClients[pClient->index].seqnum = 0;g_rtspClients[pClient->index].tsvid = 0;g_rtspClients[pClient->index].tsaud = 0;close(pClient->socket);}//if(exitok){ exitok++;return NULL; } }printf("RTSP:-----Exit Client %s\n",pClient->IP);return NULL; }

(4)ParseRequestString函數的內容與分析

int ParseRequestString(char const* reqStr,unsigned reqStrSize,char* resultCmdName,unsigned resultCmdNameMaxSize,char* resultURLPreSuffix,unsigned resultURLPreSuffixMaxSize,char* resultURLSuffix,unsigned resultURLSuffixMaxSize,char* resultCSeq,unsigned resultCSeqMaxSize) {// This parser is currently rather dumb; it should be made smarter #####// Read everything up to the first space as the command name:int parseSucceeded = FALSE;unsigned i;for (i = 0; i < resultCmdNameMaxSize-1 && i < reqStrSize; ++i) {char c = reqStr[i];if (c == ' ' || c == '\t') {parseSucceeded = TRUE;break;}resultCmdName[i] = c;}resultCmdName[i] = '\0';if (!parseSucceeded) return FALSE;// Skip over the prefix of any "rtsp://" or "rtsp:/" URL that follows:unsigned j = i+1;while (j < reqStrSize && (reqStr[j] == ' ' || reqStr[j] == '\t')) ++j; // skip over any additional white spacefor (j = i+1; j < reqStrSize-8; ++j) {if ((reqStr[j] == 'r' || reqStr[j] == 'R')&& (reqStr[j+1] == 't' || reqStr[j+1] == 'T')&& (reqStr[j+2] == 's' || reqStr[j+2] == 'S')&& (reqStr[j+3] == 'p' || reqStr[j+3] == 'P')&& reqStr[j+4] == ':' && reqStr[j+5] == '/') {j += 6;if (reqStr[j] == '/') {// This is a "rtsp://" URL; skip over the host:port part that follows:++j;while (j < reqStrSize && reqStr[j] != '/' && reqStr[j] != ' ') ++j;} else {// This is a "rtsp:/" URL; back up to the "/":--j;}i = j;break;}}// Look for the URL suffix (before the following "RTSP/"):parseSucceeded = FALSE;unsigned k;for (k = i+1; k < reqStrSize-5; ++k) {if (reqStr[k] == 'R' && reqStr[k+1] == 'T' &&reqStr[k+2] == 'S' && reqStr[k+3] == 'P' && reqStr[k+4] == '/') {while (--k >= i && reqStr[k] == ' ') {} // go back over all spaces before "RTSP/"unsigned k1 = k;while (k1 > i && reqStr[k1] != '/' && reqStr[k1] != ' ') --k1;// the URL suffix comes from [k1+1,k]// Copy "resultURLSuffix":if (k - k1 + 1 > resultURLSuffixMaxSize) return FALSE; // there's no roomunsigned n = 0, k2 = k1+1;while (k2 <= k) resultURLSuffix[n++] = reqStr[k2++];resultURLSuffix[n] = '\0';// Also look for the URL 'pre-suffix' before this:unsigned k3 = --k1;while (k3 > i && reqStr[k3] != '/' && reqStr[k3] != ' ') --k3;// the URL pre-suffix comes from [k3+1,k1]// Copy "resultURLPreSuffix":if (k1 - k3 + 1 > resultURLPreSuffixMaxSize) return FALSE; // there's no roomn = 0; k2 = k3+1;while (k2 <= k1) resultURLPreSuffix[n++] = reqStr[k2++];resultURLPreSuffix[n] = '\0';i = k + 7; // to go past " RTSP/"parseSucceeded = TRUE;break;}}if (!parseSucceeded) return FALSE;// Look for "CSeq:", skip whitespace,// then read everything up to the next \r or \n as 'CSeq':parseSucceeded = FALSE;for (j = i; j < reqStrSize-5; ++j) {if (reqStr[j] == 'C' && reqStr[j+1] == 'S' && reqStr[j+2] == 'e' &&reqStr[j+3] == 'q' && reqStr[j+4] == ':') {j += 5;unsigned n;while (j < reqStrSize && (reqStr[j] == ' ' || reqStr[j] == '\t')) ++j;for (n = 0; n < resultCSeqMaxSize-1 && j < reqStrSize; ++n,++j) {char c = reqStr[j];if (c == '\r' || c == '\n') {parseSucceeded = TRUE;break;}resultCSeq[n] = c;}resultCSeq[n] = '\0';break;}}if (!parseSucceeded) return FALSE;return TRUE; }

3、分析vdRTPSendThread函數

(1)vdRTPSendThread函數的內容如下:

HI_VOID* vdRTPSendThread(HI_VOID *p) {while(1){if(!list_empty(&RTPbuf_head)){RTPbuf_s *p = get_first_item(&RTPbuf_head,RTPbuf_s,list);VENC_Sent(p->buf,p->len);list_del(&(p->list));free(p->buf);free(p);p = NULL;count--;//printf("count = %d\n",count);}usleep(5000);} }

總結

以上是生活随笔為你收集整理的第6季2:基于RTSP协议的实时视频流传输的源码分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

91高清免费| 黄色天堂在线观看 | 欧美99精品 | 亚洲精品乱码久久久一二三 | 中文字幕一区二区三区精华液 | 欧美 日韩 国产 成人 在线 | 日本69hd | 一级α片免费看 | 国产福利久久 | 免费看色网站 | 亚洲女裸体 | 91亚洲精 | 精品国产一区二区三区四区vr | 日韩大片在线 | 在线观看日韩中文字幕 | 18女毛片 | 精品国内自产拍在线观看视频 | 中文字幕乱码电影 | 免费在线观看一区二区三区 | 成人黄色电影在线 | 高清免费在线视频 | 亚一亚二国产专区 | 国产精品久久99综合免费观看尤物 | 日本爱爱免费视频 | 久久精品男人的天堂 | 91桃色在线观看视频 | 亚洲国产日韩av | 亚洲国产免费网站 | 欧美日韩视频在线播放 | 国产精品欧美一区二区 | 999久久a精品合区久久久 | 国产精品久久久久久a | 操操操日日日干干干 | 在线观看视频国产一区 | 国产精品一区在线播放 | 亚洲毛片一区二区三区 | 麻豆免费在线视频 | 久久久久五月天 | 97在线观看 | 97色婷婷成人综合在线观看 | 亚洲成人黄色在线观看 | 亚洲视频资源在线 | 国产精品99蜜臀久久不卡二区 | 一区二区三区在线播放 | 五月婷婷六月丁香在线观看 | 成人97视频一区二区 | 香蕉视频网址 | 天天操夜操视频 | 国语精品免费视频 | 一级精品视频在线观看宜春院 | 日本中文乱码卡一卡二新区 | 国产精品午夜久久 | 97在线公开视频 | 国产一级a毛片视频爆浆 | 少妇视频在线播放 | 精品久久久久国产免费第一页 | 婷婷精品国产一区二区三区日韩 | 亚洲精品乱码白浆高清久久久久久 | 五月天免费网站 | 欧美性色网站 | 亚洲成人第一区 | 国产色中涩 | 中文字幕中文字幕在线一区 | 高清av不卡 | 亚洲欧洲av | 18国产精品白浆在线观看免费 | 成人97人人超碰人人99 | 国产自制av| 综合色久 | 日本久久精品 | 久久视频这里有久久精品视频11 | 国产精品永久在线 | 久草在线在线视频 | 在线日韩av| 久久精品国产第一区二区三区 | www178ccom视频在线 | 午夜黄色 | 成人资源在线播放 | 最近日韩中文字幕中文 | 麻豆91在线| 尤物九九久久国产精品的分类 | 久久久综合九色合综国产精品 | 99精品国产成人一区二区 | 亚洲日本一区二区在线 | 久久免费激情视频 | 国产中年夫妇高潮精品视频 | 伊人成人激情 | 亚洲国产影院av久久久久 | 欧美久久成人 | 日日干精品 | 免费毛片aaaaaa | 国产视频精品在线 | 一区二区三区在线视频111 | 99热这里只有精品1 av中文字幕日韩 | 黄色大片免费播放 | 人人澡超碰碰 | 亚洲人成在线电影 | 一区二区三区国产欧美 | 成人性生交大片免费观看网站 | 欧美日韩精品网站 | 国产精品18久久久 | 国产在线观看二区 | 欧美一级在线观看视频 | 国产裸体永久免费视频网站 | 日韩成人看片 | 久久久久国产免费免费 | 午夜视频在线网站 | 婷婷丁香久久五月婷婷 | 69热国产视频 | 深爱五月激情五月 | 久久天天操 | 色欧美88888久久久久久影院 | 91看片淫黄大片91 | 亚洲综合在线五月天 | 国产亚洲永久域名 | 免费亚洲一区二区 | 日韩久久片 | 园产精品久久久久久久7电影 | 国产综合激情 | 激情欧美一区二区三区免费看 | 伊人狠狠操 | 91你懂的| 激情偷乱人伦小说视频在线观看 | 99麻豆久久久国产精品免费 | 亚洲黄色在线观看 | 中文字幕在线视频国产 | 国产精品一区二区三区久久久 | 中文字幕4 | 欧美日韩国产综合一区二区 | 久久精品亚洲国产 | 亚洲色视频 | 麻豆传媒视频在线播放 | 自拍超碰在线 | 天天天操天天天干 | www.com操| 久久天天综合网 | 精品在线播放 | 在线国产91 | 九九久久免费视频 | 欧美精品亚洲精品日韩精品 | 欧美性黑人 | 涩涩成人在线 | 大胆欧美gogo免费视频一二区 | 人人爽人人片 | 中文字幕免费在线 | 久久精品小视频 | 97精品电影院 | 亚洲一区二区视频 | 久免费视频| 国产免费高清视频 | 黄色软件视频大全免费下载 | 国产剧情av在线播放 | 久久av中文字幕片 | av在线播放快速免费阴 | 久久a v视频 | 中文日韩在线视频 | 欧美亚洲免费在线一区 | 在线看成人片 | 久久久久久久久毛片精品 | 亚洲国产精品一区二区久久,亚洲午夜 | 国产精品久久久久久久久久ktv | 久久精品视频观看 | 日本字幕网 | 亚洲五月婷婷 | 欧美 日韩 成人 | 自拍超碰在线 | 国产专区精品视频 | 国产精品mv在线观看 | 在线观看日本高清mv视频 | 久久精品之 | 波多野结衣精品 | 丁香花在线观看免费完整版视频 | 精品国产综合区久久久久久 | 99精品视频播放 | 午夜久久影视 | 色婷婷www | 日日干天天| 蜜臀av性久久久久蜜臀aⅴ涩爱 | 国产在线精品一区 | 久久久久久国产精品亚洲78 | 四虎www | 不卡av在线 | 国产免费成人 | 97超碰在线免费观看 | 中文字幕电影高清在线观看 | 亚洲视频免费在线观看 | 欧美午夜激情网 | 精品日韩中文字幕 | 国产一区在线观看免费 | 国语麻豆| 操一草 | www.狠狠干| 黄色小说免费在线观看 | 亚洲 在线 | 日韩国产精品久久久久久亚洲 | 成人av资源在线 | 亚洲电影影音先锋 | 国产在线国偷精品产拍免费yy | 日韩黄视频 | 99视频在线免费观看 | 久草在线欧美 | 亚洲砖区区免费 | 国产在线视频一区 | 久久综合成人 | 夜夜夜夜爽 | 久久午夜网 | 国产91精品在线观看 | 激情影音 | 91资源在线视频 | 精品久久毛片 | 免费福利影院 | 国模一区二区三区四区 | 丁香国产视频 | 国产精品自在欧美一区 | 久久免费电影网 | 国产精品国产三级国产不产一地 | 国产精品久久久 | 精品国产乱码久久久久久久 | 日韩欧美国产视频 | 亚洲精品视频久久 | 久久99九九99精品 | 在线天堂中文www视软件 | 99久高清在线观看视频99精品热在线观看视频 | 成人免费视频免费观看 | 安徽妇搡bbbb搡bbbb | 狠狠狠狠狠狠天天爱 | 免费在线播放黄色 | 97精品国产97久久久久久粉红 | 中文字幕久久精品亚洲乱码 | 久久69av| 夜色资源站wwwcom | 久久男女视频 | 亚洲黄色在线看 | 国产精品久久久久久69 | 国产精品久久久久久久久久99 | 国际精品久久久久 | 亚洲高清av在线 | 亚洲最快最全在线视频 | 中文字幕有码在线播放 | 国产一级片免费观看 | 成人a视频片观看免费 | 亚洲免费视频在线观看 | 国产精品情侣视频 | 欧美一级艳片视频免费观看 | 国产色拍拍拍拍在线精品 | 国产视频一二区 | 欧美日韩3p | 天天夜夜操 | 久久久九九 | 美女黄频在线观看 | 中文字幕在线视频国产 | 青草视频网 | 免费性网站 | 夜夜夜| 天天做天天射 | 玖玖玖在线| 欧美一区二区日韩一区二区 | 亚洲激情 欧美激情 | av在线网站大全 | 手机在线免费av | 日韩精品久久中文字幕 | 国产精品第二页 | 亚洲jizzjizz日本少妇 | 国产日产精品久久久久快鸭 | 免费看国产一级片 | 狠狠色噜噜狠狠狠狠2021天天 | 香蕉久草在线 | 高清在线一区 | 久久线视频 | 在线视频 你懂得 | 国产精品久久久久久电影 | 久久91久久久久麻豆精品 | 久久久国产精品一区二区三区 | 狠狠天天 | 久久视频在线观看免费 | 欧美做受69 | 午夜精品久久久久久久久久久久久久 | 公开超碰在线 | 五月天综合激情 | 最近日韩中文字幕中文 | 综合影视| 丁香婷婷激情国产高清秒播 | 91久久人澡人人添人人爽欧美 | 成人h视频在线 | 精品欧美乱码久久久久久 | 在线日本v二区不卡 | 一区二区电影在线观看 | 在线中文字母电影观看 | 视频国产在线观看18 | 91视频免费 | 成人av视屏 | 久草国产在线 | 欧美久久久久久久久 | 免费看污在线观看 | 天天操夜夜叫 | 人人藻人人澡人人爽 | 欧美日韩精品免费观看视频 | 国产精品九九九九九九 | 欧美一区日韩精品 | 精品女同一区二区三区在线观看 | 久久看片网 | 日本久久影视 | 亚洲精品乱码久久久久久 | 9999免费视频| 日韩av不卡在线观看 | wwwav视频| 免费在线91| www.91国产| 91高清视频免费 | 亚洲精品乱码久久久久久写真 | 2023av| 亚洲精品永久免费视频 | 天天色天天草天天射 | 亚洲欧美成人在线 | 丁香六月婷婷开心婷婷网 | 激情视频免费在线 | 成人免费网站视频 | 免费a网址 | 玖草影院| 国产第一二区 | 国产精品免费一区二区三区在线观看 | 久久精品福利 | 免费观看国产精品视频 | 久久亚洲福利视频 | 天天爱综合 | 亚洲jizzjizz日本少妇 | 狠狠黄 | 免费中文字幕 | 久久国产精品电影 | 国产精品久久久久久久久久久免费 | 狠狠色噜噜狠狠狠狠2021天天 | 免费在线观看av网址 | 成人三级黄色 | 精品国产1区2区3区 国产欧美精品在线观看 | 免费看久久久 | 蜜臀久久99精品久久久无需会员 | 日韩乱理 | 免费黄色激情视频 | 欧美热久久 | 国产精品毛片久久久 | 久草在线播放视频 | 亚洲国产三级在线观看 | 国产99久久九九精品免费 | 成人网色 | 婷婷av在线 | 国产亚洲免费的视频看 | 国产精品麻豆欧美日韩ww | 久草在线在线视频 | 色a综合| av在线在线| 日韩电影在线观看中文字幕 | 久久精品二区 | 欧美日韩免费一区二区 | 国产午夜视频在线观看 | 99在线免费视频 | 日韩在线观看视频网站 | 久久精品视频在线免费观看 | 久久国产手机看片 | 国产精品一区二区在线播放 | 91福利视频在线 | 国产伦精品一区二区三区在线 | 91在线91拍拍在线91 | 欧美热久久 | 国产亚洲精品xxoo | 五月婷婷操 | 免费视频在线观看网站 | 综合久久精品 | 精品久久久久久国产 | 久久免费视频这里只有精品 | 91黄色小视频 | 亚州欧美视频 | av成人资源| 五月婷婷在线综合 | 亚洲精品免费观看 | 亚洲91视频 | 久久高清片 | 国产欧美久久久精品影院 | 超碰免费观看 | 手机成人免费视频 | 国产精品正在播放 | 国产精品18久久久久久久网站 | 91福利视频免费观看 | 国产一区视频在线观看免费 | www.一区二区三区 | 国产69精品久久久久久 | 日韩免费电影 | 九九热99视频| 在线电影91| 精品一区中文字幕 | 伊人亚洲精品 | 亚洲一区 影院 | 国产成人久 | 久久视频免费在线 | 久久视讯 | 国产一级视频 | 欧美精品乱码久久久久久 | 国产精品午夜在线 | 深夜男人影院 | 人人干干人人 | 亚洲黄色软件 | 欧美成人基地 | 亚洲精品www久久久久久 | 香蕉视频4aa | 国产精品久久久久久久久久久免费看 | 亚洲一级电影 | 91精品欧美一区二区三区 | 日韩肉感妇bbwbbwbbw | 人人草人 | 狠狠撸电影 | 亚洲一二三在线 | 国产成人av一区二区三区在线观看 | 久久毛片网 | 精品国产伦一区二区三区观看体验 | 六月天综合网 | www.色爱 | 国内99视频| 97在线资源 | 狠狠的干 | 欧美一区二区免费在线观看 | 91精品国产麻豆国产自产影视 | 在线日本v二区不卡 | 婷婷.com| 精品国产一区二区三区四区vr | 在线观看黄色的网站 | 日韩簧片在线观看 | 99re在线视频观看 | av官网在线 | 91视频 - x99av | av在线a| 国产精品九九九九九 | 91网在线观看 | 日韩性片 | 又长又大又黑又粗欧美 | 中文字幕在线看人 | 精品国产伦一区二区三区观看方式 | 久久影院一区 | 国产精品专区在线观看 | 午夜久久福利视频 | 欧美一区二区三区四区夜夜大片 | 黄色毛片在线 | 国产精品美女久久久久久久 | 98福利在线| 精品一区精品二区高清 | 色婷婷99| 精品在线视频一区二区三区 | 国内丰满少妇猛烈精品播放 | 中文字幕日韩国产 | 国产精品入口66mio女同 | 精品在线观看免费 | 亚洲国产精品一区二区久久,亚洲午夜 | 一级理论片在线观看 | 成人一区不卡 | 99久久99久久综合 | 日韩乱码在线 | 午夜在线免费观看 | www.黄色| 亚洲精品视频免费看 | bbbbb女女女女女bbbbb国产 | .国产精品成人自产拍在线观看6 | av中文在线 | 久久久香蕉视频 | 欧美在线aa | 亚洲乱码一区 | 一级片免费视频 | 久久久久激情 | 久久久久亚洲精品国产 | 精品久久久久久久久亚洲 | 在线观看岛国片 | 久久精品99久久久久久2456 | 中午字幕在线观看 | 福利视频入口 | 午夜精品一区二区三区免费 | 免费观看一区 | 亚洲人成人天堂h久久 | 欧美在线观看禁18 | av大片免费看 | 97视频免费在线看 | 人人干人人干人人干 | 91免费在线播放 | 欧美日韩国产二区三区 | 日韩国产精品久久久久久亚洲 | 国产精品久久一区二区三区, | 欧美午夜久久 | 国产高清免费av | 久久视精品 | 高清一区二区三区av | 欧美在线观看视频免费 | 国产精品黄色在线观看 | www..com黄色片| 日韩欧美91 | 日韩精品一区在线播放 | 激情五月婷婷激情 | 欧美日本中文字幕 | 亚洲日本色 | 国产成人免费精品 | 亚洲最大成人免费网站 | 狠狠色丁香久久婷婷综合丁香 | 在线天堂视频 | 免费在线电影网址大全 | 国产精品免费视频观看 | 永久免费在线 | 亚洲精品在线一区二区三区 | 亚洲精品免费视频 | 超碰伊人网 | 天堂成人在线 | 97成人精品视频在线播放 | 成人免费视频播放 | 人人揉人人揉人人揉人人揉97 | 欧美久久综合 | 亚洲最新av网站 | 成人香蕉视频 | 人人澡人人爽欧一区 | 久久艹免费 | 欧美成人高清 | 成年人黄色免费网站 | 丁香色婷婷 | 国产免费a| 亚洲激情一区二区三区 | 日日操操操 | 亚洲区色 | 精品久久久久久亚洲综合网 | 就要干b| 丁香花中文在线免费观看 | 久久精品二区 | 国产永久免费高清在线观看视频 | 亚洲女人av | 色婷婷视频在线观看 | 国产精品丝袜久久久久久久不卡 | 欧美性生活一级片 | 亚洲少妇天堂 | 国产玖玖视频 | 亚洲第一区精品 | 免费观看一级特黄欧美大片 | 日韩av成人免费看 | 欧美日韩网址 | 免费看的视频 | 婷婷综合激情 | 亚洲欧洲中文日韩久久av乱码 | 欧美91精品国产自产 | 日日操网站 | 天天干天天玩天天操 | 成人av影视在线 | 综合精品在线 | 欧美污在线观看 | 日韩二区在线播放 | 色全色在线资源网 | 国产精品免费观看久久 | 中文字幕久久亚洲 | 91九色成人蝌蚪首页 | 国产一区二区精品久久 | 国产亚洲成av人片在线观看桃 | 91九色视频在线播放 | 久久久久久久久久影视 | 啪啪精品 | 久久精品国产免费观看 | 国产成人精品av久久 | 丁香高清视频在线看看 | 国产黄色片久久 | 亚洲激情一区二区三区 | 久久视频二区 | 92av视频 | 亚洲涩综合 | 999久久久久久久久久久 | 国产不卡高清 | 亚洲天天| 美女福利视频在线 | 少妇搡bbbb搡bbb搡忠贞 | 欧美高清成人 | 在线 视频 一区二区 | 日韩在线三级 | 久久人人爽视频 | 精品久久久久久久久久国产 | 日韩欧美亚州 | 亚洲 欧美 国产 va在线影院 | 国产精品免费麻豆入口 | 国产第一页精品 | 免费视频久久久久 | 高清不卡毛片 | 中文字幕在线观看第一区 | 天天爽天天碰狠狠添 | 91人人澡人人爽 | 亚洲精品视频在线播放 | 欧美精品亚洲精品日韩精品 | 午夜影视一区 | 天天干天天操天天操 | 美女视频久久 | 最新中文字幕在线资源 | 91精品国产自产老师啪 | 九九免费在线观看 | 午夜精品剧场 | 99精品国产99久久久久久福利 | 久久久久久久久久久精 | 我要色综合天天 | 久草免费在线观看 | 精品久久久久久久久久久院品网 | 日韩欧美视频在线 | 国产日韩高清在线 | 人人射人人爱 | 久草视频网 | 免费看毛片网站 | 日本久久综合网 | 美女av免费看 | 欧美色插| 日韩色区 | 欧美视频一区二 | 亚洲一级片 | 超碰在线人| 精品国产91亚洲一区二区三区www | 99r在线播放| 中文字幕日韩国产 | 国产成人免费在线观看 | 日韩精品视频在线观看网址 | 日韩视频区 | 久久久www成人免费毛片麻豆 | 天天激情天天干 | 亚洲一区视频免费观看 | 96精品高清视频在线观看软件特色 | 在线观看黄色的网站 | 亚洲黄色免费 | 日韩国产欧美视频 | 九九九国产 | 亚洲精品456在线播放乱码 | 久久精品成人 | 91精品国产91久久久久 | 久久九九国产视频 | 久久综合激情 | 久久精品视频国产 | 在线成人免费电影 | 成人av在线电影 | 美女视频永久黄网站免费观看国产 | 色九色 | 在线免费性生活片 | 中文字幕一区在线观看视频 | 综合在线观看色 | 成人av电影在线 | 日韩视频一区二区三区在线播放免费观看 | 日韩一区二区三免费高清在线观看 | 韩国av一区二区三区 | 久久新视频| 黄在线免费观看 | 国产精品大全 | 成人精品在线 | 亚洲日日射 | 婷婷六月综合网 | 国产精品一区二区吃奶在线观看 | 久久五月激情 | 在线免费视 | 手机看片1042 | 国产精品三级视频 | 国产精品v欧美精品 | 成人精品一区二区三区电影免费 | 欧洲精品在线视频 | 高清不卡一区二区在线 | 久久久久久免费毛片精品 | 午夜91在线| 操操操综合 | 午夜性生活片 | 国产精品一级在线 | 97超碰在线人人 | www.97视频 | 丁五月婷婷 | 六月婷婷网 | 二区三区精品 | 久久99这里只有精品 | 久久夜色网 | 天天干夜夜擦 | 久久五月婷婷丁香社区 | www.天堂av| 精品久久一区二区三区 | 欧美精品乱码久久久久久 | 激情丁香 | 国产精品观看视频 | 久久综合一本 | 久久国产精品99久久久久 | 99精品在线免费视频 | 久久久久久久久久久久电影 | 91福利在线导航 | 欧美色综合天天久久综合精品 | 激情五月婷婷丁香 | 亚洲精品18p | 97精品一区| 国产一级视屏 | 天天综合在线观看 | 国产精品成人一区二区 | 亚洲一区视频免费观看 | 久久99精品国产 | 精品产品国产在线不卡 | 久久人人做 | 久草视频看看 | 午夜精品一区二区三区免费视频 | 久久精品99国产精品日本 | wwwww.国产| 美女久久久久 | 人人爽人人爽人人爽 | 成人av一区二区兰花在线播放 | 国产午夜三级一区二区三桃花影视 | 成人中文字幕在线 | 亚洲在线资源 | 日韩欧美网站 | 久久久不卡影院 | 最近中文字幕视频完整版 | 国产手机视频在线 | www.久久久精品 | 亚洲一级特黄 | 久久久久久免费毛片精品 | 婷婷激情欧美 | 国产网红在线观看 | jizzjizzjizz亚洲 | 麻豆果冻剧传媒在线播放 | 在线看国产一区 | 日本精品视频在线观看 | 国产黄a三级三级三级三级三级 | 日韩精品不卡在线观看 | 日韩一区二区免费视频 | 91av精品| 亚洲国产精品第一区二区 | 日韩二级毛片 | 国产手机视频在线播放 | 国产精品高潮久久av | 欧美色图亚洲图片 | 日本精品中文字幕 | 五月天久久久久久 | 蜜臀精品久久久久久蜜臀 | 久黄色| 久久久久久久久久久成人 | 天天天干天天射天天天操 | 欧美人牲 | 免费视频一区二区 | free. 性欧美.com | 99热在线国产精品 | 99久久婷婷国产综合亚洲 | 日韩一区精品 | 久久香蕉国产精品麻豆粉嫩av | 国产精品国内免费一区二区三区 | 五月婷婷激情综合 | 最近中文字幕免费视频 | 久久午夜电影 | 国产1级毛片 | 欧美精品久 | 丝袜一区在线 | 四虎在线观看网址 | 国产成人精品综合久久久久99 | 日韩一区正在播放 | 亚洲人久久 | a视频在线播放 | 91精品国产91久久久久福利 | 九九热在线免费观看 | 91大神精品视频 | 日日色综合 | 99久久精品国产亚洲 | 伊人五月天| 国产麻豆精品一区二区 | 免费日韩av电影 | 欧美日韩国产亚洲乱码字幕 | 中文字幕久久精品亚洲乱码 | 久草视频在线播放 | 亚洲伦理电影在线 | 亚洲免费在线看 | 大型av综合网站 | 欧美性色综合网站 | 888av | 亚洲成av人片一区二区梦乃 | 欧美在线你懂的 | 国产精品免费久久久久影院仙踪林 | 久草网视频 | 99这里都是精品 | 亚洲精品毛片一级91精品 | 国产一区免费看 | 日韩在线免费 | 在线观看日本高清mv视频 | 一级a性色生活片久久毛片波多野 | 少妇bbbb搡bbbb桶 | 日韩欧美国产激情在线播放 | 久久精品草 | 日本中文字幕在线免费观看 | 一区二区三区在线免费播放 | 西西www444 | 国产精品九九九九九 | 超碰人人干人人 | 日韩欧美99 | 久久久久久久久久久精 | av官网| 日韩免费视频线观看 | 久操操| 天天摸日日摸人人看 | 亚洲色图美腿丝袜 | av在线成人 | 在线视频精品播放 | 五月婷婷深开心 | 国产精品久久久久aaaa | 国产视频2区 | 国产精品一区免费在线观看 | 日p视频在线观看 | 中文字幕日本在线观看 | 中文字幕中文字幕在线一区 | 欧美专区日韩专区 | 久久艹99| 国产九九九九九 | 中文字幕第一页在线vr | 国产精品免费人成网站 | 亚洲国产一区在线观看 | 蜜臀av夜夜澡人人爽人人桃色 | 国产精品欧美一区二区三区不卡 | 国产高清免费在线观看 | 五月婷婷六月综合 | 丁香电影小说免费视频观看 | 特级黄色一级 | 免费开视频 | 天天干天天操天天入 | 国产亚洲精品久久久久久网站 | 色国产精品一区在线观看 | 亚洲mv大片欧洲mv大片免费 | 欧美a级一区二区 | 国产午夜精品一区二区三区欧美 | 在线观看国产一区二区 | 欧洲亚洲女同hd | 国产亚洲永久域名 | 在线观看av片 | 夜添久久精品亚洲国产精品 | 精品字幕| 在线观看av片 | 久草综合在线 | 欧美日韩免费在线视频 | 极品国产91在线网站 | 91视频com| 久久久免费视频播放 | www.色就是色 | 高清av中文字幕 | 欧美国产日韩一区二区三区 | av一级免费 | 午夜精品视频一区二区三区在线看 | 国产美女免费看 | 97人人艹| 亚洲精品国产精品国自 | 久久久国产一区二区三区四区小说 | 亚洲乱码国产乱码精品天美传媒 | 日b黄色片| 久久69av| 一区二区三区高清在线观看 | 天天狠狠 | 麻豆91精品视频 | 久久久久久免费视频 | 中文字幕日韩有码 | 欧美亚洲成人免费 | www.伊人网 | 久久av在线播放 | 国产精品网红直播 | 婷婷久操| 天天干,天天射,天天操,天天摸 | 久草久草视频 | 日韩在线观看网站 | 久久久影片 | 在线观看免费成人 | 免费午夜视频在线观看 | 伊人小视频 | 日韩在线播放欧美字幕 | 五月婷婷在线视频观看 | 久草视频在线新免费 | 色综合五月 | 日韩在线观看电影 | 亚洲国产一区av | 国产一级性生活视频 | 国产精品中文字幕在线 | 亚洲人成影院在线 | 麻豆一二三精选视频 | av成人免费在线看 | 97视频一区| 久久久久久美女 | 久久综合精品国产一区二区三区 | 五月婷香蕉久色在线看 | 激情婷婷久久 | 麻豆视频在线免费观看 | 天天操综合网站 | 黄色一级片视频 | 欧美性精品 | 国产精品剧情在线亚洲 | 91九色在线视频观看 | 91在线免费看片 | 亚洲情婷婷| 黄色毛片在线观看 | 中日韩在线 | 精品福利视频在线观看 | 国产亚洲精品久久网站 | 91精品爽啪蜜夜国产在线播放 | 91精品久久久久久久久久入口 | 久久综合色一综合色88 | 久久久久久国产精品美女 | 91亚洲成人 | 日韩高清片 | 色婷婷视频| 亚洲区另类春色综合小说校园片 | 国产亚洲精品精品精品 | 亚洲高清在线 | 国产群p| 亚洲精品xxx| 精品一区在线看 | 中文字幕av一区二区三区四区 | 免费看片在线观看 | 激情图片久久 | 中文不卡视频在线 | 欧美片网站yy | 亚洲,播放 | 1024手机基地在线观看 | 日韩av成人在线 | 天天综合入口 | 99re热精品视频 | 国产精品视频最多的网站 | 欧美三级高清 | 婷婷六月在线 | 五月天电影免费在线观看一区 | 91传媒在线观看 | av一级免费| 日韩动漫免费观看高清完整版在线观看 | 欧美亚洲国产一卡 | 欧美久久久久久 | 免费三及片 | 欧美日韩不卡在线 | 国产亚洲一级高清 | 天天爱综合 | 久久久精品 一区二区三区 国产99视频在线观看 | 中文字幕在线视频第一页 | 少妇bbb搡bbbb搡bbbb | 黄色免费观看网址 | 亚洲综合爱 | 蜜桃av观看 | 久久精品3 | 婷婷在线五月 | 国产高清在线精品 | 日日夜夜网站 | 亚洲天堂精品视频在线观看 | 久久大片 | 日韩无在线 | 91精品1区 | 欧美视频不卡 | 天天操天天干天天爽 | 麻豆视频在线 | 国产精品破处视频 | 日韩在线视频看看 | 超碰在线人 | 久久免费视频6 | 国产成人黄色 | 黄色三级免费片 | 国产99久久精品一区二区永久免费 | 久久久国产精品一区二区中文 | 久久伦理网 | 黄色软件视频大全免费下载 | 一区二区三区在线观看免费视频 | 午夜精品一区二区国产 | av线上看 | 天天射网站 | 一级电影免费在线观看 | 91精品视频免费看 | 一区二区三区观看 | 91自拍成人 | 欧美日韩天堂 | 五月天视频网 | av三级av| 在线亚洲小视频 | 国产一区二区精品 | 久久 国产一区 | 欧美精品第一 | 国产三级视频在线 | 99免费观看视频 | 色瓜| 国内三级在线观看 | 中文有码在线视频 | 黄色av网站在线免费观看 | 中文字幕一区二区三区乱码在线 | 黄色成人影视 | 色欧美成人精品a∨在线观看 | 亚洲国产中文字幕 | 99成人在线视频 | 久久99视频 | 亚洲高清视频在线观看 | 久久999久久 | 日韩国产欧美在线视频 | 成人欧美亚洲 | 亚洲综合一区二区精品导航 | 人人爽人人爽 | 97人人超碰在线 | 国产精品免费观看在线 | 久草视频在线免费 | 韩国在线一区 | 中文亚洲欧美日韩 | 91精品久久久久久久久久入口 | 亚洲精品乱码久久久久久蜜桃动漫 | 天天曰天天 | 成人亚洲精品国产www | 激情欧美丁香 | 日本爽妇网 | 丁香激情综合 | 人人插人人草 | 久久国产精品久久国产精品 | 亚洲自拍偷拍色图 | 97超碰伊人 | 国产精品一区二区av影院萌芽 | 久久色视频 | 日日爱影视 |