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

WebAssembly視頻檢測(cè)在社區(qū)創(chuàng)作平臺(tái)的落地與實(shí)踐

開發(fā) 架構(gòu)
通過WebAssembly技術(shù)的引入與整合,我們?cè)谝曨l損壞檢測(cè)上迎來了新的機(jī)遇。在逐步解決技術(shù)挑戰(zhàn)的過程中,完善了我們的視頻上傳流程,并提升了用戶體驗(yàn)。

目錄

一、背景&現(xiàn)狀

二、業(yè)界的做法

三、得物音視頻團(tuán)隊(duì)的方案

四、我們需要解決的問題

    1. 內(nèi)存泄漏

    2.大視頻無法檢測(cè)

    3.檢測(cè)速度慢

五、內(nèi)存優(yōu)化方案

六、總結(jié)

一、背景&現(xiàn)狀

創(chuàng)作者服務(wù)平臺(tái)作為得物為社區(qū)創(chuàng)作者提供的PC端視頻發(fā)布入口,地位非常重要。且隨著功能的升級(jí)迭代,用戶群體也越來越多。但我們偶爾會(huì)收到如下反饋:

  • 視頻損壞,無法播放
  • 視頻模糊
  • 曝光度問題
  • 黑屏,只有聲音,沒有畫面

黑屏,無法播放黑屏,無法播放

低清晰度低清晰度

曝光異常曝光異常

黑屏,只有聲音黑屏,只有聲音

視頻的損壞不僅影響用戶體驗(yàn),還可能導(dǎo)致忠誠用戶的流失。用戶在瀏覽時(shí)看到錯(cuò)誤反饋或者無法播放的視頻,容易產(chǎn)生挫敗感。

第二,流量的上漲導(dǎo)致此類case越來越多,據(jù)統(tǒng)計(jì),自2024年4月份開始,通過創(chuàng)作者平臺(tái)發(fā)布的視頻可分發(fā)視頻量較之前上漲多倍。

為提升視頻發(fā)布的質(zhì)量和用戶體驗(yàn),視頻發(fā)布前的檢測(cè)能力需盡快落地。

二、業(yè)界的做法

在視頻內(nèi)容平臺(tái)興盛的今天,視頻上傳和檢測(cè)方面已經(jīng)有了一些有力措施,以確保用戶上傳的視頻質(zhì)量,最大程度地減少損壞視頻對(duì)用戶體驗(yàn)和平臺(tái)形象的影響,比如服務(wù)端檢測(cè),創(chuàng)作者在上傳完視頻后,會(huì)立即觸發(fā)服務(wù)端檢測(cè)功能,經(jīng)過等待后會(huì)反饋給用戶信息,不強(qiáng)卡發(fā)布。

這一方案是可行的,但也存在些弊端:

  • 需要視頻上傳完成才能拿到完整的文件流進(jìn)行檢測(cè),通常在PC上傳的視頻文件很大,要等到傳完作者才能知道自己的視頻有問題,然后再上傳,再檢測(cè)
  • 帖子發(fā)布時(shí)間拉長(zhǎng),增加創(chuàng)作者的等待,從心智上會(huì)影響創(chuàng)作者的體驗(yàn)
  • 帶寬成本

但這一方案有個(gè)優(yōu)秀的點(diǎn),如對(duì)涉黃、涉恐等元素的視頻,能同時(shí)被檢測(cè)到并且禁止分發(fā)。

三、得物音視頻團(tuán)隊(duì)的方案

目前得物音視頻團(tuán)隊(duì)在上傳前的預(yù)檢測(cè)這種場(chǎng)景下已有了一套較為完善的方案,那就是使用C+ffmpeg編寫好檢測(cè)代碼后再通過Emscripten工具將其打包成WebAssembly的二進(jìn)制文件使代碼運(yùn)行在web端。

圖片圖片

