精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

清華大作業指導:一人單刷雨課堂需要多少工作量?快手工程師詳解如何兩周搞定

新聞 前端
昨天,清華自動化大一學生的 C++大作業霸占了知乎榜首,該作業要求學生寫一個類似于「雨課堂」的網絡教學軟件(雷課堂)。

昨天,清華自動化大一學生的 C++大作業霸占了知乎榜首,該作業要求學生寫一個類似于「雨課堂」的網絡教學軟件(雷課堂),可以共享屏幕、語音直播、在線答題……其實現難度、工作量似乎都超出了大一學生的能力范圍,連清華特獎得主、阿里 P6 也表示無法單獨完成。離提交 deadline 只剩五六周,這個作業真能寫完嗎?

在昨天的討論區,我們看到大部分評論都是對于這一作業的吐槽。不過也有人提醒大家,為什么不試一試呢?畢竟,作業還是要交的。

作為雨課堂的技術支持方,快手的音視頻工程師范威給出了自己的專業回答。范威有著十多年的工作經驗,在春節后深度參與了雨課堂和快手項目的聯合開發,為雨課堂提供了音視頻底層技術支持。

根據范威的介紹,總共需要 2 周開發時間,就能擁有一個雷課堂。當然,前提是「這些知識你都學過」,還要有「豐富的踩坑經驗」。

小伙伴們是不是心動了?下面來看具體分析。

一個人單擼一個雷課堂需要多少工作量?

雨課堂是清華大學研發的一款在線教育 APP,可以支持老師在線授課、分享 PPT,學生與老師進行語音互動。從音視頻角度來看,這種在線授課的形式其實就是一個標準的視頻會議場景。

要說如何從頭開始擼一個視頻會議軟件,需要分前端和后端來說。這里前端指的是終端,后端指的是媒體服務器。前端的主要功能是負責音視頻通信,后端的主要功能是負責媒體流的轉發。

先說說前端。前端模塊包括音視頻采集、前處理、編解碼、收發包等功能模塊。目前開源的視頻會議項目以 webrtc 最為流行,其代碼里有 80w+行之多。要想單手從頭擼一個視頻會議終端,雖說不需要 80w 行代碼那么多,但是還是有其難度的。

采集模塊

首先是平臺的支持。iOS、Android、Windows、Mac、Linux,不同平臺提供的音視頻技術都不盡相同。音視頻的采集和前處理,需要根據不同的平臺和機型進行適配,有些算法可以采用平臺的能力,而有些算法需要通過軟件進行處理。

先來說一下采集和前處理模塊。視頻通過調用系統 API 完成攝像頭數據的采集,這里不詳細說,感興趣的同學可以自行查閱官方文檔。視頻前處理包括各種美顏濾鏡算法,由于教育場景下這個功能不是剛需故而跳過。

這里說一下音頻前處理。在實時語音通話時,從麥克風直接采集到的音頻是包含自己說話的聲音以及對方說話的聲音的。這是因為本地的揚聲器播放出對方的聲音也會被麥克風采集進去。如果不加任何處理就發送出去的話,對方會從揚聲器里聽到自己說話,這種情況稱為聲學回聲(Echo)。為了得到一個比較自然的通話效果,需要對麥克風采集的音頻數據進行處理,消除掉對方說話的部分,只保留本地的聲音。這個過程叫做回聲消除(AEC,Acoustic Echo Cancellation)。AEC 算法最常用的方式是采用自適應濾波器來產生一個模擬回聲,然后再從麥克風采集信號中將這個模擬回聲抵消掉,達到消除回聲的目的。

單線 AEC 架構

在實際項目中,還會對信號做一個 NLP(非線性濾波)來消除殘余回聲,同時為了增強信噪比還會做聲學降噪和自動增益,統稱為 3A(AEC/AGC/ANS)。目前幾乎所有的智能手機和 Mac 平臺都有硬件的 3A 算法模塊,其中蘋果的設備調校的比較好,而 Android 手機的 3A 效果良莠不齊,通常需要通過軟件自己實現。最快的實現方式是采用系統提供的 3A 算法,這里算 1 個人天。

編碼模塊

