日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

RTMP轉(zhuǎn)WebRTC低延遲直播實(shí)戰(zhàn):基于SRS的Docker部署與播放測試

RTMP轉(zhuǎn)WebRTC低延遲直播實(shí)戰(zhàn):基于SRS的Docker部署與播放測試 之前做直播項(xiàng)目時(shí)業(yè)務(wù)方經(jīng)常提一個(gè)需求“畫面要低延遲最好控制在 1 秒以內(nèi)但我們的攝像頭和編碼器只支持 RTMP 輸出”。瀏覽器原生又不能直接播放 RTMPHTTP-FLV 延遲又不理想。后來在測試環(huán)境里用 SRS 把 RTMP 轉(zhuǎn)成 WebRTC才把問題徹底打通。本文就用一套最小可復(fù)現(xiàn)的 rtmp2webrtc 測試環(huán)境帶你從環(huán)境搭建、協(xié)議轉(zhuǎn)換、推流驗(yàn)證到 WebRTC 播放完整跑一遍。文章會(huì)包含 Docker 部署、配置文件、ffmpeg 推流命令、網(wǎng)頁播放器代碼和常見排錯(cuò)思路適合剛接觸流媒體轉(zhuǎn)換、或者已經(jīng)在做直播/監(jiān)控項(xiàng)目想降低播放延遲的開發(fā)者。1. 背景與核心概念1.1 為什么需要 RTMP 轉(zhuǎn) WebRTC在真實(shí)項(xiàng)目中RTMP 和 WebRTC 經(jīng)常是兩個(gè)獨(dú)立的技術(shù)棧但業(yè)務(wù)上卻要把它們串起來。RTMP 目前依然是很多攝像頭、編碼器、推流軟件的標(biāo)準(zhǔn)輸出協(xié)議。傳統(tǒng) OBS、硬件編碼器、監(jiān)控?cái)z像頭幾乎都支持 RTMP 推流。但瀏覽器端對 RTMP 的支持已經(jīng)基本消失。以前用 Flash 播放 RTMP 已經(jīng)過時(shí)現(xiàn)代瀏覽器不可能直接解析 RTMP 流。如果要實(shí)現(xiàn)“攝像頭 RTMP 推流網(wǎng)頁端低延遲觀看”最直接的辦法是在服務(wù)器上搭建一個(gè)中間層把 RTMP 接收下來再轉(zhuǎn)換成瀏覽器能消費(fèi)的流。這個(gè)中間層可以是 HTTP-FLV、HLS 或 WebRTC。HTTP-FLV 延遲雖然不錯(cuò)但相比 WebRTC 還是不夠低HLS 延遲通常在 3 到 10 秒只適合點(diǎn)播或?qū)ρ舆t不敏感的場景。WebRTC 的優(yōu)勢在于基于 UDP 傳輸具備實(shí)時(shí)通信能力播放延遲通常可以控制在 1 秒以內(nèi)。所以“RTMP 推流 WebRTC 播放”成了低延遲直播測試和落地的主流組合。1.2 RTMP 與 WebRTC 的核心差異搞清楚這兩個(gè)協(xié)議的差異對理解轉(zhuǎn)換原理很有幫助。RTMP 是基于 TCP 的實(shí)時(shí)消息傳輸協(xié)議。它把視頻、音頻、metadata 封裝成 FLV 標(biāo)簽通過長連接推送到服務(wù)器。TCP 保證了可靠性但會(huì)有一定的緩沖和排隊(duì)延遲。早期 RTMP 用于 Flash 播放器到現(xiàn)在依然是行業(yè)里最常見的推流協(xié)議。WebRTC 是一套瀏覽器實(shí)時(shí)通信標(biāo)準(zhǔn)主要使用 UDP 傳輸 RTP/RTCP 媒體數(shù)據(jù)。它通過 ICE 做連接協(xié)商用 SDP 交換媒體能力基于 SRTP 加密傳輸。瀏覽器原生支持 WebRTC所以不需要安裝插件或 Flash。下面用表格對比會(huì)更直觀對比項(xiàng)RTMPWebRTC傳輸層TCPUDP RTP/RTCP瀏覽器支持不支持原生支持典型角色推流端為主播放端/雙向通話延遲范圍2 到 5 秒0.2 到 1 秒加密可配默認(rèn) SRTP端口固定 1935動(dòng)態(tài) RTP 端口/UDP簡單理解RTMP 在推流階段有優(yōu)勢WebRTC 在播放和雙向通信階段有優(yōu)勢。服務(wù)器需要做的就是接收 RTMP 流解出 FLV 封裝中的視頻幀和音頻幀再按 WebRTC/SDP 協(xié)商出來的能力重新封裝成 RTP 包發(fā)送給瀏覽器。1.3 一套完整的 rtmp2webrtc 測試環(huán)境包含什么一套可復(fù)用的 rtmp2webrtc 測試環(huán)境通常由以下幾個(gè)部分組成流媒體服務(wù)器承擔(dān) RTMP 接收和 WebRTC 轉(zhuǎn)換任務(wù)例如 SRS。推流端使用 ffmpeg 拉取本地視頻文件或者直接生成測試畫面把 RTMP 流推到服務(wù)器。播放端一個(gè)普通的 Chrome/Edge 瀏覽器頁面使用 WebRTC API 從服務(wù)器拉流。網(wǎng)絡(luò)環(huán)境服務(wù)器需要開放 RTMP 的 TCP 端口、HTTP API 端口以及 WebRTC 媒體傳輸?shù)?UDP 端口。本文選擇 SRS 作為測試服務(wù)器因?yàn)樗_源、部署簡單并且原生支持 RTMP 與 WebRTC 的雙向轉(zhuǎn)換。你可能還聽說過 Janus、mediacodec、GStreamer 等方案但 SRS 在中文社區(qū)資料比較豐富單機(jī)測試也最省事。2. 環(huán)境準(zhǔn)備與版本說明2.1 操作系統(tǒng)與硬件要求測試環(huán)境不要求高性能服務(wù)器。本文的示例在 Linux 系統(tǒng)上演示如果你用的是云主機(jī)、虛擬機(jī)或本地 Linux 開發(fā)機(jī)都可以。常見環(huán)境如下操作系統(tǒng)Ubuntu 20.04 / 22.04CentOS 7 及以上或者兼容性較好的 Linux 發(fā)行版。CPU/內(nèi)存2 核 4G 起步單路流媒體轉(zhuǎn)換測試完全夠用。瀏覽器Chrome 或 Edge 最新版本。如果你的測試機(jī)是國產(chǎn)化平臺例如麒麟操作系統(tǒng)搭配飛騰/鯤鵬或兆芯等架構(gòu)部署思路也類似。優(yōu)先選擇支持對應(yīng) CPU 架構(gòu)的 Docker 鏡像如果沒有現(xiàn)成鏡像可以改用源碼編譯方式。SRS 對 ARM64 的編譯還算友好但具體還要按實(shí)際系統(tǒng)環(huán)境調(diào)整這里重點(diǎn)演示配置思路而不是特定發(fā)行版的命令。2.2 軟件工具清單為了跑通測試環(huán)境我們需要的工具如下工具用途說明Docker / Docker Compose啟動(dòng) SRS 服務(wù)快速、環(huán)境隔離ffmpeg模擬 RTMP 推流可使用虛擬視頻源SRS 5流媒體服務(wù)器接收 RTMP 并轉(zhuǎn) WebRTCChrome 瀏覽器播放 WebRTC 流支持 WebRTC API版本說明SRS 5 開始完整支持 WebRTC 播放所以本文以 SRS 5 為例。SRS 6 也保留了類似配置細(xì)節(jié)上你可以參考官方文檔做微調(diào)。不要盲目用 latest 鏡像固定具體大版本更利于復(fù)現(xiàn)環(huán)境。如果你不希望安裝 Docker也可以直接從源碼編譯 SRS但需要額外安裝 Go、gcc、cmake 等依賴。本文優(yōu)先使用 Docker 方案因?yàn)樗梢园炎⒁饬性诹髅襟w本身而不是編譯環(huán)境上。2.3 測試目錄規(guī)劃建議在測試機(jī)上單獨(dú)建立一個(gè)目錄方便清理和備份。/data/rtmp2webrtc/ ├── conf/ │ └── srs.conf ├── pages/ │ └── player.html └── logs/conf 目錄放 SRS 自定義配置文件。pages 目錄放 WebRTC 播放頁面。logs 目錄留作日志備份。實(shí)際使用時(shí)按你的習(xí)慣調(diào)整目錄位置。下面所有命令都默認(rèn)在 /data/rtmp2webrtc 下執(zhí)行。3. 核心原理拆解3.1 SRS 在測試環(huán)境中的雙重角色SRSSimple Realtime Server在本文測試環(huán)境中承擔(dān)兩個(gè)角色RTMP 流媒體服務(wù)器監(jiān)聽 1935 端口接收 ffmpeg 或其他推流端發(fā)來的 RTMP 流。WebRTC 網(wǎng)關(guān)通過 HTTP 信令接口與播放端交換 SDP通過 UDP 端口傳輸 RTP 媒體數(shù)據(jù)。當(dāng) ffmpeg 推流到 SRS 后SRS 內(nèi)部會(huì)生成一條流。這條流先以 RTMP/FLV 的形式存在服務(wù)器上。當(dāng)播放端發(fā)起 WebRTC 請求時(shí)SRS 讀取這條流中的 H.264 視頻幀把它們封裝到 RTP 包中通過協(xié)商好的 UDP 路徑發(fā)送給瀏覽器。這里有一個(gè)關(guān)鍵點(diǎn)RTMP 到 WebRTC 的轉(zhuǎn)換并不等于轉(zhuǎn)碼。默認(rèn)情況下SRS 不改變視頻編碼格式而是做“轉(zhuǎn)封裝/轉(zhuǎn)協(xié)議”。如果推流端編碼是 H.264WebRTC 播放端同樣收到的也是 H.264。轉(zhuǎn)碼會(huì)消耗大量 CPU所以通常只在編碼格式不兼容時(shí)才考慮。3.2 WHIP 與 WHEP 信令流程WebRTC 連接并不是“服務(wù)器直接往瀏覽器扔數(shù)據(jù)”它需要先完成信令協(xié)商。兩端要先交換 SDPSession Description Protocol告訴對方自己支持什么編碼、用什么 IP 和端口通信。SRS 5 支持兩類標(biāo)準(zhǔn)信令接口WHIPWebRTC-HTTP Ingest Protocol用于 WebRTC 推流。WHEPWebRTC-HTTP Egress Protocol用于 WebRTC 拉流播放。本文場景是瀏覽器拉流所以走 WHEP 流程。大致步驟如下瀏覽器創(chuàng)建一個(gè) RTCPeerConnection 對象。調(diào)用 createOffer 生成自己的 SDP offer。把 SDP offer 通過 HTTP POST 發(fā)送到 SRS 的 WHEP 地址。SRS 返回 SDP answer。瀏覽器把 answer 寫入 remoteDescription。雙方通過 ICE 完成 UDP 連接。瀏覽器收到 RTP 媒體數(shù)據(jù)并渲染到 video 標(biāo)簽。整個(gè)流程看似復(fù)雜但 SRS 簡化了大部分服務(wù)端邏輯瀏覽器側(cè)使用原生 WebRTC API 就能完成。3.3 媒體格式兼容性注意事項(xiàng)WebRTC 對音頻編碼有比較強(qiáng)的偏好。瀏覽器普遍支持 Opus而 RTMP 推流端很多默認(rèn)使用 AAC。SRS 在某些版本中支持 AAC 到 Opus 的轉(zhuǎn)換但不同版本和配置下行為可能不一樣。為了減少測試環(huán)節(jié)的不確定性我們可以在 ffmpeg 推流時(shí)直接輸出 H.264 視頻和 AAC 音頻如果播放端沒有聲音再嘗試推 Opus 音頻。視頻方面H.264 是最穩(wěn)妥的 WebRTC 播放格式幾乎所有瀏覽器都能硬解。如果你推流端輸出的是 H.265瀏覽器 WebRTC 默認(rèn)不支持通常需要先轉(zhuǎn)成 H.264。這一點(diǎn)在視頻監(jiān)控項(xiàng)目中尤其常見。4. 完整實(shí)戰(zhàn)搭建 rtmp2webrtc 測試環(huán)境4.1 編寫 SRS 配置文件首先創(chuàng)建配置文件 /data/rtmp2webrtc/conf/srs.conf。# 文件路徑/data/rtmp2webrtc/conf/srs.conf listen 1935; max_connections 1000; daemon off; srs_log_tank console; http_api { enabled on; listen 1985; } http_server { enabled on; listen 8080; dir ./objs/nginx/html; } rtc_server { enabled on; listen 8000; candidate $CANDIDATE; } vhost __defaultVhost__ { rtc { enabled on; } }配置說明listen 1935RTMP 接收端口。http_api.listen 1985HTTP API 端口用于查看流信息、調(diào)用管理接口。http_server.listen 8080HTTPS 靜態(tài)文件服務(wù)端口方便直接訪問播放頁面。rtc_server.listen 8000WebRTC RTP/RTCP 媒體傳輸?shù)?UDP 監(jiān)聽端口。rtc_server.candidateSRS 向播放端通告的 IP 地址。這里寫成 $CANDIDATE 是為了通過環(huán)境變量動(dòng)態(tài)注入你也可以在測試環(huán)境里直接寫成服務(wù)器實(shí)際 IP。candidate 配置是 rtmp2webrtc 測試環(huán)境中最容易踩坑的地方。如果服務(wù)器是公網(wǎng)機(jī)器或云主機(jī)candidate 必須配置成客戶端能訪問到的 IP。如果配置成了 127.0.0.1 或內(nèi)網(wǎng) IP瀏覽器雖然完成了信令協(xié)商但媒體包可能永遠(yuǎn)到不了播放端。4.2 Docker 啟動(dòng) SRS進(jìn)入測試目錄執(zhí)行以下命令啟動(dòng) SRS 容器。假設(shè)你的服務(wù)器 IP 是 192.168.1.100請?zhí)鎿Q成實(shí)際環(huán)境。cd /data/rtmp2webrtc docker run -d --name srs \ -p 1935:1935 \ -p 1985:1985 \ -p 8080:8080 \ -p 8000:8000/udp \ -v /data/rtmp2webrtc/conf/srs.conf:/usr/local/srs/conf/srs.conf \ -e CANDIDATE192.168.1.100 \ ossrs/srs:5執(zhí)行后查看容器日志docker logs -f srs如果啟動(dòng)正常日志中會(huì)顯示配置加載成功并出現(xiàn) RTMP、HTTP API、RTC Server 的監(jiān)聽信息??吹筋愃葡旅娴膬?nèi)容時(shí)說明服務(wù)已經(jīng)起來了rtmp: listen tcp://0.0.0.0:1935 http api: listen tcp://0.0.0.0:1985 rtc_server: listen udp://0.0.0.0:8000注意容器的 8000 端口映射方式與普通 TCP 端口不同需要顯式聲明為 udp。漏掉 /udp 聲明會(huì)導(dǎo)致瀏覽器可以完成信令協(xié)商但媒體數(shù)據(jù)無法傳輸播放畫面會(huì)一直黑屏。4.3 驗(yàn)證 SRS 服務(wù)是否正常在瀏覽器訪問下面的地址如果能打開 SRS 的默認(rèn) HTTP 頁面說明靜態(tài)服務(wù)器正常http://192.168.1.100:8080/訪問 HTTP API 查看流列表curl http://192.168.1.100:1985/api/v1/streams此時(shí)還沒有推流返回結(jié)果中 streams 數(shù)組應(yīng)該為空。這個(gè)接口在后面可以用來確認(rèn)流是否成功推上來。4.4 使用 ffmpeg 模擬 RTMP 推流為了方便測試我使用 ffmpeg 的 lavfi 虛擬設(shè)備生成畫面和聲音不需要準(zhǔn)備真實(shí)視頻文件。先測試視頻和音頻均為 H.264 AAC 的推流命令ffmpeg -re -f lavfi -i testsrcsize1280x720:rate25 \ -f lavfi -i sinefrequency1000:sample_rate44100 \ -c:v libx264 -preset veryfast -b:v 1500k \ -c:a aac -b:a 128k \ -f flv rtmp://192.168.1.100:1935/live/livestream命令參數(shù)解釋-re以實(shí)時(shí)速率讀取輸入模擬真實(shí)推流。testsrcffmpeg 內(nèi)置測試畫面畫面帶有彩色條和時(shí)間信息。sine1kHz 正弦波模擬音頻。libx264H.264 編碼。aacAAC 音頻編碼。rtmp://192.168.1.100:1935/live/livestream推流地址其中 live 是應(yīng)用名livestream 是流名。如果你希望驗(yàn)證 WebRTC 音頻兼容性可以把音頻編碼改成 Opusffmpeg -re -f lavfi -i testsrcsize1280x720:rate25 \ -f lavfi -i sinefrequency1000:sample_rate44100 \ -c:v libx264 -preset veryfast -b:v 1500k \ -c:a libopus -b:a 64k \ -f flv rtmp://192.168.1.100:1935/live/livestream當(dāng) ffmpeg 成功推流后再次查看流列表curl http://192.168.1.100:1985/api/v1/streams如果返回結(jié)果表明存在 live/livestream 這條流說明 RTMP 推流已經(jīng)成功。4.5 編寫 WebRTC 播放頁面下面創(chuàng)建一個(gè)最簡單的 WebRTC 播放頁面。這個(gè)頁面不依賴任何第三方庫使用瀏覽器原生 API 和 SRS 的 WHEP 接口完成拉流。文件路徑/data/rtmp2webrtc/pages/player.html!DOCTYPE html html langzh-CN head meta charsetUTF-8 titleSRS WebRTC 播放測試/title style body { font-family: Arial, sans-serif; padding: 20px; } video { width: 640px; background: #000; } /style /head body h2RTMP 轉(zhuǎn) WebRTC 播放測試/h2 video idplayer autoplay controls muted/video p idstatus正在連接.../p script const video document.getElementById(player); const status document.getElementById(status); // 改成你的服務(wù)器實(shí)際地址 const whepUrl http://192.168.1.100:1985/rtc/v1/whep/?applivestreamlivestream; async function startPlayback() { // 1. 創(chuàng)建 RTCPeerConnection const pc new RTCPeerConnection({ iceServers: [{ urls: stun:stun.l.google.com:19302 }] }); // 2. 聲明接收音視頻 pc.addTransceiver(video, { direction: recvonly }); pc.addTransceiver(audio, { direction: recvonly }); // 3. 收到媒體流后渲染到 video pc.ontrack (event) { if (event.streams event.streams[0]) { video.srcObject event.streams[0]; status.textContent WebRTC 播放中; } }; // 4. 創(chuàng)建并設(shè)置本地 SDP const offer await pc.createOffer(); await pc.setLocalDescription(offer); // 5. 通過 WHEP 接口發(fā)送給 SRS const resp await fetch(whepUrl, { method: POST, headers: { Content-Type: application/sdp }, body: offer.sdp }); if (!resp.ok) { throw new Error(WHEP 請求失敗: resp.status await resp.text()); } // 6. 設(shè)置遠(yuǎn)端 SDP const answerSdp await resp.text(); await pc.setRemoteDescription({ type: answer, sdp: answerSdp }); } startPlayback().catch((err) { status.textContent 播放失敗: err.message; console.error(err); }); /script /body /html把這個(gè)頁面放到 SRS 的 HTTP 服務(wù)目錄下或者單獨(dú)用 Nginx 托管。最簡單的方式是直接使用 Docker 命令拷貝到容器內(nèi)。但更推薦在宿主機(jī)上通過 Nginx 或 Python HTTP 服務(wù)訪問避免修改容器內(nèi)部文件造成環(huán)境不可恢復(fù)。如果使用 SRS 的 8080 靜態(tài)服務(wù)可以直接把頁面放到容器映射目錄中。不過上面的配置里 http_server 的 dir 指向的是容器內(nèi)的 ./objs/nginx/html因此更方便的辦法是把 player.html 放到 SRS 的 html 目錄然后在瀏覽器訪問http://192.168.1.100:8080/player.html拷貝方式docker cp /data/rtmp2webrtc/pages/player.html srs:/usr/local/srs/objs/nginx/html/player.html4.6 運(yùn)行與驗(yàn)證在瀏覽器打開 player.html如果一切正常你會(huì)看到測試畫面同時(shí)頁面提示“WebRTC 播放中”。驗(yàn)證要點(diǎn)畫面是否流暢延遲是否符合預(yù)期。聲音是否正常。如果你用 AAC 推流沒有聲音可以換成 Opus 推流命令再試。瀏覽器控制臺沒有 WebRTC 連接失敗的錯(cuò)誤。為了更直觀地觀察延遲ffmpeg 生成的 testsrc 畫面上帶有時(shí)間信息。你用手機(jī)秒表或另一臺顯示當(dāng)前時(shí)間的設(shè)備對比一下就能粗略判斷延遲高低。正常情況下延遲通常在 1 秒以內(nèi)。5. 常見問題與排查思路5.1 問題速查表問題現(xiàn)象常見原因解決思路頁面一直轉(zhuǎn)圈無法播放candidate 配置錯(cuò)誤將 srs.conf 中 candidate 改成客戶端可達(dá) IP信令正常但畫面黑屏UDP 8000 端口不通檢查云安全組和服務(wù)器防火墻放通 UDP 8000瀏覽器報(bào) CORS 錯(cuò)誤播放頁面與 API 不同源用 Nginx 將頁面和 /rtc/v1/ 接口代理到同一域名ffmpeg 推流失敗RTMP 端口未放通檢查 TCP 1935 端口有畫面沒有聲音音頻編碼不兼容試試推 Opus 音頻或檢查 SRS 是否啟用轉(zhuǎn)碼延遲很高是否真正建立了 WebRTC 連接檢查頁面是不是走了 HTTP-FLV/HLS 回流5.2 典型問題信令通了但畫面一直黑屏這是 rtmp2webrtc 測試環(huán)境中最常見的問題?,F(xiàn)象是瀏覽器控制臺沒有報(bào)錯(cuò)WHEP 請求成功返回RTCPeerConnection 狀態(tài)也正常但 video 標(biāo)簽一直黑屏。根本原因通常是 UDP 媒體端口不通。WebRTC 的信令走 HTTP只要 TCP 1985 端口能訪問信令流程就會(huì)成功。但真正的視頻數(shù)據(jù)是走 UDP 8000 端口發(fā)送的。如果服務(wù)器防火墻或云安全組沒有放通 UDP 8000媒體包就會(huì)被丟棄。排查順序查看 SRS 容器是否監(jiān)聽 UDP 8000docker exec -it srs ss -lunp | grep 8000在客戶端測試 UDP 端口是否可達(dá)。UDP 沒有 telnet 那樣的三次握手但可以用 nc 做簡單驗(yàn)證nc -vuz 192.168.1.100 8000這個(gè)命令能證明 UDP 包是否有去有回不過不同系統(tǒng)下結(jié)果不一定絕對準(zhǔn)確。更可靠的判斷方式是在 SRS 容器里開啟詳細(xì)日志觀察是否有 RTP 包進(jìn)來。檢查云廠商安全組。云主機(jī)通常有兩個(gè)防火墻層級操作系統(tǒng)內(nèi)部防火墻firewalld/iptables和安全組。兩個(gè)地方都要放通 UDP 8000。解決方案在防火墻中放通 UDP 8000然后重啟 SRS 容器并重新播放驗(yàn)證。5.3 典型問題CORS 跨域錯(cuò)誤當(dāng)你用瀏覽器直接訪問另一個(gè)端口的 WHEP 接口時(shí)如果 SRS 沒有返回正確的 Access-Control-Allow-Origin 響應(yīng)頭控制臺會(huì)報(bào)跨域錯(cuò)誤播放自然失敗。規(guī)避方法有兩種。第一種把播放頁面放到 SRS 的 8080 端口靜態(tài)目錄中但 API 是 1985 端口這仍然是跨域。所以更推薦第二種。第二種用 Nginx 做反向代理。把頁面和 API 統(tǒng)一暴露在同一個(gè)域名和端口下。Nginx 配置示例server { listen 80; server_name 192.168.1.100; location /rtc/ { proxy_pass http://127.0.0.1:1985; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; } }配置完成并重啟 Nginx 后播放頁面要改成訪問 Nginx 的地址const whepUrl http://192.168.1.100/rtc/v1/whep/?applivestreamlivestream;頁面本身通過http://192.168.1.100/player.html訪問。這樣頁面和接口就在同一個(gè)源下不會(huì)有跨域問題。5.4 典型問題Candidate 地址不對SRS 的 rtc_server.candidate 決定了 SRS 在 SDP 中通告給瀏覽器的媒體連接地址。如果這個(gè)地址是內(nèi)網(wǎng) IP 或者 127.0.0.1瀏覽器會(huì)嘗試往這個(gè)地址發(fā)媒體數(shù)據(jù)自然連不上。在 Docker 部署方式下還需要注意容器網(wǎng)絡(luò)模式。如果你把 candidate 設(shè)成了容器內(nèi)部 IP瀏覽器訪問不到。正確做法是設(shè)置成宿主機(jī)可訪問的 IP 或域名。如果部署在云主機(jī)上candidate 可以填云主機(jī)私網(wǎng) IP也可以填公網(wǎng) IP。這里沒有絕對標(biāo)準(zhǔn)原則只有一個(gè)客戶端能夠訪問到該地址。對于公網(wǎng)播放場景candidate 必須配置成公網(wǎng) IP。修改配置文件后一定要重啟容器docker restart srs然后重新打開播放頁面測試。6. 最佳實(shí)踐與工程建議6.1 測試環(huán)境與生產(chǎn)環(huán)境的差異測試環(huán)境跑通后不代表生產(chǎn)環(huán)境可以直接按同樣方式部署。下面幾點(diǎn)在工程上尤其值得注意。生產(chǎn)環(huán)境建議使用固定版本鏡像而不是 latest。Docker 鏡像的 latest 標(biāo)簽會(huì)隨時(shí)間變化容易導(dǎo)致測試和生產(chǎn)版本不一致。推薦在 Docker Compose 文件里寫死鏡像 tag。生產(chǎn)環(huán)境還要考慮域名和 HTTPS。瀏覽器對 WebRTC 的限制非常嚴(yán)格如果頁面通過 HTTPS 訪問媒體流的信令和傳輸會(huì)有更統(tǒng)一的兼容性。雖然這個(gè)純拉流示例不一定強(qiáng)制要求 HTTPS但在真實(shí)業(yè)務(wù)中頁面和 API 都建議統(tǒng)一走 HTTPS/WSS。6.2 配置管理SRS 配置文件應(yīng)該納入版本管理。不同環(huán)境使用不同配置文件例如srs.conf公共配置。srs.conf.test測試環(huán)境配置。srs.conf.prod生產(chǎn)環(huán)境配置。candidate 這類和環(huán)境強(qiáng)相關(guān)的配置不要寫入公共配置應(yīng)該通過環(huán)境變量或部署管道注入。這樣同一份配置可以在不同環(huán)境之間切換不容易出現(xiàn)“本地能跑線上黑屏”的問題。6.3 安全與訪問控制SRS 默認(rèn)的 HTTP API 端口如果直接暴露到公網(wǎng)任何人都有可能調(diào)用接口查看流信息或執(zhí)行管理操作。測試環(huán)境問題不大但生產(chǎn)環(huán)境至少做好兩步限制 API 端口訪問來源例如只允許管理網(wǎng)段訪問 1985。對播放和推流做鑒權(quán)SRS 支持回調(diào)鑒權(quán)可以在推流或播放時(shí)通過 HTTP 回調(diào)到業(yè)務(wù)服務(wù)器校驗(yàn)身份。涉及服務(wù)器防火墻和云安全組配置時(shí)遵循最小權(quán)限原則。只放通必要的端口不要順手放行整個(gè)網(wǎng)段更不要在生產(chǎn)環(huán)境關(guān)閉防火墻做測試。6.4 性能與穩(wěn)定性媒體服務(wù)器對 UDP 端口和網(wǎng)絡(luò)質(zhì)量比較敏感。大規(guī)模并發(fā)播放時(shí)UDP 8000 端口會(huì)成為瓶頸單節(jié)點(diǎn)能力有限。建議在接入生產(chǎn)流量前做壓測觀察 CPU、內(nèi)存和帶寬占用。時(shí)間同步也是一個(gè)容易被忽視的點(diǎn)。WebRTC 對時(shí)間戳和 RTCP 反饋有要求服務(wù)器時(shí)間漂移會(huì)影響播放穩(wěn)定性。部署服務(wù)后建議開啟 NTP 時(shí)間同步。如果測試環(huán)境是國產(chǎn)化平臺例如麒麟系統(tǒng) ARM 架構(gòu)部署前先確認(rèn)鏡像是否支持對應(yīng) CPU 架構(gòu)。不支持的架構(gòu)就用源碼編譯不要盲目用docker pull避免啟動(dòng)時(shí)出現(xiàn) exec format error。7. 總結(jié)與下一步這篇文章從零搭建了一套 rtmp2webrtc 測試環(huán)境核心內(nèi)容包括RTMP 與 WebRTC 的協(xié)議差異。SRS 如何接收 RTMP 流并轉(zhuǎn)換給瀏覽器。Docker 啟動(dòng) SRS 的具體步驟。ffmpeg 推流命令和 WebRTC 網(wǎng)頁播放器。黑屏、CORS、candidate 配置錯(cuò)誤的排查方法。把這套環(huán)境跑通之后你可以繼續(xù)往更多方向深入例如測試 SRT 協(xié)議接入、WebRTC 推流、多路流轉(zhuǎn)發(fā)、集群部署、鑒權(quán)回調(diào)等。RTMP 轉(zhuǎn) WebRTC 只是流媒體接入層的一個(gè)環(huán)節(jié)掌握它以后再去理解低延遲直播的全鏈路架構(gòu)就不會(huì)覺得有障礙了。如果你在搭建過程中遇到其他問題建議先把容器日志打開再按“信令是否通過、媒體端口是否放通、candidate 是否正確、編碼格式是否兼容”的順序逐步排查。這套思路能覆蓋大部分測試環(huán)境中的故障場景。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
人人摸人人干人人拍97| 久久区| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 久热一区二区| 国产女人9999| 国产丰满少妇久久久精品影院| 天天操夜夜操狠很操| 久久人妻少妇| 中日韩免费看男女操逼大全| 欧美人人天天网| 三级AV入口| 人妖欧美一区二区| 啊啊啊好舒服视频在线观看| 农村妇女一级二级三级视频| 久久久com| 日韩黄色一区二区三区| 摸奶性爱视频网站在线免费播放| 亚洲丰满很很操| 婷婷亚洲中文字幕在线| 国精精品无码一二三区水多多| 欧美成人精品欧美一级乱黄一区二… | 热热色中文无码| 亚洲污污网站| 色五月第四色| 国产老熟女| 日本午夜久久电影| 蜜臀操逼黄色视频操的好爽| 18禁免费视频| 伊人久久大香大香线蕉中文| 欧美日韩国产中文精品字幕自在自线, | 亚洲少妇综合| 亚州色图片在线色| 骚逼一区二区| 天天夜夜久久| 麻豆黄色五月天| 伊人久久艹| 3p国产欧美99热| 色色色色日本| 日韩欧美国产一区二区三区四区| 亚洲导航深夜福利| 国产99精品一区二区三区免费| 欧美一级A一级a爱片久久| 欧美在线|亚洲| 伊人久久亚洲中文字幕不卡| 欧美国产日韩清纯唯美| 亚洲第一页色| 天天看综合网| 蜜桃久久久久久久久久久久| 久久国产精品熟女人妻| 97干天天| 五月天亚洲网| 极品少妇久久久| 欧美另类丝袜熟女| 欧美色图 色综合图| 青青久久艹| 日韩精品资源| 蜜臀99精品国产高清在线观看| 春色综合免费| 校园春色第一页| 亚洲校园激情| 日日摸天天爽夜夜欢| 啪啪啪男女亚洲中文字幕99| 亚洲美女精品九九视频| 国内外内射高清视频| 超碰97在线中文| 97欧美色综合| 亚洲男人天堂网| 无码外流操逼视频| 精品区9| 一区=区三区视频| 欧美 日韩 另类 亚洲| 久草热制服丝袜在线观看| 国产一区二区三区,在线观看观看| 97精品在线| 久超碰这里只有精品| 亚洲欧美97| 色婷婷狠狠| 日本黄页视频在线观看| 久久久涩| PMv在线观看| 色天使亚洲综合在线观看| 亚洲免费在线探花| 久久婷婷热| 美日韩一卡二卡三卡免费人妻精品| 久久国产99精品72福利| 伊蕉97蜜桃97狠狠综合干| 成人在线午夜视频一区| 嗯嗯啊啊啊好爽| 欧美成熟性爱精品| 天堂8在线新版官网| 东京热亚洲一区二区| 99久久久无码| 欧美日韩亚洲少妇寂寞影院正在播放| 91欧洲国产成人久久精品网站| 绯色一区二区三区不卡少妇| 色五月首页| 久久久久久久久久久久黄色| 好涩综合| 日本色色色| 麻豆久久久久久久久丝袜| 亚洲色入欧美| 精品人妻一区二区三区日产| 五月丁香啪啪| 欧美色图人妻| 人妻偷拍一区二区三区| 日日夜夜天天| 国产在线精品电影观看| 欧美精品一区二区少妇免费A片| 99精品视频在线观看免费| 一本久道久久综合狠狠爱| 超碰在线人妻不卡| 日韩偷拍一区二区三区| 91亚·色| 屁股久久久久久久| 日本色色色| 91男同| a片 xxxx受爽视频| 五月综合色| 精彩久久中文| 综合久久久久久久综合网| 女人的久久久| 欧美激情综合| 精品无人区麻豆乱码久久久| 日本色色色网站免费看不卡| 亚洲AV资源| 伊人国产成人av网站| 五月天婷婷激情| 欧美九一精品久久久熟妇| 少妇3P性爱自拍| 91天射| 国产AV色黄看到爽| 伊人 俄罗斯 a v| 中日韩免费看男女操逼大全| 天天操天天射青青草| 超碰色老头| 一区二区日韩欧美久久| 九久久九九久视频| 秋霞无码av鲁丝片一区| 久草线上视频免费看| 久久国产乱子伦精品免费女人| 91九色丨国产丨爆乳| 亚洲国产97| 9 9精品一区二区三区| 久久久999国产精品| 日本片日本片祼观看网站在线看中文版网页在线看 | 国产精品999zyz| 91无摭挡| 国产欧美一区激情交| 少妇高潮九九九九九九九| 一区三区啪啪| 狠狠爱夜夜| 熟女丰满人妻一区| 强奸乱伦AV一天堂网| 天美麻花大全视频| 国产一区二区三区导航| 青青操日韩| 五月天婷婷激情| 激情综合网激情综合| 天天淫人人妻日日色| 97超碰站| 色五月AV在线| 婷婷视频在线免费观看| 清纯唯美激情| 青青草日逼视频| 国产精品高清2021在线| 乱子伦一区二区三区国产精品| 国产精品 久久久精品一牛| 啊啊啊啊在线播放| 99久久久无码| 亚洲最大成人a毛毛片| 91综合天天看| 日韩一999精品| 把腿张开老子CAO烂你| 嗯嗯嗯啊啊在线观看| 九九综合| 免费看国产曰批40分钟怎么下载| 欧美第五页| 国产夜夜艹| 四虎国产精品永久地址入口| 午夜精品久久久久久久| 伊人97色天使| 国产亚洲国产超碰| 欧美人与性动交a美精品| 曰本91情色| 天天做天天爽| 精品一区二区综合熟妇| 狠狠操使劲操| 中文字幕第7页| 欧美日日夜夜| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 久久香蕉综合一本到3atv| 夜夜高潮夜夜爽夜夜爱爱一区| 国产性感在线观看| 亚洲一区二区麻豆影院| 91小视频| 欧美一区二区福利在线| 91久久青青草原精品| 动漫区日韩区欧美区| 丁香六月婷| 亚洲天堂中文字| 黑人娇小av在线播放 | 乱伦一二三区| 欧州一区二区三区四区| 国产色图乱伦| 亚洲欧美999| 欧美,日韩,中文,另类| 日本黄色裸日本黄色裸体| 五月丁香色综合| 成人免费不卡在线视频| 日本中文字幕不卡视频| 香蕉视频欧美一卡二卡| 91肉片| 欧美姓爱综合网| 青草伊人久久| 丰满熟女人妻一区二区三五十一路| 午夜精品久久久久久久99热影院| 天天欧美色| 色婷婷五月综合激情中文字幕| 少妇xx精品| 欧美一区二区福利在线| 日韩激情毛片一级久久久| 蜜臀视频网站| 免费av在线播放二区| 欧美福利视频啊啊啊啊| 日本性爱欧美性爱| 97欧美精品| 超碰在线人人射| 色臀av| nuu12国产麻豆精品| 少妇特黄一区二区三区| 97在线免费视频观看| 青青操国产夫妻| 久久久久久久久国产| 91影视亚洲| 97欧美色综合| 超碰97中文| 激情综合 婷婷五月 红杏| 国产精品乱码久久久、久久| 色噜噜人妻av中文字幕| 天美精品原创av片国产| 亚洲高清无毛一区二区| 精品97久久| 婷婷五月丁香五月| 国产www色在线观看| 日本韩欧美在线播放a| 精品v日韩欧美国产| 一级黄色牲爱A级片| 人人射人人操人人摸| 日韩性爱视频免费在线 | 伊人色综合网| 激情图片伦理国产一区二区日韩| 国产夜夜操| 蜜臀av在线播放一区二区三区| 亚洲性综合9| 夜夜操天天肏| 日本东京热大香蕉a片| 天天舔天天日天天射| 久久风骚城市人| 欧美色图第一页| 69XX一中文字幕人妻91| 激情无码日韩| 天天欧美色| 日夜干射色啊| 久久区| 国产在线观看一区二区三区| 亚洲图片偷拍视频区| 韩国久久97| 白丝1区2区3区| 日本最新1区2区3区| 91久久婷婷| 亚洲欧美综合区自拍另类| 婷婷色播婷婷| 9999九九九久久久| A一区片| www.夜夜操| 麻豆人妻少妇在线免费观看| 久操免费观看| 一区二区三区 日韩欧美| 爱爱60秒免费视频| 青草精品视频一日本久久久久网站| 男女猛烈无遮掩视频免费软件| 久久久 国产精品| 欧美韩国你懂得在线 | AⅤ片水多多| 久久人人爽人人爽人人片Ⅴ| 青草影院内射高潮| 国产免费黄色一级大片| 国产原创自拍| 亚洲久草AV色图| 欧美伊人久久综合网| 99热综合| 久久久无码精品人妻二区| 久操网视频| 青青草精品| 另类图片综合| 久久久久久性爱片| 欧美激情久操网| 亚洲男人bt天堂| 欧美黑人日韩少妇色情| 曰本人妻人人澡人人夹| av久日| 久久首页| av 模特一区了| 人人潮人人摸| 97香焦色区| 天天操妹子| 日本二三四区| 99色色网| 久久久久久久久久va| 九九九九88| 黑人免费福利视频| 97视频在线免费看| 日韩免费中文字幕视频| 欧美A√综合网| 偷拍 亚洲 欧美| 亚洲女毛多水多21P| 96AV久久久| 婷婷探花久久精品一区| 九九黄色视频在线观看| 91色插| 99在线免费观看| 欧美天天| 久久久久久裸体| 九九九九久久久| 欧美性爱第一页久久| 欧美亚洲高清不卡| 色五月激情网| 欧美,日韩综合久久| 日韩三级天堂在线观看| 日本九九久久99播| 91N综合网在线| 国产丝袜视频| 天天综合网1| 最新亚洲黄色免费电影| 人妻丝袜肏逼| 久久久蜜桃一区二区三区| 国内一区二区免费| 99精品久久久久久| 中文字幕大片三级狠狠干| 欧美大香蕉久| 黑丝制服中文字幕| 久久做97| 青青草亚洲一区| av一区二区三区 中文| 国内毛片热久久思思热| 精品国产乱码久久久久久免费| 欧美色偷拍| 少妇高潮对白在线观看| 91久久九九精品国产综合| 欧美人妻一区二区| 91国产丝袜美女| 男人的天堂2018.| 99热91| 深夜国产一区二区三区在线看| 一区二区三区一亚洲中文字幕、综合区灬 | 亚洲综合色在线| 亚洲精品久久久久久久久豆丁网| 亚洲码专区| 欧美人人曰人人操人人射射| 亚洲欧美碰碰| 性感美女91影视| 福利天堂| 色九九九九| 野狼激情网| 亚洲成人免费在线| 成人资源中文字幕在线观看天天| 肉嘟嘟www视频在线观看高清| 日韩av性爱在线播放| 中韩中文字幕在线观看| 激情文学小说一区二区 | 日韩免费三级黄片电影| 999久久久免费精品国产牛牛| 亚洲欧美激情小说| 欧美日韩精品久久久久东北老熟妇| 中文字幕78| 富二代亚洲精品99| 99热导航| 国产第11页| 日本淫穴在线| 久久久久网站-538在线视频-欧美永久乱码| 亚洲天堂电影精品一区| 欧美精品成人亚洲| 少妇二级| 国产精品经典一卡久久久| 日本久操视频| 久久久久久久久久久久久久久乱码| 九九九九九九九精品视频| 国产自偷自拍一区| 色欧美天天| 欧美久久九九| 91爰爱欧美| 无码久| 亚洲精品久久一区二区三区蜜桃臀| 男人的天堂2000| 黄色片G G G| 久久精品人妻一区二区| 久久久久久无码人妻中文字幕| 日韩有码回春沙龙第一页| 夜夜国自区| 色婷婷日韩精品一区二区三区| 熟女熟妇一区二区三区视频| 中文不卡视频| 国产黄色剧情影片麻豆免费播放| 久久透逼视频| 5278欧美一区二区三区| 一本一道人妻久久一区二区三区| 蜜臀AV成人精品蜜臀AV久久| 国产精品第二页| 91久久久久久久| 久久久久久99999国产精品| 亚洲天堂久久| 午夜人人操| 国产又粗又长又爽又色| 久久免费老司机精品| 蜜桃精品视频一区| 99精品九九九九九九| 99热| 久久九九国产精品| 久久久蜜桃一区二区三区| 欧美高清性猛交| 青久久| 最近二区三区视频大全| 国产精品人妻熟女aⅴ| 日韩av影片在线观看| 青青11操操操操操操操操| 中文幕97| 国产精品播放| 丰满少妇乱子伦精品无| 99热色这里只有精品| 亚洲图片 激情小说| 欧美性高潮| 在线无码网站| 欧美大香蕉在线观看| 99精品无码| 国产精品成久久久久午夜午夜| 国产精品久久久久久无码红治院| 91美女中出| 国产一区二区三区久久精品太古里| 亚洲中文字幕av| 久久久99免费| 女同亚洲欧美一二三区久久电影| 99re这里只有精品2| 八戒午夜福利理论片| 国内91熟女人妻丝袜天天精品视频在线 | 欧美精品,四区。五区| 亚洲天堂男人的天堂| 亚洲天堂无码| 欧美猛交黑寡妇中文字幕| 91亚州| 日本欧美国内在线| 亚洲Av噜噜一区二区三区妖精| 久久超碰com| 欧亚免费视频| 欧美色道啊| 极品尤物自安慰| 国产有码一区| 日韩精品在线放| 素人美腿视频网站| 91色图| 欧美综合骚| 亚洲激情视频| 99爱视频| 色欲av国内精品久久久久久| 精品 码产区一区二-1080P高清在线www-B029AV| 97视频在线视频| 中文字幕精品一区二| 熟妇视频一区二区三区在线观看| 女人天堂av在线播放| 激情久久久| 78操B| 99亚亚热| 丰满人妻一区二区三区色-百度| 色99色| 深夜视频| 色综合美国| 加勒比伊人| 久久久久久久九九九九九九| 日日爱99| A啊啊在线观看| 人人操人人摸人人看人人干| 亚州男人的天堂| 久草国产在线视频| 精品无人区麻豆乱码1区2区图片 | 青青草导航在线视频| 日韩精品在线观看网站| 精品二区三四区五电影 | 欧美日韩 强奸乱伦| 亚洲性猛交| 操高情无码| 97伊人超碰| 加勒比大香蕉视频在线| 日韩欧美性吧婷婷乱伦大香蕉| 大稥蕉免费视频这里只有精品| 亚洲第一页第二页激情| 欧美成人色| 国产树林里野战在线看| 啊啊嗯嗯好爽| 人妻人人澡人人爽人人| 成人性爱电影一区二区| 亚欧色图在线激情| 国产免费久久精品99re韩国| 黄片免费看黄片免费看| 亚洲另类春色| 欧美大战久久久伊人| 婷婷五月天成人网| 国产日韩精品人妻久久久久色欲网站| 男人的天堂三级| 日本人妻一区二区| 国产尤物AV尤物在线观看不卡| 青草精品视频一日本久久久久网站| 国产精品久久9| av日韩国产一区二区| 亚洲一区二区中文字幕| 欧美一区二区成人一卡| 婷婷五月天成人| 26uuu性| 色97干| 丝袜亚洲91| 九九热免费视频| 99热99在线播放激情| 伦理第一页| 中文字幕人乱码中文字的预防方法 | 97天堂| 免费αⅴ在线观看| 亚洲久久久久| 97在线播放 | 白丝一区| 国产激情在线| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 亚洲人妻熟妇三十三区| 狠狠穞A片一區二區三區| 性色生活片久久毛片婬片免费放女人一级毛片| 欧美在线电影| 亚洲AV色图一区| 美日韩在线不卡人妻| 亚洲人妻一区二区三区| 青青草天天亲夜夜操网| 乳欲人妻办公室奶水| 一级久久性爱视频| 日本东京热加勒比久久| 亚洲天天做日日做天天谢日日 | 天天操天天插| www久| 国产女性无套 免费观看| 亚洲图片日本AⅤ欧美在线| 国产精品久久久久久久久久久久| 亚洲日精品| 欧美日韩精品青青| 日本天堂在线播放| 九一性生活免费视频| 99蜜桃臀亚洲成人在线观看| 女同性恋一区二区三区精品视频| 亚洲 综合 欧美| 久久99操天天日| 99热9| 狠狠狠狠狠狠| 久99| 天天欧美色| 色av中文字| 97资源制服丝袜| 91九久| 九月丁香婷婷| 麻豆AV96熟妇人妻| 国产第11页| www.男人天堂| 后入日本1234| 亚洲综合嫩| 成人性交免费视频| 九九九久久久| 欧美日韩国产另类综合| 中文字幕91页| 欧美精品日韩一区二区| 国产剧情一区在线观看| 日韩一级二级在线| ai欧美亚洲小说| 精品人妻伦一区二区三区久久| 夜夜嗨免费视频| 日本道人妻久久久在线不卡色视频| 99在线精品观看视频中文 | 超碰99在线观看| 婷婷五月天小说| 东北夫妻性偷拍| 东北女人的毛片| 精品国产久久乱码| 亚洲se91| 免费无码国产精品v片在线观看| 黄片免费久久久久久久| wwwss在线观看| 日韩一区二区熟女| 美女91av| 国产60页| AV污污污污| 久久久一区二区三区四曲免费听| 后入人妻一区| 亚洲天堂久久| 国产精品白丝在线播放| 黄色av片三级三级三级免费看| 日韩日韩日韩-国产乱码精品一区二区| www.超碰在线| 操屄日韩| 国产一区二区久久| 干婷婷综合网| 精品人妻丰满熟妇一区二区三| 久久久久久久久久久人妻| 在线岛| 亚洲精品日日夜夜52| 色五月综合| 欧亚日韩三区| 久 久无码人妻AV| 黄色激情电影在线观看| 婷婷五月天伊人| 黄在线| 成人综合色网| 超碰97最新人妻| 欧美亚洲中文字幕| 国产精品极品美女视频| 亚洲18禁| 97色欧洲| 国产无马视频| 极品内射| 丁香婷婷五月| 欧美日韩成人在线| 后入式999| 日韩无码a片| 久久手机好看网站| 久久这里只| 日本123区操B视频| 久久 久久国内精品亚洲| 你懂的在线观看区国产| 欧美黄页在线| 青青草一区二区高清无码视频 | 日韩乱码Av| 精品视频一区二区| 色伊人91| 极品AV网站在线观看| 91精品亚洲内射孕妇| 长长久久免费视频| 久9精品| 操碰97| 操久久久久| 婷婷五月综合在线| 素人伊尹大香蕉免费下载视频| 色综合久久av| 欧美后入视频| 91国产丝袜足交精品视频| 撸无码不卡免费视频| 一级黄色牲爱A级片| 乱子伦一区二区三区国产精品| 91视频伊人| 欧亚第一综合网| 国产强奸91| 精品亚州18| 欧美另类精品xxxx| 天天拍天| 国内三级自拍小视频在线观看| 欧美偷偷网| 国产免费一区在线观看| 日韩欧美三级| 欧美另类天堂| 欧美性爱超碰97| 久热精品在线国产| 久久久无码av精| 日韩成人大片在线观看| 中文字幕一二三区| 亚洲色综网| 丰满人妻区一区二区三| 亚洲天堂人妻熟妇视频| 日韩av熟女一区二区三区成人| 欧美亚洲综合高清在线| 超碰久久网| 午夜天堂精品久久久久91| 嗯嗯嗯不要不要免费视频| 成人无码专区精品视频| 粉嫩av一区二区三区四季| 温婉少妇玩3p| 蜜臀99久久国产| 午夜精品99久久久久传媒| 国产亚洲色婷婷久久99精品91 - 百度| 麻豆区99999| 人妻少妇被猛烈进入中| 狠狠躁久久躁| 91久青| 草草影院日本第一页| 久久久三区二区一区| 亚洲中文字幕97久久精品少妇| 亚洲加勒比| 极品后入免费视频| 丁香六月激情| 精品人妻1区| 男人的天堂三级| 欧美黑人猛交春色影视大全| 欧美亚洲第一页| 色欧美在线| 夜夜操91744565| 国产精品久久久久久片| 97欧美综合| 亚洲精品白丝| 天天日日日射| 婷婷伊人网| AV一起草在线| 精精品人妻一区二区三区| 久久蜜桃综合网| 日韩成人综合网| 亚洲色图尤物视频| 午夜精品久久久久久久久久久久久| 男人的天堂色偷偷青青草视频婷婷网| 黑人精品成人一区二区三区| 神马久久久久久| 人妻喷水| 亚欧中文字幕在线视频| 亚洲黑丝在线| 综合自拍| 亚洲蜜乳av| 中文字幕丰满人妻日本| 欧美后入式| 60秒免费小视频| 超碰爽人妻熟女Av| www.99色| 亚欧高清v| 白天啪啪晚上啪啪视频| 国产精品美女久久久久久网站| 久久婷婷苹果| 婷婷九月国产| 97国产色图 | 色婷婷婷五月天激情四射| 婷婷五月天福利| 国产一级αv免费看片| 高潮毛片无遮挡高清免费| 国产精品久久久久久久久久久久| 欧美第五页| 亚洲午夜蜜臀| 精品女同一区| 热久久无毒不卡| 亚洲91综合| A一级色女| 激情黄色五月天| 九九国产热| 亚洲日产专区婷婷| 欧美亚洲涩涩| 亚洲欲| 日日嗨AV一区二区夜夜| 成人欧美日超碰| 婷婷15月天青娱乐| 日韩精品三级片长长久久| 青青青青草av在线观看| 亚洲视频一二区| 欧美亚洲AN| 精品一区二区三区四区外站| 一区二区国产视频在线观看| 日韩图区| 9997se| 天天操天天干美女网址导航| 国产精品夜夜夜| 亚洲春色欧美| 后入国产| 日韩精品资源专区二区| 强奸抽插av| 中文字幕一区二区免费在线| 精品人妻一区二区视频| 秋霞免费AV| 色99在线| 少妇被玩视频二三区| 嗯嗯啊啊视频一区二区三区| 亚洲十八禁止| 欧美日韩小说| 91天天综合| 婷婷丁香九月| 92午夜免费福利视频| 另类天堂| 伊人大香蕉在线| 日本孕妇孕交| 91精品人妻一品二品三品| 97在线免费| 天天操天天射天天日| 女同性恋久久| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 日本操BAV| 一二三四免费视频| 亚州春色| 久久婷婷成人综合色怡春院| 日本操逼视频在线| 亚洲情色中文字幕一区| 日韩有码一区三区| 人妻少妇三级| 欧美成人精品欧美一级乱黄一区二…| 人人爱人人乐人人操| 特级毛片特黄久久免费看| 久久婷婷五月天| 天美欧美国产| 美女网站91| 99色热国产视频精品| 六月丁香五月婷婷| 国产亚洲日本| 日韩97| 亚州AV无码国产精品| 久久久久久久久久久97| 人人操人人精品影片| 成人a v在线播放免费| 亚洲精品人妻吞精av | 亚洲AV无码翔田千里网站| 亚洲免费看片| 精品无码人妻一区二区免费蜜桃| 我想要 啊 啊 啊| 国产91精品福利在线| 1024亚洲中文字幕久在线看片你懂的| 久久久99999久网站| 午夜毛片亚洲精品片国产久久久| 91足交| 国产女同性恋视频| 青娱乐啪啪视频| 大地资源在线观看中文第二页| 久久的网站啊啊啊啊啊| 78精品| 亚洲强奸乱伦影视网| 天天综合影院91| 一区二区影视| 麻豆国产免费影片| 国产天美传媒精品| 性爱综合一区二区| 亚洲色天堂日韩中| 91日韩网站| 强奸乱伦大香蕉网| 人妻天天爽| 国产一区二区在线播放量| 亚州精人品大香蕉| 一区二区视频在看| 国产精品视频精品一二| 97视频在线视频| 一区二区三区黄色片a| 开心六月色| 97超碰人人模人人拍人人| 素人播放一区| 精品一区二区三区麻豆| 9久久精品| 一本色道久久综合精品婷婷| 国产精品久久伊人| 熟女熟妇一区二区三区视频| 亚洲蜜桃V妇女| 91精品久久久久久77777| 岛国黄| 蜜桃一区二区三区| 加勒比在线视频一区二区三区| 操死我了嗯嗯嗯| 亚洲最新av无码成人精品区| 男人天堂综合| 能在线播放的国产三级| 人妻天天爽| 亚欧高清在线| 清纯唯美第一页| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 涩五月婷婷| 亚洲动态色图| 国产人伦精品一区二区三区| 欧美传媒| 久久精品国产精品| 在线观看国产黄色| 精精品人妻一区二区三区| 五月婷婷综合在线| 午夜精品久久一区二区| 青娱乐大香蕉| 日韩人妻免费精品| 亚洲性高潮| 夜夜操天天肏| 再深点灬舒服灬太大了添视频| 好淫网一二三视区| 成人七区| 精品人妻少妇| 后入人妻一区| 午夜一区二区三区国产| 高潮9999外国| 久久久9品一区二区三区| 亚洲无码太久| 呻吟 欧美 日本 中出| 91一区二区| 日韩美女啪啪一区| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 亚洲综合九九| 成人热久久精品| 曰韩av中文字幕专区| 亚洲色图图片| 91女优在线观看| 婷婷久草一区二区三区| 欧美一区二区三区四区综合| 超碰视97中文| 伊人五月天青青草婷婷| 思思热影视| 九七超碰| 亚洲影视第一页| 久久久久久久久久久97| 免费A V在线播放| 亚洲婷婷丁香在线| 肉丝中文无码高清| 成人日本精品九区| 第一高清av中文字幕| 高清国产无码av| 欧日韩一二三f区| 粉嫩AV一区夜夜嗨| www.91色综合| 欧美三级中文字幕hd| 国产高清亚洲日韩一区| 干妹子| 亚州色图欧美| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 黄色网址在线免费观看| 熟女乱3伦999| 青青操国产夫妻| 91日日夜夜| 伊人国产视频| 青青草吊丝| 欧美极品女人的天堂| 精品人妻美妇91job| 国产一区二区三区免费视频在性观看| 啊啊啊啊啊啊啊啊视频| 97在线亚洲| 亚洲色图欧美色图制服诱惑| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 芊芊操逼视频无码| 色欲Av人妻精品一区二| 9久久精品| 激情文学亚洲| 亚洲极品| 91少妇通奸网站| 狠狠图片青青草| 日本精品人妻少妇一区二区| 久久一二三四五六七八九区区区| 精品黑人一区二区| 国产精品无码在线| 岛国视频免费在线观看| se01国产在线视频| 黄色av网站在线播放| 国产家庭乱伦表演| 国产在线综合福利网站| 天天综合网日韩| 啊啊啊啊啊啊在线观看| 97天天| 91精品国产一区三一| 久久久性爱| 亚洲色交| 97资源久久| 91色艳| 日本精品人妻少妇一区二区| 狠狠狠一区二区三区| 亚洲综合春色| 污到发麻的视频 国产| 久9久| 亚洲 欧美 小说| 丰满搜索结果 -第18页- 久久高清无码 | 国内偷自视频区视频综合| 好屌色综合| 天堂蜜桃无码视频一区二区| 少妇熟女1区2区3区| 伊人久久大香线综合无码| 日本不卡码黄色| 中文字幕蜜乳av| 亚洲美女精品九九视频| 东京热大香焦| 欧美与日韩97| 久久大精品乱码视频人妻熟女| 久久久∴| 欧美亚洲色的图| 国产辣妈在线视频福利| 久久久久久99999国产精品| 偷拍欧美激情| 久久国产视频性吧| 手机在线观看不卡无码av| 国产亚洲精品一区二区三区| 日韩9区| 加勒比色99999| 亚洲一区二区 麻豆传媒| 欧美暴力猛交| 色老汉色| 日韩二级| 四虎国产成人精品免费一女五男| 亚洲伊人久久精品狠狠在线| 日本高清加勒比| 久久超碰久| 中文字幕 国产 精品| www久久国产精品| 97欧美综合| 欧美在线天堂| 久热大香蕉| 人人看人人摸人人色| 久久毛卡| 99操视频| 麻豆性爱视频在线播放| 四虎免费视频| 国产精品日日摸夜夜添骚逼| 亚洲欧洲综合成人av一区| 99自拍视频在线观看| 内射中出日韩在线观看视频| 亚洲欧美日韩免费电影| 伊人久久大香线蕉无码| 91爆操视频| AV天堂丝袜| 丝袜喷水在线| 男人天堂 天天射| 久久精品国产97欧美精品亚洲 | 亚洲国产av中文字幕久久| 久久久久久国产精品免费网站| 在线黄页看毛片| 亚洲自拍欧美色综合| 超碰九7| 国产浮力影院第1页| 青青11操操操操操操操操| 欧美九一精品久久久熟妇| 久久av无码| 人妻激情另类| 97伊人超碰| 日本欧美一区二区三区免费| 中文字暮97| 麻豆一区二区AV天美| 女同女同恋久久级三级| 奸色色 男人天堂 天天射| 国产黑白丝在线| 国产精品免费日韩| 老熟女区| 91无码西班牙视频在线| 97人人干| 91操熟女视频| 国产精品免费视频人成| 久9久9精品| 一个人免费视频观看在线WWW| 农村妇女一级二级三级视频| 97久久国产精品| 亚洲无码一二三区| 性爱欧美五月| 香伊人在线| 蜜桃不卡一区二区| 超碰日韩人妻| 超碰爽人妻熟女Av| 亚州综合色| 男人的天堂不卡一区二区| 玖玖无码超碰| 中文字幕亚洲在线一区| 奸色色 男人天堂 天天射| 中国AV美女| 国产久久一区二区三区野外在线| 天天日天天干少妇日| 先锋精品av色鲁| 亚洲性高潮| 资源在线观一 二| 美欧色综合| 99少妇精品视频| 亚洲伊人成综合成人网| 色一射色一射| a片自拍直播视频| 五月婷婷hd| 亚洲三区视频| 亚洲91大片| 亚洲福利中文字幕在线| 日韩AV电影网站| 午夜啪| 伊人久久亚洲色欲综合网站 | 午夜性生活av免费在线看| 男人天堂久久精品| 女欧美一区二三区| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 久久9精品视频| 久久久久九九九| 夜夜国产一区| 天天爽爽爽爽| 色综合久久888| 91处女视频在线观看| 精品人妻中文字幕高清| 久久男人网| 亚洲一欧洲中文字幕在线| 97人人色| 99久久这里只有精品| 亚洲97成人在线观看| 91国精产品| 国产亚洲色婷婷久久99精品91| 精品午夜福利| 日日骚 av| 人人插人人搞人人操| 屁股久久久久久久久久| 日韩精品9999| 激情色播| 一级人妻性爱视频| 精品无码一区二区三区| 男人的天堂2018东京热啪啪啪| 国产特级毛片AAAAAA高潮流水| 久久人妻一区二区三区高清| 欧美|91色综合| 国产亚洲精品美女久久久m| 亚洲精品国产拍免费91在线| 亚洲一二三精品久久网| 亚洲AV无码国产精品久久久久 | 热无码中文亚洲H一道本一区二区| 日韩黄片影院| 国产91丝袜在线播放蜜月| 亚洲天堂,男人| 国产成人午夜视频网址| 91丰满| 美国久久一二三四| 大香蕉人妻| 蜜乳Av成人片网站| 亚洲欧美不卡线| 亚欧洲一区二区视频| 不卡超碰护士AV在线免费播放| 久久精品中文字幕无码l| 91视频在线观看18| 夜夜免费视频| 日韩精品人妻系列无码天堂| 色啪网| 日韩欧美成人性爱在线| 欧美亚洲中文| 天天射天天色成人| 伊人aaa| 中文字幕乱碼在线| 天天爱天天韩国日本牛牛牛牛| 精品九九国产无码| 国内毛片热久久思思热| 日韩精品人妻中文字幕不卡乱码| 亚洲天堂自拍| 国产精品天美传媒| 99视频内射三四| 中文字幕aⅴ在线视频| 国产乱伦亚洲色图高清无码| 久久这里只| 天堂亚洲精品| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 亚洲图片欧洲图片aⅴ| 日本一区二区三区免费观看| 蜜臀99精品国产高清在线观看| 久久中文字幕女同性恋一区| 午夜福利在线视频1000| 欧美色图私拍91| 淫色网综合| 91女人的网站| 旡码电影特区| 男女打扑克高清网站| 久久女人一区二区三区| 婷婷五月天av| 日本在线不卡一二区| av资源在线播放天堂| 91小视频| 日韩乱伦视频| 久精品无码av一区二免费国产在线观看| se01国产在线视频| 国产专区第一页| 日韩在线观看字幕精品| 99久久婷婷丁香| 国产亲戚伦亲在线| 一区二区三区视频在线观看免费| 干b在线性社区| 丝袜狠狠草尤物人妻av91| 高清不卡视频| 精品国产91久久久久久一区黄无| 九九久久久久久爱| 国产精品肉丝自拍| www.高清无码诱惑一区.com | 日日日日做夜夜夜夜做无码97| 丝袜色综合| 久久婷婷一区| 91熟女丨91老女人| 大香蕉一级黄色片久久| 1769一区| 精品人妻一区二区视频| 激情综合二| 六十路日本|