目前這個(gè)方案的核心檢測(cè)能力已應(yīng)用在得物App發(fā)布工具場(chǎng)景使用,其能通過ffmpeg解析視頻的元數(shù)據(jù),獲取其基本信息,如視頻尺寸,碼率等,能查找目標(biāo)視頻下的視頻流,對(duì)音頻和視頻的AVPacket進(jìn)行驗(yàn)證,檢測(cè)文件是否損壞,時(shí)間軸是否存在異常等等。正常的流程如下:

圖片圖片

經(jīng)過此過程的檢測(cè),我們可以排除絕大多數(shù)文件格式存在問題的視頻文件,下面列出一些常見的文件結(jié)構(gòu)存在問題或者格式不合規(guī)的視頻:

1.文件的moov不存在

https://videocdn.poizon.com/creator/og/2386746172_96421a9fd8662a848fef2a62ffbc1e63_1730287081103_dur1208dur_w1080h1920.mp4

圖片圖片

2.視頻幀的NAL結(jié)構(gòu)異常

https://videocdn.poizon.com/creator/og/2376721105_6dc8f934807c2b62b2261227d2b6699b_1730284366880_dur27dur_w720h1280.mp4

圖片圖片

3.沒有視頻軌道

https://videocdn.poizon.com/app/sns-og/2024/video/1753839080_byte588513_dur35786_ed63cbac543fdbfe1d8afc098a5be0c6_1729117036244_du_android_w480h480.mp4

圖片

除了可以檢測(cè)視頻文件是否存在問題之外,我們還可以通過預(yù)檢測(cè)獲取大量的視頻相關(guān)的信息:

1.視頻的基本信息

  • 寬高、幀率(是否是動(dòng)態(tài)幀率)、碼率
  • 旋轉(zhuǎn)角度

2.色域信息

  • 是否是HDR、DP3色域
  • 是8bit/10bit/12bit/16bit

3.視頻編碼附加信息

  • 當(dāng)前的視頻是否是從其他平臺(tái)上搬運(yùn)而來的?
  • 當(dāng)前的視頻是否使用其他的剪輯工具導(dǎo)出的?
  • 我們可以通過識(shí)別視頻中的metadata中的信息來分析當(dāng)前的視頻來自哪些平臺(tái)的: 

來自抖音

來自微信來自微信

來自快手來自快手

綜上所述,我們?cè)谏蟼髑邦A(yù)檢測(cè)階段,可以得到視頻的很多信息 + 檢測(cè)視頻是否存在結(jié)構(gòu)問題和格式問題。

四、我們需要解決的問題

雖然整體鏈路方案非常完善,但是SDK實(shí)際落地到web端運(yùn)行還存在一些問題。

內(nèi)存泄漏

我們先做個(gè)壓力測(cè)試,在不刷新頁面的情況,看下網(wǎng)頁端內(nèi)存如何變化:

1.準(zhǔn)備32個(gè)50MB以內(nèi)的小視頻,1個(gè)800MB的大視頻,內(nèi)存采樣為每3s采樣一次

2.通過一個(gè)個(gè)上傳,內(nèi)存占用一直在上升,當(dāng)傳入800MB視頻進(jìn)行檢測(cè)時(shí),內(nèi)存占用直接飆升至3G,未被正確釋放

舊版SDK壓力測(cè)試內(nèi)存占用情況舊版SDK壓力測(cè)試內(nèi)存占用情況

此時(shí)控制臺(tái)報(bào)錯(cuò),內(nèi)存溢出,頁面卡死,用戶必須刷新頁面才可繼續(xù)操作。

控制臺(tái)內(nèi)存溢出報(bào)錯(cuò)控制臺(tái)內(nèi)存溢出報(bào)錯(cuò)

ArrayBuffer異常占用ArrayBuffer異常占用

大視頻無法檢測(cè)

傳入1.9GB的視頻文件,控制臺(tái)直接報(bào)錯(cuò),無法申請(qǐng)1.9GB的內(nèi)存。

大文件傳入報(bào)錯(cuò)大文件傳入報(bào)錯(cuò)

檢測(cè)速度慢

一步步通過裁剪,縮小視頻大小,800MB時(shí)視頻傳入檢測(cè)成功,耗時(shí)94630ms。