接下來是編解碼模塊。編解碼是將經過前處理的音視頻原始數據進行壓縮,以達到網絡傳輸的目的。由于網絡資源的限制,原始的音視頻數據量太大,不能直接在網絡上進行傳播,必須先經過壓縮。壓縮分為無損壓縮和有損壓縮。音視頻數據通常采用有損壓縮的方式,可以做到非常大的壓縮比。視頻編碼算法常用的有 H.264/H.265/VP8/VP9/AV1/AVS2 等等,音頻的壓縮算法有 AAC/Speex/Opus/G.711/G.729 等。現在通常采用的視頻壓縮算法是 H.264/H.265,而音頻算法則大都采用 Opus。

壓縮算法的細節非常繁雜,目前大多采用比較成熟的開源項目來實現,比如 x264,x265,ffmpeg 以及 libopus。蘋果設備也提供了內置的硬件視頻編解碼器 videotoolbox 可以支持 H.264/H.265 的實時編解碼,而 Android 則有 MediaCodec 提供相同的能力。在桌面平臺上,Intel 和 NVIDIA 的很多芯片提供了 qsv 和 nvenc 功能,用于實現桌面端的硬件視頻編解碼。有了編碼器之后,還需要對編碼參數進行正確的配置,以適合實時通信的場景。主要影響音視頻通話體驗的參數就是碼率,在其他參數不變的條件下,碼率越大音視頻質量就越好,而使用的網絡帶寬也越大。

這里為了簡化實現,使用系統提供的編解碼器實現,算 1 個人天。

傳輸模塊

經過編碼之后的音視頻數據已經小了很多,可以進行網絡傳輸了。Internet 網絡傳輸協議分為 TCP 和 UDP 兩種方式。TCP 協議是可靠傳輸,保證數據的完整性和有序性,但是缺點是在公網傳輸時速度比較慢,延時比較大。而 UDP 協議是不可靠協議,數據只管發,不能保證一定能夠到達對方,但是優點是發送速度快,延時低。因此在實時音視頻通信里,都會優先使用 UDP 協議進行數據發送。UDP 數據是以數據包為單位進行發送的,每次發送一個包,最大包大小不能超過 64K 字節。但是由于 IP 層的分片路由限制,通常一個 UDP 數據包的大小都會限制在一個 MTU(Max Transmission Unit)以內。以太網的 MTU 為 1500 字節,因此每個 UDP 包的大小大多都會限制在 1K 字節左右。而編碼后的視頻數據相對于這個大小還是太大了,需要對視頻數據進行進一步的分包才能進行發送。

由于 UDP 協議的特性是不可靠傳輸,因此數據包達到的先后順序也沒有保證。為了讓對方收到的音視頻數據的先后順序跟發送端一致,需要在接收端對 UDP 包進行排序。在視頻會議上,通常會采用 RTP 協議對分包之后的數據包進行一層封裝,每個 RTP 包都包含一個 RTP 頭,里面為每個 RTP 包分配了一個序列號。這個序列號是有序遞增的,因此接收端可以通過收到的 RTP 包的序列號對數據包進行排序,同時也可以知道哪些序號的數據包沒有收到,從而向發送端請求重發。

上面提到 UDP 在網絡傳輸過程中可能會丟包。由于音視頻編碼后的數據需要完整接收才能進行正常解碼,因此采用 UDP 協議傳輸的 RTP 包需要能夠處理丟包恢復。丟包恢復的方式有兩種,一種是 FEC(前向糾錯),一種是 ARQ(自動重傳),通常項目上這兩個方法會同時采用。

FEC 是對一組 RTP 包進行冗余編碼,產生出一些冗余包,冗余包包含了這一組 RTP 包的信息,在丟包的時候可以利用冗余包里的數據,恢復出這一組 RTP 包數據。常用的 FEC 算法包括 RS、卷積碼、噴泉碼等。FEC 的好處是不會引入額外的延時,冗余包和數據包一起發送給對端,對端通過接收到的數據包和冗余包嘗試恢復,沒有額外的交互時間,但由于網絡丟包的隨機性,并不是每一個 FEC 包都能夠被利用,這樣降低了整體的帶寬利用率