五、內(nèi)存優(yōu)化方案

針對(duì)以上問題,我們一個(gè)個(gè)來看:

內(nèi)存溢出:先了解下現(xiàn)有代碼中內(nèi)存是如何被分配和銷毀的,下面是部分核心代碼。

IO核心代碼IO核心代碼

大致的流程如下:

圖片圖片

通過流程圖可見內(nèi)存已經(jīng)被正確的申請(qǐng)和釋放了,但是實(shí)際表現(xiàn)確是申請(qǐng)的內(nèi)存一直在被占用,所以可能不是代碼邏輯問題,在翻閱了wasm官方設(shè)計(jì)文檔時(shí)發(fā)現(xiàn)一個(gè)issue,其中提到了wasm內(nèi)存設(shè)計(jì)方案存在幾個(gè)問題(該issue還處于open狀態(tài)):

wasm內(nèi)存設(shè)計(jì)問題wasm內(nèi)存設(shè)計(jì)問題

所以正是由于第2、3點(diǎn)導(dǎo)致了wasm占用的內(nèi)存只能被擴(kuò)大,而無法通過釋放被縮小,一旦過多的使用malloc內(nèi)存占用達(dá)到wasm的最大內(nèi)存限制后,申請(qǐng)必將失敗,后續(xù)的鏈路也就無法繼續(xù)了。那么排除其他因素,通過代碼驗(yàn)證一下吧,我們只需要將extract_video_data函數(shù)修改一下,直接釋放掉接收的內(nèi)存指針指向的內(nèi)存塊:

修改代碼片段修改代碼片段

依舊還是之前的物料進(jìn)行壓力測(cè)試,可見內(nèi)存整體增長(zhǎng)情況態(tài)勢(shì)與之前別無二致,所以基本可以確認(rèn),內(nèi)存一直占用的問題是wasm底層Memory的設(shè)計(jì)導(dǎo)致的,所以malloc函數(shù)我們肯定是用不了了。

驗(yàn)證內(nèi)存采集驗(yàn)證內(nèi)存采集

大視頻無法檢測(cè):通過分析"IO核心代碼"一圖可以看到,視頻文件是轉(zhuǎn)成ArrayBuffer后通過forEach把一個(gè)個(gè)的字節(jié)塞入了提前申請(qǐng)好的內(nèi)存中來實(shí)現(xiàn)數(shù)據(jù)傳遞的,這種方案存在兩個(gè)問題:

1. 效率低,不考慮文件轉(zhuǎn)ArrayBuffer的時(shí)間,光遍歷動(dòng)不動(dòng)就上百兆量級(jí)的buffer需要的時(shí)間都是巨量的,經(jīng)過測(cè)試800MB文件想要全部轉(zhuǎn)化為Uint8ClampedArray,然后寫入到wasm內(nèi)存中耗時(shí)大約在14秒左右,這就是導(dǎo)致檢測(cè)速度慢的一個(gè)原因。

2. ArrayBuffer的size是存在最大限制的,以chrome為例,這個(gè)限制是2GB,導(dǎo)致在js側(cè)檢測(cè)視頻理論大小限制為了2GB,wasm側(cè)最大可申請(qǐng)內(nèi)存也存在限制,大約在1.6GB左右。在使用malloc申請(qǐng)到內(nèi)存空間后又將其傳入avio_alloc_context,avio_alloc_context內(nèi)部將再次申請(qǐng)buffer_size大小的內(nèi)存空間進(jìn)行數(shù)據(jù)緩存, 從而導(dǎo)致實(shí)際檢測(cè)視頻最大為800MB。

所以ArrayBuffer這種方案是不能使用的,天然存在限制。那么到此問題原因都找到了,歸根結(jié)底都出在文件的IO上,那么是否可以換一種思路,如果不需要任何的數(shù)據(jù)格式的轉(zhuǎn)換,使wasm環(huán)境下的ffmpeg直接讀取到文件這樣肯定是最省時(shí)且高效的。那么ffmpeg能直接讀取文件嗎,答案是肯定的。

圖片圖片

avformat_open_input可以傳入文件路徑并能將AVFormatContext自動(dòng)分配并寫入ps。意思是只要能拿到目標(biāo)文件的文件路徑,就能直接調(diào)用avformat_open_input讀取文件到IOContext,省去了將數(shù)據(jù)手動(dòng)塞入IOContext的邏輯,也就意味著能繞過多余的內(nèi)存的申請(qǐng)和釋放,且不再需要進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)換,可是怎樣才能拿到目標(biāo)文件路徑呢?

因?yàn)镾DK的運(yùn)行環(huán)境是在web端,web端想要訪問本地文件只能通過file類型的input拿到文件對(duì)象,那傳入blobUrl行不行呢,經(jīng)過測(cè)試,傳入blobUrl會(huì)報(bào)Permission denied 無權(quán)限的錯(cuò)誤,因?yàn)閣asm的文件系統(tǒng)有自己的特殊實(shí)現(xiàn),其并不能與JavaScript 直接進(jìn)行交互,讀取文件需要通過nodefs.js,idbfs.js,workerfs.js,proxyfs.js這幾個(gè)js分別構(gòu)造的虛擬文件系統(tǒng)才行,其分別是:

  • NODEFS,在node環(huán)境中使用的文件系統(tǒng)
  • IDBFS,在web瀏覽器中可使用的文件系統(tǒng),強(qiáng)依賴IndexedDB
  • WORKERFS,工作在web瀏覽器,且只能運(yùn)行在webWorker中的文件系統(tǒng)
  • PROXYFS,允許通過代理的方式訪問本地文件系統(tǒng)或遠(yuǎn)程文件系統(tǒng),主要用于將文件操作傳遞到JavaScript中的其他實(shí)現(xiàn)。這種機(jī)制使得WebAssembly模塊能夠與JavaScript代碼進(jìn)行交互,進(jìn)而訪問不同的文件系統(tǒng)或數(shù)據(jù)源

由此看來想要提供給avformat_open_input目標(biāo)文件的路徑,我們還需將目標(biāo)文件掛載到一個(gè)虛擬文件系統(tǒng)中。那么該如何選擇呢?

因?yàn)槲覀兊腟DK是需要運(yùn)行在web瀏覽器中,那么NODEEFS首先就被排除掉了,其次視頻的讀取檢測(cè)屬于計(jì)算密集型任務(wù),是需要運(yùn)行在webWorker中的,所以WORKERFS與我們的使用場(chǎng)景更加契合,他提供對(duì)webWorker中的file和Blob對(duì)象的只讀訪問,而無需將整個(gè)數(shù)據(jù)復(fù)制到內(nèi)存中,非常適合對(duì)大型文件的讀取,也滿足了我們對(duì)于快速讀取和內(nèi)存占用少的要求,簡(jiǎn)直完美。

那么說干就干,webWorker + WORKERFS的方案需要對(duì)打包命令和代碼進(jìn)行改造。首先啟用WORKERFS需要在wasm的打包命令中添加-l workerfs.js參數(shù),并且導(dǎo)出運(yùn)行時(shí)函數(shù)WORKERFS,完整命令如下:

emcc -O3 \
-I ${FFMPEG_DIST_DIR}/include \
-L ${FFMPEG_DIST_DIR}/lib -l avcodec -l avformat -l swresample -l avutil -l workerfs.js\
-I ${CJSON_SOURCE_DIR} \
-s EXPORTED_FUNCTIONS="['_get_video_info', '_extract_video_data']" \
-s WASM=1 \
-s ALLOW_MEMORY_GROWTH=1 \
-s EXPORTED_RUNTIME_METHODS=[\"wasmMemory\", \"FS\", \"WORKERFS\", \"ccall\"]"
-fsanitize=address \
-o ${workspaceFolder}/sociality/main.js ${workspaceFolder}/sociality/main.c \
${CJSON_SOURCE_DIR}/cJSON.c ${CJSON_SOURCE_DIR}/cJSON_Utils.c

如果導(dǎo)出成功就能在wasm模塊中看到WORKERFS的實(shí)例:

圖片圖片

導(dǎo)出成功后想要使用的話只需要在webworker中創(chuàng)建任意文件夾,將目標(biāo)文件通過mount方法掛載到該文件夾上就行,直接上代碼:

WORKERFS在Webworker中的使用WORKERFS在Webworker中的使用

然后修改C語言側(cè)extract_video_data方法:

圖片圖片

文件就能正確地被讀取和處理了??梢娺@個(gè)方案非常的簡(jiǎn)潔且省去了巨量的IO操作,效率提升了,但是內(nèi)存占用問題還存不存在呢,再次跑個(gè)壓力測(cè)試試一試:

對(duì)比老SDK內(nèi)存占用情況對(duì)比老SDK內(nèi)存占用情況

用同樣的視頻物料進(jìn)行壓力測(cè)試,得出的內(nèi)存占用情況如圖,可見優(yōu)化后內(nèi)存使用在壓力測(cè)試后一直維持在900MB左右,且繼續(xù)傳入大視頻文件不會(huì)繼續(xù)上漲,判斷為正常內(nèi)存占用(綠色線條),檢測(cè)速度也做了一個(gè)粗略的統(tǒng)計(jì),與舊版SDK對(duì)比,性能方面,以800MB文件為例,檢測(cè)時(shí)長(zhǎng)分別為20s和95s,性能預(yù)計(jì)提升約78%;2GB視頻文件檢測(cè)時(shí)長(zhǎng)為61s,對(duì)于更大的視頻也能輕松應(yīng)對(duì)。至此所有的問題都已解決。目前該功能已上線:得物創(chuàng)作者平臺(tái)。

六、總結(jié)

通過WebAssembly技術(shù)的引入與整合,我們?cè)谝曨l損壞檢測(cè)上迎來了新的機(jī)遇。在逐步解決技術(shù)挑戰(zhàn)的過程中,完善了我們的視頻上傳流程,并提升了用戶體驗(yàn)。展望未來,我們希望繼續(xù)優(yōu)化這些功能,確保用戶能夠在平臺(tái)上無障礙地上傳和分享他們的創(chuàng)作,進(jìn)一步提升社區(qū)的活躍度和用戶粘性。

責(zé)任編輯:武曉燕 來源: 得物技術(shù)
相關(guān)推薦

2025-01-15 09:16:10

2020-12-16 20:07:18

容器技術(shù)

2023-08-31 22:40:01

2022-03-01 16:26:09

鏈路監(jiān)控日志監(jiān)控分布式系統(tǒng)

2024-04-09 07:28:05

2023-02-20 13:45:31

數(shù)據(jù)分析騰訊 Alluxio

2024-04-26 09:38:36

2022-06-01 09:04:58

Kafka運(yùn)維副本遷移

2024-08-20 09:59:22

2024-11-01 17:00:03

2023-02-28 12:12:21

語音識(shí)別技術(shù)解碼器

2023-11-13 17:35:55

系統(tǒng)技術(shù)

2022-03-17 21:42:20

美團(tuán)插件技術(shù)

2017-03-19 22:43:12

WebAssemblyJavaScript編程

2019-05-31 12:03:06

SQLHadoop大數(shù)據(jù)

2024-05-30 14:18:04

2022-05-20 11:38:38

網(wǎng)易智能運(yùn)維

2019-07-17 14:03:44

運(yùn)維DevOps實(shí)踐

2023-12-14 13:01:00

Hudivivo

2024-11-01 08:16:54

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