ARQ 則是精準的請求丟失的 RTP 包,讓發送端重新發送。在 RTP 協議里,可以通過 NACK 來實現重傳請求,攜帶上請求重傳的 RTP 序列號。發送端接收到 NACK 請求后,會重新發送該序列號對應的 RTP 包到對端。NACK 和重傳包的傳輸引入了額外的延時,因此 ARQ 會導致音視頻通信的延時增加,但是帶寬利用率比較高。

對于差一些的網絡,網絡的帶寬并沒有那么高,如果發送端編碼的音視頻數據超過了其發送的上行帶寬,就會導致網絡擁塞,產生丟包和卡頓。為了防止網絡擁塞的發生,發送端需要對自己的上行網絡帶寬進行預測,并反饋給編碼器,調整編碼器的碼率不要超過帶寬上限。這個算法叫做帶寬估計。帶寬估計是實時音視頻通信非常重要的一個算法,其準確性會很大程度上影響用戶體驗。帶寬估計算法的策略有很多,webrtc 中采用的是 google 提出的 GCC(Google Congestion Control)算法。

整個傳輸模塊沒有現成的開源項目可用,要么自己擼要么參考 webrtc 的實現,大概需要 3-5 天。

緩沖隊列

到這里,發送端模塊基本就介紹完了,下面說一些接收端要做的部分。接收端在接收到 RTP 數據包之后,首先根據 RTP 的序列號進行排序,如果有丟包,則通過 FEC 和 ARQ 進行恢復和重傳。得到完整有序的 RTP 包之后,對 RTP 包進行重組,組合成編碼后的音視頻數據。由于網絡傳輸的不穩定性,收到的數據并不是均勻的,有可能一會兒接收的快,一會兒接收的慢,造成數據接收的波動。這種現象被稱為網絡抖動(Jitter)。如果這時候直接進行解碼播放,那么會導致視頻忽快忽慢,聲音出現變聲的現象。為了平滑這種網絡抖動,接收端需要有一個緩沖隊列,將接收到的音視頻數據放入到緩沖隊列中,然后再勻速的從隊列中取出,從而得到比較平滑的音視頻數據進行播放。

從緩沖隊列取出的數據就可以進行解碼了。解碼就是解壓縮的過程,將發送端壓縮的數據還原成原始的音視頻數據,才能在本地進行播放。一些編碼算法(例如 H.264/H.265/Opus)為了提高壓縮比,在壓縮時對于前后連續的兩幀音視頻數據做了參考,這樣就導致采用這類壓縮算法的編碼數據在解碼的時候存在參考關系的依賴,只有前一個數據被正確解碼,后一個數據才能也正確的解碼。但是由于網絡丟包,即使采用了 FEC 和 ARQ 等丟包恢復策略,仍然有部分音視頻數據無法完整的達到接收端。這時候如果強行解碼,那么視頻會出現花屏,而聲音會出現爆音。為了解決這個問題,對于不連續的視頻數據,接收端需要向發送端請求編碼一個關鍵幀視頻數據。這個關鍵幀數據在解碼的時候不會參考其他視頻數據幀,同時可以被后續的編碼視頻幀參考,這樣可以解決后續視頻的參考關系問題。而音頻可以通過 PLC(Packet Loss Concealment)算法,根據波形產生出丟失的音頻數據。

這里可以參考 webrtc 的 neteq 隊列來實現(沒錯,只有 webrtc 開源,所以同學們沒有別的參考),大概需要 3 天

本地播放

最后就是本地播放解碼出的音視頻數據。在播放的時候,音視頻數據在網絡傳輸上并不一定是相同的速度,因此可能會產生音畫不同步的問題。這里還需要一個音視頻同步模塊,來控制音視頻播放的速度,保證聲音和視頻可以對齊。在對齊的時候,由于人耳對于音頻的快慢變化更加敏感,所以總是調整視頻的速度來對齊音頻。在每個音視頻數據中,都會帶一個時間戳(timestamp),這個時間戳是音頻和視頻數據采集時生成的,相同的時間戳的音視頻應該同時播放才能保證音畫同步。因此在播放視頻幀的時候,需要對比當前播放的音頻的時間戳,調整視頻播放的速度。

視頻在屏幕上播放的時候,其顯示的分辨率大小可能與實際編碼的分辨率大小不一致。視頻分辨率代表的是視頻像素點的個數,分辨率越高越清晰。對于現在的手機和顯示器來說,大多支持 HDPI,通過更加密集的像素點得到更加清晰細膩的圖像。而攝像頭采集和編碼的視頻分辨率并不會特別高,那么在顯示的時候需要對視頻進行放大。不同的視頻放大算法對于清晰的影響比較大,默認的 linear 放大算法會導致圖像比較模糊,采用復雜的放大算法,比如 bicubic,lanzcos,spline 等,可以得到更加清晰的畫面,而一些特殊內容采用特定的算法會得到更好的視覺效果(比如人臉部分采用 softcubic 可以達到美顏效果)。

這里不考慮實現效果的話,用最簡單的 opengl 渲染視頻,大概 2 天。

這樣,一個簡簡單單的實時音視頻通信的終端部分就開發完了,再配上一個炫酷拉風的界面,就可以食用了。但是這里只能實現兩個人之間的通信,而在線授課的場景可是一個老師對一群學生。如何實現多人之間的實時通信呢?這就需要后端的媒體服務器作中轉來實現。

媒體后端

這里需要簡單介紹一下多人實時音視頻通信的網絡拓撲結構。對于三人以上的實時通信,由于接收端同時會接收多個人傳過來的音視頻數據,因此如果沒有服務器中轉的話,需要采用網狀拓撲結構,每個終端的音視頻流都需要同時發送給其他所有終端,網絡帶寬成倍增加。為了解決這個問題,就需要采用星型拓撲結構,所有的終端將自己的音視頻數據發送給中央服務器,再由服務器來做轉發。這個服務器就是視頻會議的后端,暨媒體服務器。

媒體服務器的實現方式有兩種。一種叫做 MCU 模式,一種叫 SFU 模式。

MCU 模式是服務器將所有人的音視頻數據在服務端進行解碼,然后合成為一個新的音視頻流。這個視頻流是由所有人的視頻組合出來的,而音頻則是將所有人的音頻混合,之后重新進行音視頻編碼,再發送給所有終端。這樣終端播放出來的音視頻流就是一個合并好的音視頻流。這種模式對于媒體服務器的性能消耗很大,因此一臺服務器并不能支持很多的終端。

SFU 模式則只是做 RTP 包的轉發,并不做解碼和合流的工作。每個終端同時會接收到多個人的音視頻流,每一組音視頻流需要獨立進行處理和解碼,然后在本地混合后播放出來。這種模式的 SFU 性能消耗比較低,能夠支持的并發很高。

如果不考慮高并發和架構設計,最簡單的實現大概 3 天。

把這樣一個媒體服務器部署到網絡上,然后由它來轉發所有終端的音視頻數據包,這樣就可以實現多人之間的音視頻通信了。

總共需要 2 周開發時間,一個最最簡單的雷課堂就實現完成了。

當然,這里只是為了完成作業從功能角度來實現。在實際項目中,需要考慮到性能和架構優化,增強穩定性和音視頻質量,服務端高并發和快速部署,各種算法參數調優和策略優化。沒有幾十人團隊精細打磨 2-3 年,以及專業的音視頻質量測試實驗室,不可能做到業界頂尖水準。

 

責任編輯:張燕妮 來源: 機器之心
相關推薦

2015-10-16 10:17:16

2009-05-27 16:14:17

LinuxUbuntu體驗

2016-09-22 16:14:45

前端設計Photoshop

2020-04-22 10:50:14

清華大學 C++自動化

2011-04-18 13:45:59

自動化測試測試管理

2016-11-14 10:09:49

數據分析產品經理Growth

2022-04-18 09:07:10

Python代碼核酸統計

2023-07-24 16:53:14

人工智能工作量翻倍

2013-05-23 13:32:30

編程攻誠獅工程師

2021-03-09 10:47:56

系統架構師算法工程師人工智能工程師

2021-03-09 10:24:46

數學計算機系統架構師

2020-02-21 15:43:11

疫情肆虐刷臉神器

2023-07-11 14:13:04

技術會談

2018-05-28 11:54:53

運維

2023-01-18 08:26:29

工具Mybatis代碼

2010-12-14 10:12:33

新版Android M

2011-06-14 16:20:45

測試

2017-08-15 15:47:54

信息化工業化融合兩化融合

2020-02-18 10:10:02

互聯網數據技術