欧美最猛性xxxx| 色老汉一区二区三区| 91久久精品一区| 久草视频手机在线| 粉嫩久久久久久久极品| 精品久久中文字幕| 亚洲一区二区三区免费看| 99国产精品欲| 99伊人成综合| 丝袜亚洲欧美日韩综合| 免费观看黄网站| 午夜久久中文| **欧美大码日韩| 国语精品中文字幕| 一级黄色片免费看| 亚洲深夜av| 久久久av免费| 麻豆av免费观看| 成人综合日日夜夜| 色悠悠久久综合| 成人免费a级片| 国产女人在线观看| 成人国产精品免费观看动漫| 国产精品视频导航| 好吊操这里只有精品| 成人精品电影| 日韩大陆欧美高清视频区| 在线视频观看91| av有声小说一区二区三区| 亚洲一区精品在线| 国产又爽又黄ai换脸| 毛片在线能看| 成人高清视频免费观看| 91久久在线视频| 最近中文字幕在线观看视频| 日韩午夜在线| 久久久噜噜噜久久久| 欧美特黄一级片| 日韩欧美一区二区三区在线视频| 亚洲精品美女久久久| 丰满人妻一区二区三区大胸 | 午夜免费久久久久| 亚洲区一区二区三| 日韩精品欧美| 在线播放亚洲激情| 精品人妻无码一区| 蜜桃一区二区三区| 日韩电影第一页| 中国极品少妇xxxx| 日韩中文字幕在线一区| 欧美精品18+| 亚洲免费av一区| 国产综合色激情| 欧美三级中文字幕在线观看| 日本在线视频www| 亚洲妇女成熟| 色哟哟国产精品| 欧美三级一级片| 午夜不卡影院| 一本久久a久久精品亚洲| 国产深夜男女无套内射| 日韩伦理精品| 欧美性xxxxhd| 六月激情综合网| 欧美羞羞视频| 欧美三级资源在线| 精品综合久久久久| 国产一区二区三区黄网站| 欧美福利视频导航| 一卡二卡三卡四卡五卡| 无码国模国产在线观看| 亚洲护士老师的毛茸茸最新章节| 屁屁影院国产第一页| 欧美一区 二区| 亚洲日本成人网| 成人做爰69片免网站| 国产精品97| 欧美黑人巨大xxx极品| 日本在线小视频| 免费看的黄色欧美网站| 国产精品草莓在线免费观看| 国产精品欧美亚洲| 成人av高清在线| 久久久久久精| 欧美天天影院| 亚洲一卡二卡三卡四卡五卡| 久久成人免费观看| 黄色成人在线观看网站| 欧美tickling挠脚心丨vk| jizz日本免费| 99国内精品久久久久久久| 欧美成人在线影院| 69视频免费在线观看| 久久国产生活片100| 成人免费在线看片| 国内在线免费高清视频| 一区二区三区免费观看| 国产l精品国产亚洲区久久| 午夜不卡一区| 亚洲国产日韩欧美在线图片| 999福利视频| 夜夜嗨网站十八久久| 国产欧美一区二区三区视频| 欧美熟妇另类久久久久久不卡| 久久久久成人黄色影片| 国产精品igao激情视频| 欧美××××黑人××性爽| 91精品国产免费| 中文字幕丰满乱子伦无码专区| 国产精品久久久久蜜臀| 日韩香蕉视频| 亚洲激情免费观看| 少妇高潮一区二区三区喷水| 99精品国产一区二区青青牛奶| 国产精品专区一| 日本精品久久久久| 亚洲人成在线观看一区二区| 国产精品乱码久久久久| 成人看片黄a免费看视频| 一级做a爰片久久毛片美女图片| 久久午夜无码鲁丝片午夜精品| 青青草原综合久久大伊人精品优势 | 99精品国产99久久久久久福利| 国产美女扒开尿口久久久| 天堂成人在线视频| 亚洲免费视频成人| 国产精品天天av精麻传媒| 北条麻妃在线一区二区免费播放| 久久九九免费视频| 乱子伦一区二区三区| 成人中文字幕在线| 97超碰在线视| 日韩一级特黄| 亚洲日韩欧美视频一区| 日韩精品成人一区| 国产成人精品午夜视频免费| 亚洲高清精品中出| 91精品韩国| 亚洲欧美日韩综合| 日韩综合在线观看| 92精品国产成人观看免费 | 在线观看视频一区| 日本人添下边视频免费| 欧美1区视频| 国产日韩av在线播放| 在线观看免费版| 欧美天天综合网| 变态另类ts人妖一区二区| 裸体素人女欧美日韩| 欧美大香线蕉线伊人久久| 高清在线视频不卡| 亚洲国产精品嫩草影院久久| 国产一级做a爰片在线看免费| 国产精品88888| 国产尤物av一区二区三区| 国产精品亚洲一区二区在线观看| 久久手机免费视频| 99re只有精品| 亚洲一线二线三线视频| 亚洲欧美综合视频| 一区在线免费| 国产欧美一区二区在线播放| 岛国av在线播放| 亚洲老头老太hd| 中文字幕一区二区三区四区欧美| 国产调教视频一区| 亚洲综合欧美激情| 亚洲国产精品成人| av在线亚洲男人的天堂| 福利成人导航| 亚洲欧洲国产精品| 在线播放国产一区| 一区二区三区日本| 自拍视频一区二区| 日韩国产成人精品| 特色特色大片在线| 超碰在线成人| 日本精品视频网站| 美女隐私在线观看| 欧美不卡一区二区三区| 青青操免费在线视频| 国产午夜精品一区二区三区嫩草| 少妇一级淫免费播放| 欧美另类专区| 蜜桃在线一区二区三区精品| 欧美日韩免费电影| 欧美精品久久久久久久免费观看| 日本一区二区三区视频在线观看| 亚洲人免费短视频| 久久成年人免费电影| 色一情一乱一区二区三区| 一本一本大道香蕉久在线精品| 免费观看特级毛片| 91在线观看免费视频| 日韩av在线中文| 在线播放精品| 亚洲一区二区三区午夜| 中文字幕亚洲在线观看| 国产精品成人播放| 免费av不卡在线观看| 亚洲天堂视频在线观看| 国产情侣自拍小视频| 欧美午夜精品久久久久久久| 91杏吧porn蝌蚪| 久久亚洲综合av| 韩国三级hd中文字幕有哪些| 老鸭窝91久久精品色噜噜导演| 法国空姐在线观看免费| 国产一区二区亚洲| 国产精品久久久久久久久久直播 | 国产视频在线视频| 欧美三级特黄| 伊人天天久久大香线蕉av色| 免费看久久久| 91免费观看网站| 国产综合av| 国内免费久久久久久久久久久| 免费在线视频欧美| 亚洲欧洲在线视频| 亚洲三区在线播放| 欧美成人一区二区三区片免费 | 精品国产中文字幕| 精品国产三区在线| 国产精品影片在线观看| 一个人看的www视频在线免费观看| 欧美成人精品三级在线观看| av电影在线观看网址| 亚洲精品视频在线观看视频| 欧美一级特黄aaaaaa大片在线观看| 欧美美女一区二区三区| 69国产精品视频免费观看| 亚洲 欧美综合在线网络| www.毛片com| 亚洲视频香蕉人妖| 99久久精品久久亚洲精品| 国产三级一区二区| 欧美图片一区二区| 99久久精品一区二区| 久久久久久久久久久久国产精品| 国产精品1024久久| 日本亚洲一区二区三区| 国内欧美视频一区二区| www.夜夜爽| 久久精品国产久精国产爱| 亚洲欧洲日本精品| 美女视频黄免费的久久| 777视频在线| 麻豆精品久久久| xxww在线观看| 麻豆一区二区在线| 色播五月激情五月| 国内精品伊人久久久久av一坑| 国产探花在线看| 激情综合网激情| 久久婷婷中文字幕| 国产成人亚洲精品青草天美| 日韩大尺度视频| 成人精品国产免费网站| 奇米777第四色| 91在线精品秘密一区二区| 3d动漫精品啪啪一区二区下载| 91麻豆免费视频| 日韩av在线看免费观看| 国产日本一区二区| 久久久久麻豆v国产| 自拍偷拍亚洲激情| 久久久久香蕉视频| 欧美日韩色婷婷| 无码aⅴ精品一区二区三区| 欧美亚洲综合另类| 99精品国产99久久久久久97| 亚洲精品一区二区三区香蕉| 无码精品黑人一区二区三区| 亚洲欧洲一区二区三区在线观看| www.成人.com| 蜜臀久久99精品久久久久久宅男 | 中文字幕网av| 国产自产2019最新不卡| 中文字幕无人区二| 2020国产精品久久精品美国| 国产伦精品一区二区三区视频女| 日韩一区在线看| 日韩黄色三级视频| 欧美无乱码久久久免费午夜一区| 99久久久国产精品无码网爆| 亚洲黄页视频免费观看| 国产精品秘入口| 九九精品在线播放| 国产超碰精品| 亚洲字幕一区二区| 免费一区二区三区视频导航| 在线观看欧美亚洲| 亚洲激情偷拍| www.国产视频.com| 99热99精品| 登山的目的在线| 欧美性20hd另类| www.热久久| 一区二区三区四区精品| 天堂8中文在线| 国产精品jvid在线观看蜜臀| 亚洲精品在线国产| 天堂√在线观看一区二区| 欧美日韩1区2区3区| 在线视频日韩一区 | 熟妇高潮精品一区二区三区| 国产精品福利一区| 婷婷激情五月网| 日韩亚洲欧美在线观看| 国产一二三在线观看| 欧美福利小视频| 欧美亚洲福利| 欧美久久综合性欧美| 国产精品magnet| 无限资源日本好片| 91原创在线视频| 欧美日韩大片在线观看| 欧美三级在线视频| 色天堂在线视频| 久久久久久久久91| 精品中文在线| 日韩av一区二区三区在线| 在线中文一区| 在线观看av网页| 26uuu亚洲| 日韩av在线播放观看| 日韩欧美综合一区| 麻豆传媒在线观看| 国产精品美女www| 噜噜噜狠狠夜夜躁精品仙踪林| 99中文字幕在线观看| 久草在线在线精品观看| 国产jjizz一区二区三区视频| 欧美日韩裸体免费视频| 日本免费一区视频| 久久免费高清视频| 999久久精品| 成人污网站在线观看| 国内一区二区视频| 最新一区二区三区| 欧美一区二区在线看| 在线免费观看的av网站| 国产精品久久久久久久久久久久久久 | 国产日韩欧美综合| 色综合色综合| 在线观看免费污视频| 国产精品三级视频| 亚洲一区在线观| 日韩中文字幕视频在线观看| 国产乱子精品一区二区在线观看| 性欧美精品一区二区三区在线播放 | av首页在线观看| 亚洲一区二区久久久| 另类中文字幕国产精品| 视频一区视频二区视频| 日av在线不卡| 在线观看黄网址| 欧美一区二区三区人| 午夜伦理在线视频| 99国产在线视频| 亚洲黄色成人| 9.1成人看片免费版| 欧美三级一区二区| 超碰在线免费播放| av激情久久| 亚洲综合99| 美国黄色特级片| 欧美卡1卡2卡| 日本在线视频网址| 久久精品国产精品国产精品污 | 999精品视频在线| 国产精品女主播av| 成人高潮片免费视频| 98精品国产自产在线观看| 精品成人影院| 99久久99精品| 亚洲h在线观看| www亚洲人| 91精品国产高清久久久久久91裸体| 欧美午夜免费影院| 新91视频在线观看| 91精品一区二区三区在线观看| 青草在线视频| 日本在线视频一区| 国产乱码精品一区二区三区忘忧草| 男人天堂中文字幕| 国产午夜精品全部视频在线播放| 亚洲aⅴ网站| 国产97在线 | 亚洲| 国产精品三级视频| 少妇人妻偷人精品一区二区| 国产精品欧美日韩久久| 欧美日韩一视频区二区| 亚洲女优在线观看| 精品日韩一区二区| 91成人在线| 人妻久久久一区二区三区| 中文字幕在线免费不卡| 污污视频在线观看网站| 成人av资源在线播放|