2020-05-20 15:05:22

戴爾
點贊
收藏

51CTO技術棧公眾號

国产一级大片免费看| 国产成人一区二区三区| 日韩精品人妻中文字幕有码| 国产激情视频在线看| 久久久久一区二区三区四区| 国产深夜精品福利| 成年人午夜视频| 青青草国产成人a∨下载安卓| 欧美一卡二卡三卡| 精品国产成人av在线免| 日本在线免费| 久久午夜老司机| 成人黄色av播放免费| 日韩av电影网| 一区二区电影| 国产性色av一区二区| 亚洲AV成人精品| av成人在线观看| 午夜精品爽啪视频| 91九色国产ts另类人妖| 凸凹人妻人人澡人人添| 国精产品一区一区三区mba视频 | 国产精品美女在线观看| 希岛爱理中文字幕| 蜜桃国内精品久久久久软件9| 欧美日韩午夜在线| 69sex久久精品国产麻豆| 国产一级二级三级在线观看| 精品亚洲porn| 欧美洲成人男女午夜视频| 亚洲色图日韩精品| 美女扒开腿让男人桶爽久久动漫| 欧美美女激情18p| 波多野结衣之无限发射| 免费在线看a| 久久综合久久综合九色| 91九色蝌蚪成人| 成人免费视频国产免费| 韩国欧美一区| 日韩视频在线免费观看| 亚洲欧美激情一区二区三区| 色在线中文字幕| 国产欧美日韩精品在线| 成人久久18免费网站漫画| 成人av网站在线播放| 欧美日韩91| 久久精品电影网| 一级黄色性视频| 欧美精品中文字幕亚洲专区| 日韩欧美一区在线| 在线黄色免费观看| 卡通欧美亚洲| 欧美日韩中文字幕| 日韩xxxx视频| 四季久久免费一区二区三区四区| 国产精品福利一区| 日韩欧美在线观看强乱免费| 亚洲aⅴ乱码精品成人区| 国产成人在线视频播放| 国产日韩欧美在线观看| 在线观看你懂的网站| 午夜综合激情| 992tv在线成人免费观看| 久久久久久久国产视频| 综合久久十次| 米奇精品一区二区三区在线观看| 日本美女xxx| 欧美美乳视频| 亚洲精品一区二区三区婷婷月| 国产麻豆剧传媒精品国产av| 国语一区二区三区| 亚洲国产精品久久精品怡红院| 色婷婷狠狠18禁久久| 试看120秒一区二区三区| 欧美一区二区三区婷婷月色| 伊人国产精品视频| 国产在线不卡一区二区三区| 在线91免费看| 国产成人av免费观看| 日韩精品中文字幕一区二区| 四季av在线一区二区三区| 99精品热视频| 欧美系列一区| 国产污视频在线| 久久久久99精品一区| 日韩免费一区二区三区| 天天在线视频色| 中文字幕色av一区二区三区| 精品国产三级a∨在线| 调教一区二区| 亚洲欧洲www| 在线无限看免费粉色视频| 老司机在线视频二区| 亚洲美女视频在线观看| 精品无码一区二区三区在线| 在线成人av观看| 欧美日韩午夜影院| 一级黄色高清视频| 久久亚州av| 国产亚洲美女久久| 中文字幕观看av| 韩日在线一区| 日韩免费高清在线观看| 中文字幕人成人乱码亚洲电影| 国产毛片一区二区| 久久99精品久久久久久三级 | 7777精品久久久大香线蕉| 人妻换人妻仑乱| 琪琪久久久久日韩精品| 伊人伊人伊人久久| 免费在线一区二区三区| 另类av一区二区| 成人黄色av播放免费| 日韩在线不卡一区| 国产性生活视频| 美女网站色91| 激情小说网站亚洲综合网| 国产天堂在线| 亚洲r级在线视频| 婷婷六月天在线| 国产+成+人+亚洲欧洲在线| 一个色综合导航| 久久久久久久黄色| 麻豆精品视频在线| 国产精品久久久一区二区三区| 国产三级在线免费观看| 一区二区国产视频| 天天色综合天天色| 日韩电影不卡一区| 欧美理论电影在线观看| 久久久久久av无码免费看大片| 成人午夜电影久久影院| 在线国产精品网| 春暖花开亚洲一区二区三区| 日韩一二三区不卡| 自拍偷拍视频亚洲| 亚洲伦伦在线| 99re国产在线播放| 日本高清视频在线播放| 一本久久综合亚洲鲁鲁五月天 | 久久99精品国产91久久来源| 麻豆成人av| 俄罗斯一级**毛片在线播放| 欧美日韩不卡在线| 人人爽人人爽人人片| 国产精品资源| 黑人中文字幕一区二区三区| 黄色精品在线观看| 色妞www精品视频| 日韩精品无码一区二区三区久久久 | 国产淫片在线观看| 欧美日韩一二区| 性欧美丰满熟妇xxxx性仙踪林| 国产精品v欧美精品v日本精品动漫| 国产欧美一区二区三区四区| 国产在线视频网| 秋霞蜜臀av久久电影网免费| 亚洲色图丝袜美腿| 日本黄大片一区二区三区| 精品国产美女| 国产精品伦子伦免费视频| 青青草免费观看免费视频在线| 亚洲国产综合在线| 黑人无套内谢中国美女| 欧美激情五月| 国产精品xxxx| 成年人黄色大片在线| 亚洲国产精品美女| 久久午夜免费视频| 97久久久精品综合88久久| 日本香蕉视频在线观看| 国产无遮挡裸体免费久久| 久久久久一本一区二区青青蜜月| 欧美一级片免费| 亚洲午夜久久久久久久久久久| 成人啪啪18免费游戏链接| 狠狠色狠狠色综合日日tαg| 国产女主播一区二区三区| 成人影院在线观看| 欧美xingq一区二区| 国产一级理论片| 91丝袜国产在线播放| 无码人妻丰满熟妇区毛片18| 免费成人网www| 国产精品视频内| a篇片在线观看网站| 精品乱人伦小说| 日韩av无码中文字幕| 26uuu国产在线精品一区二区| 大香煮伊手机一区| 91久久夜色精品国产按摩| 91久久久精品| 9999热视频在线观看| 亚洲精品丝袜日韩| 中文字幕 自拍偷拍| 亚洲欧美偷拍另类a∨色屁股| 国产亚洲精品成人a| 国产视频久久| 一区二区三区国| 欧美电影在线观看一区| 欧美又大又粗又长| 精品自拍一区| 日韩av有码在线| 一级片视频网站| 亚洲国产精品久久人人爱蜜臀 | 99成人精品视频| 综合电影一区二区三区| 久久久午夜精品福利内容| 久久视频一区| 青青草原网站在线观看| 亚洲性视频在线| 51ⅴ精品国产91久久久久久| 粉嫩一区二区三区国产精品| 欧美精品99久久久**| 欧美国产在线看| 国产精品三级电影| 久久性爱视频网站| 蜜臀久久久久久久| 亚洲一区二区三区av无码| 国语产色综合| 成人免费观看网站| 国产精品一区二区免费福利视频| 九九热精品在线| 大乳在线免费观看| 日韩欧美激情四射| 亚洲一区二区激情| 欧美日韩国产页| 2025国产精品自拍| 国产三级久久久| 艳妇乳肉豪妇荡乳xxx| 久久99国内精品| 黑森林福利视频导航| 在线欧美不卡| 免费观看黄色大片| 成人一二三区| 欧洲在线视频一区| 欧美绝顶高潮抽搐喷水合集| 91成人免费视频| 福利一区视频| 日本精品久久久| 蜜桃视频在线观看播放| 欧美日产国产成人免费图片| 免费黄色在线观看| 亚洲小视频在线观看| 亚洲 国产 欧美 日韩| 精品剧情v国产在线观看在线| 久久精品偷拍视频| 亚洲国产aⅴ天堂久久| 破处女黄色一级片| 成人免费视频在线观看| 在线国产视频一区| 国产午夜精品一区二区三区嫩草| 日本护士做爰视频| 成人av中文字幕| 麻豆av免费看| 国产大陆a不卡| 国产老头和老头xxxx×| 久久精品国产免费| 97超碰成人在线| 蜜芽一区二区三区| 中文字幕第17页| 精品一区二区三区久久| 天堂中文av在线| 国产在线不卡一区| 性刺激的欧美三级视频| 免费视频一区| 国产一区二区三区精彩视频| 午夜在线观看免费一区| 亚洲中文字幕无码不卡电影| 国产精品尤物| 97公开免费视频| 毛片av一区二区| 911福利视频| 极品销魂美女一区二区三区| 日韩精品在线播放视频| 国产v日产∨综合v精品视频| 欧美肉大捧一进一出免费视频| 不卡视频免费播放| jizz日本免费| 午夜在线小视频| 91免费版在线| 在线 丝袜 欧美 日韩 制服| 26uuu亚洲综合色| 国产精品20p| 亚洲欧美视频在线观看| 日韩一级片大全| 亚洲一区二区视频| 日本中文字幕在线| 欧美日韩一区二区在线观看 | 中文国产在线观看| 国产一区欧美二区| 精品熟女一区二区三区| 国产亚洲精品aa| 国产精品白丝喷水在线观看| 亚洲图片欧美综合| 国产日韩久久久| 日韩欧美色电影| 国产高清自拍视频在线观看| 精品一区二区三区香蕉蜜桃| 日韩电视剧免费观看网站| 成人免费视频国产免费麻豆| 亚洲女人天堂视频| 国产不卡在线| 欧洲美女7788成人免费视频| 九九九九九九精品任你躁| 久久综合九九| 亚州av乱码久久精品蜜桃| 丁香花在线影院观看在线播放| 日韩成人午夜精品| 精品久久久久一区二区| 亚洲国产精品成人综合| 精品小视频在线观看| 在线观看亚洲a| 蜜臀久久精品久久久久| 中文字幕亚洲一区二区三区五十路| 久久亚洲天堂| 97超碰蝌蚪网人人做人人爽| 国产一区高清| 久久精品99| 欧美1区免费| 亚洲一区二区蜜桃| 波多野结衣一区二区三区| 制服丨自拍丨欧美丨动漫丨| 天天影视网天天综合色在线播放| 国产一区二区女内射| 精品网站999www| 免费在线国产视频| 国产欧美一区二区| 日本成人7777| 真人做人试看60分钟免费| 日韩不卡一区二区三区 | 97精品久久久午夜一区二区三区 | 亚洲一区在线播放| 中文字幕在线观看视频一区| 日韩成人中文电影| 女人黄色免费在线观看| 成人国产精品av| 色呦哟—国产精品| 国产成人无码av在线播放dvd| 成人激情免费网站| 乱老熟女一区二区三区| 欧美精品aⅴ在线视频| 大片免费播放在线视频| 91av在线播放| 这里视频有精品| 看一级黄色录像| 激情欧美一区二区| 91导航在线观看| 色菇凉天天综合网| 欧洲成人av| 91成人福利在线| 美腿丝袜亚洲图片| 免费av手机在线观看| 成人丝袜18视频在线观看| 校园春色 亚洲| 欧美一区欧美二区| 98在线视频| 国产有码一区二区| 欧美电影免费| www.久久av.com| 亚洲四区在线观看| 国产又粗又黄又爽| 久久久国产成人精品| 宅男噜噜噜66国产精品免费| 亚洲精品成人a8198a| 蜜桃一区二区三区四区| 欧美另类z0zx974| 51精品秘密在线观看| 在线午夜影院| 国产精品v欧美精品v日韩精品| 亚洲福利国产| 波多野结衣先锋影音| 欧美日韩视频免费播放| 欧美zzoo| 欧美一区二区大胆人体摄影专业网站| 蜜乳av综合| av在线网址导航| 一区二区三区在线观看欧美| 性一交一乱一精一晶| 91sa在线看| 教室别恋欧美无删减版| 国产九九在线视频| 亚洲少妇最新在线视频| 欧美性猛交 xxxx| 国产成人综合一区二区三区| 色综合咪咪久久网| wwwww在线观看| 色欧美日韩亚洲| 国产乱色在线观看| 黄色99视频| 久久精品一区二区三区中文字幕| 国产探花视频在线播放| 91精品婷婷国产综合久久| 91福利区在线观看| 亚洲国产精品视频一区| 高清视频一区二区| 无码无套少妇毛多18pxxxx| 另类少妇人与禽zozz0性伦| 国产精品极品在线观看| 99久久激情视频|