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

ARTICLE DETAIL

資訊詳情

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

RTP H.264 保存為 .h264:拆包重組與 Annex-B 寫盤避坑

RTP H.264 保存為 .h264:拆包重組與 Annex-B 寫盤避坑 簡介這份代碼包聚焦RTP承載H264的解析與落盤面向具備C和網(wǎng)絡(luò)編程基礎(chǔ)、正在做監(jiān)控視頻、流媒體轉(zhuǎn)發(fā)或UDP實(shí)時(shí)取流的開發(fā)者可用于把攝像頭RTP數(shù)據(jù)重組為可播放的H264文件。壓縮包共14個(gè)文件以6個(gè)h頭文件和4個(gè)cpp源文件為主體另含Visual Studio工程、篩選器、用戶配置及說明文檔整體約9KB體量輕便便于導(dǎo)入IDE查閱和調(diào)試。已有1032人學(xué)習(xí)下載適合作為協(xié)議解析與工程實(shí)現(xiàn)的對照參考。代碼圍繞服務(wù)端接收與公共工具模塊展開涵蓋RTP包頭解析、NAL單元邊界識別與重組、UDP數(shù)據(jù)接收以及H264 Annex B寫入等環(huán)節(jié)讀者可據(jù)此理解分包處理、順序恢復(fù)與丟失標(biāo)記修復(fù)思路并在此基礎(chǔ)上改造成自己的取流落盤工具。對于需要排查花屏、丟包與時(shí)間戳錯(cuò)位問題的讀者也能從代碼結(jié)構(gòu)中獲取可復(fù)用的處理線索。1. RTP 數(shù)據(jù)保存為 .h264 文件先分清收到的是流還是幀把 UDP 上的 rtp h264 數(shù)據(jù)保存成一個(gè)能雙擊播放的 .h264 文件看起來只是收包加寫文件實(shí)際最容易出問題的地方在載荷層RTP 頭、FU-A 分片、STAP-A 聚合、Annex-B 起始碼任何一處對不上文件就會(huì)“有體積、沒畫面”。這份資源適合兩類人一是做 IPC、錄播、無線圖傳的嵌入式或后端工程師手里有 RTP 流但需要一個(gè)最小可用的保存工具二是剛接觸 H.264 封裝、想從抓包一路走到可播放裸流的學(xué)習(xí)者。下面按“拆包、重組、寫盤、驗(yàn)收”的順序把可參考的腳本和實(shí)際踩過的坑一次講清。2. 拆 RTP 載荷12 字節(jié)頭、三種封裝與 NAL 邊界RTP 收到的是“包”H.264 解碼器要的是“NAL 單元”。中間這層轉(zhuǎn)換并不復(fù)雜但字段含義必須摳準(zhǔn)。我見過最常見的誤操作是把recvfrom收到的整段 buffer 直接追加到文件末尾結(jié)果文件里混進(jìn)了 RTP 頭、FU-A 分片頭播放器只能靠運(yùn)氣解出第一幀。2.1 RTP 固定頭里真正要用的四個(gè)字段RTP 固定頭最少 12 字節(jié)后面還可能跟 CSRC 列表、擴(kuò)展頭、填充字節(jié)。寫保存工具時(shí)不需要實(shí)現(xiàn)完整協(xié)議棧但下面幾個(gè)字段必須讀對字段位寬實(shí)際用途版本 V2 bit必須為 2不是 2 直接丟包填充 P1 bit末尾有填充最后一個(gè)字節(jié)是填充長度擴(kuò)展 X1 bit固定頭后有擴(kuò)展長度按 32 位字計(jì)算CSRC 計(jì)數(shù) CC4 bit固定頭實(shí)際長度 12 4×CC標(biāo)記 M1 bit常用來標(biāo)一幀的最后一個(gè)包但不能完全依賴載荷類型 PT7 bit動(dòng)態(tài)類型 96–127 常見要和 SDP 對上序列號16 bit判丟包、亂序回繞按 16 位處理時(shí)間戳32 bit同一幀內(nèi)相同幀間遞增H.264 常見 90 kHzSSRC32 bit同一端口多路流時(shí)用來過濾計(jì)算載荷偏移時(shí)先算12 cc * 4如果X1再讀擴(kuò)展頭前 4 個(gè)字節(jié)其中后 2 字節(jié)是擴(kuò)展長度單位是 32 位字所以還要加4 ext_len * 4。如果P1最后一個(gè)字節(jié)是填充長度載荷末尾要減掉。這個(gè)偏移算錯(cuò)后面所有 NAL 解析都會(huì)錯(cuò)位。序列號是 16 位無符號數(shù)從 65535 回到 0 是正?;乩@。判斷丟包不要寫seq ! last_seq 1而要用((seq - last_seq) 0xFFFF) ! 1。時(shí)間戳也不是毫秒H.264 常用 90 kHz 時(shí)鐘同一幀的多個(gè)分片時(shí)間戳相同換幀才遞增。標(biāo)記位 M 在 H.264 里通常表示一個(gè)接入單元結(jié)束但有些發(fā)送端按切片設(shè)置不能把它當(dāng)成唯一的幀邊界。2.2 單 NAL、STAP-A、FU-A三種封裝怎么識別H.264 的 RTP 載荷格式由 NAL 頭低 5 位決定常見就三類nal_type名稱處理方式1–23單 NAL直接加起始碼寫文件24STAP-A一個(gè) RTP 里聚合多個(gè) NAL按 2 字節(jié)長度切25STAP-B帶 DON少見不要按 STAP-A 硬解26MTAP16交織封裝少見27MTAP24交織封裝少見28FU-A分片首字節(jié)是指示第二字節(jié)含 S/E/類型29FU-B帶 DON 的分片少見單 NAL 最好處理載荷本身就是完整 NAL前面補(bǔ)00 00 00 01就能寫。STAP-A 的載荷第 1 字節(jié)是聚合頭后面重復(fù)“2 字節(jié)大端長度 NAL 數(shù)據(jù)”要循環(huán)切完。FU-A 最容易寫錯(cuò)第 1 字節(jié)的低 5 位是 28高 3 位是原始 NAL 的 F 和 NRI第 2 字節(jié)最高位 S 表示分片開始次高位 E 表示分片結(jié)束低 5 位才是原始 NAL 類型。重組時(shí)原始 NAL 頭是(fu_ind 0xE0) | (fu_hdr 0x1F)不是直接把兩個(gè)字節(jié)都塞進(jìn)去。FU-A 分片只在第一片寫一次 NAL 頭中間分片只追加數(shù)據(jù)最后一片收齊后整體加起始碼寫文件。很多人給每個(gè)分片都加起始碼解碼器會(huì)把每個(gè)分片當(dāng)成獨(dú)立 NAL第一幀之后基本就廢了。STAP-A 里如果帶 SPS/PPS也要按順序?qū)懗鰜聿灰蝗〉谝粋€(gè) NAL。2.3 用 Python 解出第一層UDP 收包與 RTP 頭解析先不寫文件只把 RTP 頭解析出來打印確認(rèn)序列號、時(shí)間戳、標(biāo)記位和 NAL 類型符合預(yù)期。這一步花十分鐘后面能省掉大量“文件為什么不能播”的排查。import socket import struct def parse_rtp(pkt): if len(pkt) 12: return None b0, b1 pkt[0], pkt[1] version b0 6 if version ! 2: return None padding (b0 5) 0x01 extension (b0 4) 0x01 cc b0 0x0F marker (b1 7) 0x01 pt b1 0x7F seq, ts, ssrc struct.unpack(!HII, pkt[2:12]) offset 12 cc * 4 if extension: if len(pkt) offset 4: return None ext_len struct.unpack(!H, pkt[offset 2:offset 4])[0] offset 4 ext_len * 4 end len(pkt) if padding: pad_len pkt[-1] end - pad_len payload pkt[offset:end] if not payload: return None nal_type payload[0] 0x1F return { seq: seq, ts: ts, ssrc: ssrc, pt: pt, marker: marker, nal_type: nal_type, payload: payload, } sock socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 4 * 1024 * 1024) sock.bind((0.0.0.0, 5004)) while True: pkt, addr sock.recvfrom(65535) info parse_rtp(pkt) if not info: continue print( info[seq], info[ts], info[marker], info[pt], info[nal_type], len(info[payload]) )這段代碼的重點(diǎn)不在print而在三個(gè)邊界cc決定固定頭后面有沒有 CSRCextension決定要不要跳過擴(kuò)展頭padding決定末尾要不要減掉填充。少算一個(gè)payload[0] 0x1F拿到的就不是 NAL 類型。SO_RCVBUF設(shè)在bind之前才生效Linux 下內(nèi)核會(huì)把設(shè)置值翻倍實(shí)際可用大小可以用getsockopt再看一眼。跑起來后觀察輸出如果nal_type長期是 28說明這路流大量使用 FU-A 分片如果出現(xiàn) 24說明有 STAP-A 聚合如果一直是 1–23說明是單 NAL 打包。marker1的包通常是一幀的最后一個(gè)包但先別急著依賴它下一步寫文件時(shí)還要結(jié)合時(shí)間戳變化。3. 寫 Annex-B起始碼、SPS/PPS 與寫盤順序RTP 拆出來的 NAL 不能直接拼成.h264。裸流文件需要 Annex-B 格式每個(gè) NAL 前面有起始碼而且 SPS/PPS 必須出現(xiàn)在 IDR 之前。很多“文件有大小、播放器不識別”的問題根源不是收包而是寫盤格式不對。3.1 裸流為什么必須是 Annex-BH.264 有兩種常見封裝Annex-B 用00 00 00 01或00 00 01分隔 NALAVCC 用 4 字節(jié)大端長度前綴。.h264裸流一般按 Annex-B 處理.mp4里的視頻軌才用長度前綴。你把 AVCC 格式直接寫成.h264ffplay 可能報(bào)“Invalid NAL unit size”因?yàn)榻獯a器把長度字段當(dāng)成起始碼在找。起始碼用 4 字節(jié)更穩(wěn)00 00 00 01。3 字節(jié)也合法但和某些 NAL 數(shù)據(jù)開頭的00 00 01容易混淆調(diào)試時(shí)不好判斷。寫文件時(shí)統(tǒng)一用 4 字節(jié)讀的時(shí)候兩種都認(rèn)能減少一半玄學(xué)問題。還有一個(gè)細(xì)節(jié)不要在每個(gè) RTP 包前加起始碼而要在每個(gè)完整 NAL 前加。單 NAL 包好辦FU-A 必須等最后一片收齊再寫STAP-A 要拆成多個(gè) NAL 分別寫。這個(gè)順序錯(cuò)了文件看起來很大實(shí)際解碼器只能認(rèn)出第一幀。3.2 SPS/PPS 從哪來SDP、帶內(nèi)與首包緩存SPS/PPS 是解碼器的“說明書”沒有它們IDR 幀也解不出來。常見來源有三個(gè)SDP 里的sprop-parameter-sets。例如afmtp:96 packetization-mode1;profile-level-id42e01f;sprop-parameter-setsZ0LgH...,aM48g...逗號前是 SPS 的 Base64逗號后是 PPS。帶內(nèi)發(fā)送。有些編碼器在 IDR 前先發(fā) SPS/PPSRTP 里能看到nal_type7和nal_type8。抓包工具里手動(dòng)提取。只有前兩種都拿不到時(shí)才用容易抄錯(cuò)。從 SDP 解參數(shù)集可以這樣寫import base64 # 從 SDP 的 fmtp 行里取逗號前后分別是 SPS 和 PPS 的 Base64 sprop base64_sps,base64_pps sps_b64, pps_b64 sprop.split(,) sps base64.b64decode(sps_b64) pps base64.b64decode(pps_b64) with open(out.h264, wb) as f: f.write(b\x00\x00\x00\x01 sps) f.write(b\x00\x00\x00\x01 pps)如果 SDP 里沒有sprop-parameter-sets就在收流時(shí)緩存nal_type7和nal_type8等第一個(gè) IDR 到來前補(bǔ)寫。帶內(nèi)參數(shù)集可能會(huì)變比如分辨率切換遇到新的 SPS/PPS 要重新寫不要只認(rèn)第一次。提示profile-level-id只能說明檔次和級別不能代替 SPS/PPS。只寫這個(gè)字段解碼器仍然沒有完整的參數(shù)集。3.3 完整的收流寫文件腳本下面這個(gè)腳本把 UDP 收包、RTP 解析、FU-A 重組、STAP-A 拆分、Annex-B 寫盤串在一起。它不依賴第三方庫適合先跑通最小鏈路再按項(xiàng)目需要加隊(duì)列、切片和重連。import socket import struct import sys START_CODE b\x00\x00\x00\x01 class H264Writer: def __init__(self, path, spsNone, ppsNone): self.f open(path, wb) self.sps sps self.pps pps # 如果 SDP 已經(jīng)給了參數(shù)集先寫文件頭 if self.sps and self.pps: self.f.write(START_CODE self.sps) self.f.write(START_CODE self.pps) self.param_written True else: self.param_written False self.fu_buf None self.last_seq None def _write_nal(self, nal): if not nal: return nal_type nal[0] 0x1F if nal_type 7: self.sps nal elif nal_type 8: self.pps nal # 沒有 SDP 參數(shù)集時(shí)在第一個(gè) IDR 前補(bǔ)寫緩存的 SPS/PPS if nal_type 5 and not self.param_written and self.sps and self.pps: self.f.write(START_CODE self.sps) self.f.write(START_CODE self.pps) self.param_written True self.f.write(START_CODE nal) # 帶內(nèi)收到 SPS/PPS 也算已寫參數(shù)集 if nal_type in (7, 8) and self.sps and self.pps: self.param_written True def push(self, pkt): if len(pkt) 12: return b0, b1 pkt[0], pkt[1] if (b0 6) ! 2: return cc b0 0x0F extension (b0 4) 0x01 padding (b0 5) 0x01 marker (b1 7) 0x01 seq, ts, ssrc struct.unpack(!HII, pkt[2:12]) offset 12 cc * 4 if extension: if len(pkt) offset 4: return ext_len struct.unpack(!H, pkt[offset 2:offset 4])[0] offset 4 ext_len * 4 end len(pkt) if padding: end - pkt[-1] payload pkt[offset:end] if not payload: return # 序列號不連續(xù)只記錄不在這里直接丟流 if self.last_seq is not None: gap (seq - self.last_seq) 0xFFFF if gap ! 1: print(fseq gap: {self.last_seq} - {seq}, gap{gap}, filesys.stderr) self.last_seq seq nal_type payload[0] 0x1F if nal_type 28: # FU-A fu_ind payload[0] fu_hdr payload[1] start (fu_hdr 7) 0x01 end_flag (fu_hdr 6) 0x01 real_type fu_hdr 0x1F if start: self.fu_buf bytearray() # 重建原始 NAL 頭F/NRI 來自 fu_ind類型來自 fu_hdr self.fu_buf.append((fu_ind 0xE0) | real_type) if self.fu_buf is None: return self.fu_buf.extend(payload[2:]) if end_flag: self._write_nal(bytes(self.fu_buf)) self.fu_buf None elif nal_type 24: # STAP-A i 1 while i 2 len(payload): size struct.unpack(!H, payload[i:i 2])[0] i 2 nal payload[i:i size] i size if nal: self._write_nal(nal) elif 1 nal_type 23: self._write_nal(payload) if marker: self.f.flush() def close(self): # 不完整的 FU-A 直接丟棄避免寫壞幀 self.fu_buf None self.f.close() if __name__ __main__: listen_ip 0.0.0.0 listen_port 5004 out_path out.h264 sock socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 8 * 1024 * 1024) sock.bind((listen_ip, listen_port)) # 參數(shù)集可從 SDP 解出來后傳進(jìn)來這里留空表示依賴帶內(nèi) SPS/PPS writer H264Writer(out_path) print(flistening {listen_ip}:{listen_port} - {out_path}) try: while True: pkt, _ sock.recvfrom(65535) writer.push(pkt) except KeyboardInterrupt: pass finally: writer.close() sock.close()代碼里的參數(shù)不多但每個(gè)都影響結(jié)果參數(shù)作用建議listen_ip監(jiān)聽網(wǎng)卡本機(jī)測試用0.0.0.0生產(chǎn)可綁定具體網(wǎng)卡listen_portRTP 端口常用偶數(shù)端口5004 只是示例SO_RCVBUF內(nèi)核收包緩沖2–8 MB先設(shè)再 bindout_path輸出裸流先用短文件名避免路徑權(quán)限問題sps/pps參數(shù)集能從 SDP 拿就從 SDP 拿拿不到靠帶內(nèi)_write_nal里做了兩件事遇到 SPS/PPS 就緩存遇到 IDR 且參數(shù)集還沒寫就補(bǔ)寫。這樣即使發(fā)送端沒有在 IDR 前發(fā)參數(shù)集只要之前收到過 SPS/PPS文件頭也能補(bǔ)上。STAP-A 分支按 2 字節(jié)長度循環(huán)注意i 2和i size不能漏否則會(huì)死循環(huán)或切出錯(cuò)誤 NAL。FU-A 分支只在start1時(shí)新建 bufferend1時(shí)寫盤中間分片只追加數(shù)據(jù)。marker1時(shí) flush是為了讓文件在錄制過程中也能被播放器讀到完整幀不是必須但調(diào)試方便。4. 避坑與排查文件有大小卻沒畫面的五種現(xiàn)場4.1 文件幾十 MB播放器只顯示第一幀現(xiàn)象.h264文件體積不小ffplay 能出第一幀之后黑屏或卡住。原因最常見的是把 RTP 頭一起寫進(jìn)了文件或者給每個(gè) FU-A 分片都加了起始碼。解碼器在第一幀碰巧能同步后面讀到的是“起始碼 FU-A 指示字節(jié) 分片數(shù)據(jù)”NAL 類型對不上直接停止。解決用十六進(jìn)制工具看文件頭正常應(yīng)該是00 00 00 01 67或00 00 00 01 65開頭。如果看到80 60這類 RTP 頭字節(jié)說明偏移算錯(cuò)如果每個(gè)分片前都有00 00 00 01把起始碼移到 FU-A 重組完成之后。4.2 畫面下半部綠塊幾秒后花屏現(xiàn)象能播但畫面局部綠塊、馬賽克運(yùn)動(dòng)場景更明顯。原因FU-A 丟包或亂序。一個(gè) FU-A 幀少一個(gè)分片整幀數(shù)據(jù)不完整如果腳本還把不完整的分片寫進(jìn)文件解碼器會(huì)繼續(xù)用壞幀預(yù)測后面幾幀也跟著花。解決按序列號做小窗口重排窗口不用大2–4 個(gè)包足夠發(fā)現(xiàn)丟包時(shí)當(dāng)前 FU-A 直接丟棄等到下一個(gè)start1或下一個(gè) IDR 再繼續(xù)寫。寧可少一幀不要把半幀寫進(jìn)文件。日志里記錄seq gap方便判斷是網(wǎng)絡(luò)丟包還是處理太慢。4.3 ffplay 報(bào) Invalid NAL unit size 或直接退出現(xiàn)象ffplay 打不開文件ffprobe 報(bào) “Invalid data found when processing input”。原因?qū)懗闪?AVCC 長度前綴或者起始碼字節(jié)序?qū)戝e(cuò)。比如把00 00 00 01寫成01 00 00 00或者把 NAL 長度當(dāng)成起始碼寫進(jìn)去。解決確認(rèn)每個(gè) NAL 前是00 00 00 01不是 4 字節(jié)長度。用xxd -l 64 out.h264看一眼前幾個(gè)字節(jié)應(yīng)該是0000 0001 67或0000 0001 68。如果是0000 001f 67這種說明寫的是長度字段。4.4 收流幾分鐘后開始丟包文件時(shí)間軸斷裂現(xiàn)象剛開始正常幾分鐘后花屏增多日志里seq gap密集出現(xiàn)。原因recvfrom處理太慢或者收包循環(huán)里做了阻塞寫盤、打印、加鎖。UDP 沒有重傳內(nèi)核緩沖區(qū)一滿就丟包。SO_RCVBUF設(shè)得太小也會(huì)提前丟。解決收包線程只做recvfrom和入隊(duì)寫盤放到單獨(dú)線程減少收包循環(huán)里的printSO_RCVBUF調(diào)到 4–8 MB并在bind之前設(shè)置。如果還丟檢查網(wǎng)卡中斷和 CPU 占用不要先懷疑協(xié)議。4.5 同一端口換一路流文件里混進(jìn)別的畫面現(xiàn)象一個(gè)端口上跑多路 RTP保存出來的文件畫面跳來跳去。原因沒有按 SSRC 或載荷類型過濾。RTP 允許同一端口多個(gè) SSRC動(dòng)態(tài) PT 也可能不同。腳本如果見包就收自然會(huì)把兩路流拼在一起。解決從 SDP 或首包確定目標(biāo) SSRC后續(xù)只處理相同 SSRC 的包同時(shí)校驗(yàn) PT 是否在預(yù)期范圍。多路流最好分端口實(shí)在要復(fù)用就在腳本里加過濾條件別等文件壞了再回頭查。5. 驗(yàn)收用 ffprobe 和 ffmpeg 把“能播”拆成可檢查項(xiàng)文件寫完不等于任務(wù)完成。我一般會(huì)跑三步驗(yàn)收ffprobe 看流參數(shù)ffmpeg 解碼看錯(cuò)誤抓包對照看包數(shù)。三步都過再交給別人用。5.1 ffprobe 看 profile、分辨率、幀數(shù)先看基礎(chǔ)信息ffprobe -v error -select_streams v:0 \ -show_entries streamcodec_name,profile,width,height,pix_fmt,level \ -of defaultnw1 out.h264正常輸出會(huì)包含codec_nameh264、profileHigh或Constrained Baseline、width/height、pix_fmtyuv420p。如果 ffprobe 直接報(bào)錯(cuò)優(yōu)先查起始碼和 SPS/PPS如果 profile 顯示unknown說明參數(shù)集沒寫對。再看幀數(shù)ffprobe -v error -count_frames -select_streams v:0 \ -show_entries streamnb_read_frames -of csvp0 out.h264這個(gè)數(shù)字要和發(fā)送端大致對得上。如果只有 1 幀說明 IDR 之后的數(shù)據(jù)沒被識別如果幀數(shù)明顯偏少回查 FU-A 重組和丟包處理。裸流沒有容器時(shí)間戳ffprobe 的幀率是猜的所以不要拿它判斷實(shí)際幀率幀數(shù)更有參考價(jià)值。5.2 ffmpeg 轉(zhuǎn) mp4 與解碼核對把裸流轉(zhuǎn)成 mp4能快速判斷是文件問題還是播放器問題ffmpeg -fflags genpts -r 25 -i out.h264 -c copy out.mp4-r 25是給裸流一個(gè)輸入幀率因?yàn)?h264本身不攜帶幀率。實(shí)際幀率不是 25 就換成對應(yīng)的值否則 mp4 的時(shí)長會(huì)不準(zhǔn)。-c copy不重新編碼只換容器能播說明碼流基本正常不能播再回頭查 Annex-B。再做一次完整解碼專門看錯(cuò)誤輸出ffmpeg -v error -i out.h264 -f null -這條命令不生成文件只解碼。如果終端不斷刷 “error while decoding” 或 “no frame”說明碼流有壞幀或參數(shù)集缺失。少量錯(cuò)誤可能是丟包導(dǎo)致大量錯(cuò)誤就要查重組邏輯。檢查項(xiàng)命令或觀察點(diǎn)異常含義文件頭xxd -l 32 out.h264不是00000001開頭起始碼錯(cuò)流參數(shù)ffprobe 看 profile/分辨率unknown 或缺失SPS/PPS 沒寫幀數(shù)-count_frames只有 1 幀F(xiàn)U-A 重組或 IDR 丟失解碼錯(cuò)誤ffmpeg -v error大量報(bào)錯(cuò)壞幀或丟包容器轉(zhuǎn)換轉(zhuǎn) mp4 后播放裸流能播、mp4 不能播查時(shí)間戳或幀率5.3 抓包對照用 tshark 驗(yàn)證 RTP 包數(shù)有 pcap 的話直接對比 RTP 序列號和標(biāo)記位tshark -r rtp.pcap -Y rtp \ -T fields -e rtp.seq -e rtp.timestamp -e rtp.marker -e rtp.p_type \ | head -n 20看三件事序列號是否連續(xù)時(shí)間戳是否按幀遞增標(biāo)記位是否在預(yù)期位置。序列號缺口和腳本日志里的seq gap對得上說明丟包發(fā)生在網(wǎng)絡(luò)或內(nèi)核緩沖區(qū)對不上可能是腳本解析偏移錯(cuò)了。rtp.p_type用來確認(rèn)動(dòng)態(tài)載荷類型別把 96 和 97 兩路流混在一起。6. 把腳本變成工具丟包、亂序與長流的三個(gè)硬約束最小腳本跑通之后真正決定能不能長期用的是三個(gè)約束丟包策略、亂序窗口、長流切片。這三個(gè)點(diǎn)不處理錄十分鐘可能沒問題錄兩小時(shí)一定出狀況。約束常見做法代價(jià)丟包丟到下一個(gè) IDR或記錄空洞繼續(xù)寫前者少一段畫面后者可能花屏亂序2–4 個(gè)包的小重排窗口延遲增加幾毫秒長流按大小或時(shí)長切片每片重寫 SPS/PPS文件變多但可定位、可恢復(fù)丟包策略沒有標(biāo)準(zhǔn)答案。做監(jiān)控回放我一般選擇“丟到下一個(gè) IDR”因?yàn)榛ㄆ翈M(jìn)了文件后面幾秒都跟著壞回放體驗(yàn)更差做鏈路質(zhì)量分析反而要保留空洞并記錄序列號方便定位是哪一段網(wǎng)絡(luò)出了問題。關(guān)鍵是別默默把半幀寫進(jìn)去至少打一條日志。亂序窗口不要開太大。RTP 走 UDP真正亂序通常發(fā)生在幾包之內(nèi)2–4 個(gè)包足夠窗口太大收包線程要等延遲上來實(shí)時(shí)性就沒了。實(shí)現(xiàn)上可以用一個(gè)按序列號排序的小字典收到連續(xù)包就往上寫超時(shí)或缺口太大就跳過。長流切片建議按 200–500 MB 或 10–30 分鐘切一次每片重新寫 SPS/PPS。這樣即使某一片損壞其他片還能單獨(dú)播。切片時(shí)注意不要在 FU-A 中間切等一個(gè)完整幀寫完再換文件。文件名帶上序號或時(shí)間后面排查會(huì)輕松很多。從那以后我每次接一路新流都先跑一遍 ffprobe 看 profile 和分辨率再抽前 200 幀做完整解碼最后才把保存腳本掛到長時(shí)間任務(wù)上。這個(gè)習(xí)慣不高級但能擋住大部分“文件有大小、畫面不對”的返工。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91精品丝袜在线观看| 日本在线激情一区二区三区| 超碰99在线观看| 精品人妻一区二区免费蜜桃| 久热热| 日本免费人成视频播放120秒| 日本黄色天堂| 熟女五十路一区二区三| 啊啊啊好舒服好爽啊啊啊视频| 热热色中文无码| 免费A V在线播放| 狠狠操一区二区| 亚洲欧美国产中文视频| 欧美黑人与女人91~| 日日爱99| 亚洲黄色网址| 日韩色| 丁香婷婷激情五月天无毒不卡| 人妻丝袜一区二区三区在线| 女色视频社区| 七月丁香婷婷| 狠狠躁天天躁日日躁| 无码外流操逼视频| 日日黄色三级网站| 国产美女高潮叫床视频| 亚洲精品 欧美97色色| 加勒比久久综合网高清| 久久人妻一区二区三区高清 | 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 噜噜噜无码AV一级一级久久影院| 性色高清..……| 无码av永久免费专区网站| 欧州激情视频在线一区二区| 久久九九国产精品| 91精品人妻五十路| 免费一级毛片在线视频观看| 国产suv一区二区三区6| 国精品一区二区三| 91人妻做a观看视频| 亚洲性少妇| 日韩欧美综合激情| 亚洲一区二区中文字幕| 青青11操操操操操操操操| 国产精品福利视频| 久草男人天堂| 亚洲精品一区中文字幕乱码| 宅男影院久久久,99| 欧美日韩美女精品久草一区二区三区 | 欧色网址| 哈哈操电影AV| 伊人色综合网电影| 国产精品操| 性交一区二区在线播放| 亚洲无码99| 中文乱码字字幕在线第5页| 中文字幕88av在线| 噜噜噜无码AV一级一级久久影院| 日本一区二区中文字幕久久| 亚熟hd视频在线| 精品性爱无码在线播放| 国产精品第一页国产大屁股视频免费区| 精品欧美乱码久| 999久久久九| AV在线性爱| 久久久91福利姬| 一区二区三区在线资源| 最新的亚洲无吗| 电家庭影院午夜69久久夜色精品国产69乱 | 在线综合网| 大香网伊人久久综合网eew| 色五月综合网| 欧美综合色,www| 玖玖大干人妻| 久久婷婷一区二| 色综合av男人天堂| 国产一区在线观看无码AV| 欧美久久人体| 亚洲男人的天堂网| 全免费a敌肛交毛片免费| 亚洲天堂日本| 999久久久九| 天天做日日爱夜夜爽| 国产久久久久久| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 亚洲女优有码无码高清| 久久综合女优| 久久久久久久少妇| yazhousetuoumei| 色婷婷综合网| 婷婷久久网| 天天摸夜夜添无码小视频| 亚洲第一视频 欧美风情 日韩| 欧美亚洲AN| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 国产成人亚洲精品自产在线 | 亚洲综合第一页| 伊人9| 少妇人妻精品| 人妻精品一区二区全免费| 激情综合五月天| 国产一区二区欧美日本| 免费公开人人操| 超清福利精品视频在线| 97超碰超碰| 日韩有码专区| 1024精品在线| 亚洲图片激情小说| 人妻一区二区三区四区视频| 日韩字幕一区| 超碰97人人cao| 久久久久久九九九九九| 成人性交免费视屏| 久久丝袜| 天天综合色图| 久热这里| 久久,精品一二三| 五月色综合| 久久思思热| 欧洲色色| 亚洲国成人情色好看电影| 久久超碰久| 厕所偷拍在线| 九九英色视频| 青青草中日韩在线| 超碰97丝袜| 日韩啪啪视频| 无码外流操逼视频| 久久美女国产| 午夜色婷婷| 99热精品在线观看| 色91综合网| 久久女同性恋一二区| 秋霞一区二区三区四区五区六区七区| 欧美宗合网| 2019天天干| 2019精品国产无码成人| 亚洲精品三区在线观看| 亚洲一区中文字幕一区| 人妻天天操天天爽视频免费| 999熟女精品| 老鸭窝成人| 97这里有精品| 操B视频日韩无码| 久久一区二区高清免费| 五月天伊人| 国产一级久久久| 精品制服美女中文一区二区三区| 亚洲精品少妇| 99国产精品视频尤物| 国产精品爽爽va在线观看98| 欧美色图片91| 欧美日韩不卡传媒| 人妻偷拍一区二区三区| 激情五月天色色网| 日韩啪啪啪视频| 啊啊啊啊免费视频| 素人一区二区三区日韩| 欧美午夜精品久久久久久3D| 亚洲日本天堂| 国产乱伦视频污| 国产欧美一级在线观看| 日本加靬比网站发布页| 亚洲精品97p| 亚洲国产成人精品久久久国产成人一区二区| 中文字幕日韩电影人妻| 天天综合亚在线| 嫩草91| 蜜臀一区二区三区在线| 国产激情av女片自拍| 91视频观看网站| 怡红院亚洲怡春院av| A级国产欧美激情在线| 成人国产精品三级A片| 国产suv精品一区二区四| 熟女一区二区三区四区| 日韩中文字幕视频| 女人天堂av在线播放| 日韩一区二区高清在线观看的| 中文字幕一区二区三区人妻少妇在线| 亚洲人妻色图| 婷婷中文网| 丰满人妻一区二区三区在线| 婷婷人妻激情| 秋霞影音一区二区三区| 亚洲大色堂| 一区二区三区四区五区久久久久久| 尤物av网站免费在线播放| 日本精品高清一二区一本到| 丝袜综合| 91欧美经典| www.大香| 久操影视| 国产欧美日韩一区二区三区| 国产AV人人 夜夜人人澡| 老司机香蕉| 黄片aaaaa一区| 成人A片男人的天堂| 久久精品国产97欧美精品亚洲 | 亚洲日韩美国人妻| 日韩 成人 有码| 97这里只有精品| 五月丁香六月婷综合成人综合| 亚洲第91页| a男人的天堂久久一级A毛片| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 秋霞视频一区二区| 激情婷婷黑人91| 在线精品福利免费播放| 天天草AV| 中文自拍欧美影视| 91人妻在线视频| 神马久久久久久伦理片| 欧洲综合视频| 美女诱惑一区| 综合色图亚洲欧美| 国产精品点击进入在线影院高清 | 九九热九九热| 国产精品露脸在线观看| 青青草伊人久久| 久久久久亚洲| 抽查国产福利主播| 久久成人午夜精品影院| 亚洲国内精品成人不卡| 另类在线| 丁香色色网| 亚洲人人夜夜澡人人爽| 五月天伊人| 欧美男人的天堂| 五月香婷婷| 91视频综合| 9/A片| 99久久久无码国产精品性啊聊| 亚洲欧美精品91| 69一区二区三区 | 9国产超碰| 亚洲精品欧洲精品| 欧美午夜一区二区三区| 欧美性色欧美| 夜夜嗨av午夜成人| 国产精品蜜乳AV| 国产精品一二三| 综合激情婷婷| 翔田千里AV无码秘 三区| 嗯嗯啊好大| www.91理论| 超碰久久.com| 好看的久久不射无码影视影院| 操逼片国产| 欧美人妖内射| 性色中出| 日韩av乱伦| 婷婷色综合欧美日韩| 亚洲男人的天堂AV| 91|九色|国产熟女| 国产中文字幕在线点播| 色噜噜日韩精品| 99国产天美| 婷婷伊人五月| 操逼无毒无码免费视频| 欧日韩不卡视.频| 日本操逼aaaaa| jiujiujiujingpin| 殴美性色a级欧美| www.91理论| 淫荡网址| 青青草好吊| 亚洲AV乱码专区国产噜噜亚洲 | 国产精品一级二级在线| 黄色AV影视| 人干人人人操人人摸| 牛牛久久国产精品视频一二三| 日本在线视频导航| 欧美日韩1234| 亚洲天天更新| 亚洲综合校园春色| 亚洲淫色网中文| 91蜜臀在线久久久久| 夜夜影视四色| 视频国产成人精品日本亚洲18| 亚洲日韩乱码中文无码蜜桃臀网站| 性爱动态120秒| 久久久久久久亚洲Av无码| 久操婷婷| 岛国片在线观看视频亚洲| 91在线精品一区二区三区| 91痴汉| 亚洲视频,小说| 激情五月天婷婷| 欧美极度丰满熟妇hd| 国产成久久综合片| 影音先锋每日最新资源在线观看| 亚洲熟妇一,二,三期| 欧美色97| 深喉吞精| 殴美色网| 蜜汁欧美| 色天天野狼综合社区| 超碰伊人在线| 亚洲AV色图一区| 97天天弄| 麻豆AV96熟妇人妻| 国产午夜视频| 91艹逼精品| 大香网伊人久久综合| 精品久久人妻成人网| 黄色AAAAA欧美| 无码一区二区精品视频久久久春药| 一区二区三区高清 | 黄色小说亚洲| 自拍欧美| 污电影在线观看| 四虎884a| 99在线精品观看视频中文 | 欧美性爱伊人| 精品久久人妻成人网| 日小BB小视频| heyZO天然素人无码AⅤ专区| 思思热影视| 日本高清_区二区三区| 午夜精品久久久久久久久久蜜桃| 国产中文大片资源中文字幕| 亚州免费啪啪视频| 午夜色婷婷| 国产亚洲精品自在线亚洲情侣| 黑人精品成人一区二区三区| 操逼逼无码| 99综合视频| 99综合视频一体| 日本 欧美 国产一区| 国产丝袜视频| 第二页中文字幕| 96免费视频在线| 诱惑人妻欧美一区在线播放| 亚洲日韩熟女人妻高清在线| 亚洲人综合| 蜜臀网 一区| 视频不卡中文字幕| 26uuu国产亚洲综合| 国产精品久久99日日| 日本高清一区二区在线| 久久久草成人网站久久久草成人久久久草久久久 | 超碰地址97| 九九九九免费视频| 欧美亚洲手机在线| 啪啪视频亚洲第一| 欧美色图在线视频少妇| 久草色在线观看| 亚洲日韩人妻中文字幕一区| 93人人操人人| 日韩三级一区 | 人妻22p| 一区久久久二区| 性交一区二区在线播放| 久久久96| 免费在线观看AV无码网站| 91麻豆天美国产欧美| 99热在线不卡| 花花AV导航| 91深夜夜| 老鸭窝亚洲毛片| 91影视亚洲| 亚洲色宗合| 国产精品麻豆视频网站| 黄色乱论网站| 99精品无码| 国产路线专区| 国产小u女在线观看| 97色在线观看| 国产九九九九九九九九| 男人的天堂成人的社区| 精品无码产区一区二| 男人天堂网址| 日本123区操B视频| 九九成人精品| 天天综合网日韩| 999国产精品999| 亚洲AV高潮| 夜夜嗨一区二区三区直播内容| 影音先锋视频在线| 日本不卡三级网在线播放| 蜜臀久久99精品久久久久久成人小说| 久久欲| 丁香色婷婷| 久草精品一区| 91人妻少妇| 欧美日韩中文亚洲v在线综合| 国产福利夜| 久草在线| 99re9在线| 欧美另类丝袜熟女| 婷婷丁香五月激情啪啪| 少妇人妻在线| 日韩欧美俄罗斯A片| 亚洲棕合电彰| 亚洲性爱成人| 中文字幕视频2区| 日韩99999| 91久久精品蜜臀| 国产夫妻性生活视频| 亚洲成a人片在线观看中文!!!| 女一区二区| 成人一二| 九九亚洲精品| 日欧亚洲二三区大片不卡| 亚洲日韩青青草色月| 国产女大学生AV| 打av高清| 欧美精品 - 91爱爱| 亚洲天堂一区| 亚洲精品97在线| 大色综合| 嗯嗯啊啊用力视频免费| 国产精品成久久久久午夜午夜| 人妻熟女字幕一区二区| 精品对白久久不卡| 久久久草成人网站久久久草成人久久久草久久久 | 中文字幕中文字幕一区二区| 亚洲人妖网| 久操网址| 超碰在线在公开超碰在线在公开| 插欧洲美女欧美精品| 日韩成人人妻网站| 久久久9视频| 国语对白露脸XXXXXX| 日本97久久久精品| 美女写真| 91色夜| 91狠| 中国大陆国产高清AⅤ毛片| 国产熟女二区| 欧美另类色图片| 91国产操逼视频| 欧美精品91| 色综合久久88色综合久久天天| 欧美色图自拍| 人人天天欧洲| 欧美激情中文字幕另类小说| 日韩97P| 超碰1024久久| 久久久免费一级黄片| 另类图片综合| 好看的久久不射无码影视影院| 日逼国产| 成全动漫视频观看免费下载| 夜夜国自区| 色综合美国| 国产懂色精品国产av| 天堂性色| 亚洲在线观看| 91精品人妻一区二区三区蜜桃臀| 无码精品人妻一区二区三区妖精| 漂亮人妻被强中文字幕hd| 午夜激情床戏激情| 天天干人人看综合| 肥佬影院91| 亚洲美女30b| 牛黄色久午久| 亚洲字幕一区二区| 欧美第二页| 亚洲校园激情| 欧美情色贴图| 亚洲综合97中文网| 可以看的av| 性久久| 91综合网| 91蜜臀人妻中文字幕在线| 久久111| 夜夜爽33333| 黑人无码一区二区| 久久日韩精品一区二区| 欧美爱爱97| 92大香蕉| a人片中文字幕一区二区| 天无日色综合| 婷婷亚洲天堂| 国产又色又爽又舒服的三级视频| 日韩欧美操逼xxx| 友优传媒精品在线一区二区| 日本熟妇自慰性高潮一区二区三区| 日本三级日本三级三级人妇四虎| 婷婷五月天小说| 天天做日日做天天欢。| 成人性爱视频在线看| 欧亚无码视频| 日韩视频中文字幕| 黄色成年| 欧美姓爱综合网| 一区超碰一区| 亚洲性图91| 日本超碰97日韩精品人妻| 天天干2019| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 91麻豆天美国产欧美日| 狠狠色狠狠色狠狠五月| 狠狠操官网| 欧美18老人禁| 国内毛片欧美香蕉精品| 日韩精品在线视频,日韩精品……| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 日本欧美韩国国产在线| 韩三级a视频在线观看| 人人爱人人乐人人操| 偷拍盗拍亚洲色图图片| 一级毛片电影免费看| 网友自拍第一页| 69精品| 男女国产精品| 午夜精品久久99蜜桃的功能章节| 四虎精品永久在线播放| 欧美日韩国产成人高清| 人人干黄色| 人人摸.人人色| 国产不良强奸视频免费看| 免费的很黄很污的全部视频| 综合欧美激情网| 久久九九国产精品| www.超碰在线| 天天日少妇逼AV| 亚洲无套久久嗯嗯| 中文字幕乱碼在线| 色麻豆AV| 大茄子熟女AV导航| 夜夜操天天肏| AV99热18这里只有精品| 欧美,亚洲,日韩,v,天堂,手机在线观看 | 黄色AAAAA欧美| 99久久网站| 婷婷五月天网| 97这里都是精品| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 十八禁一区二区无码观看| 久久久久久久六六 | 99久久99久久综合| 亚洲色图20p| 啊啊啊要高潮了| 后入精品| 中文字幕精品一区欧美| 日韩无码黄色片| 3571色综合一区二区二区| 精品国产一区二区三区久久久蜜臀 | 国产av强奸美女| 亚洲二区精品在线观看| 性色一线| 后入式999| 99少妇| 乱伦a片视频| 人人爱操| 98超碰日本| 性色A∨91| 性91| 操逼操操操91| 91亚洲影院综合| 亚洲久久天堂| 国产精品视频自拍在线| 操人妻少妇中文| 超碰97久久国| av网站免费线看| 亚洲国产无码精品首页久久久| 800zy一区二区| 一二三区视频在线观看| 激情网色| 激情图片亚洲色图| 美女性91| 五月天丁香婷婷综合网站| 九色 人妻 大香蕉| 国产三级中文字幕粉嫩| 自拍偷拍草一草| 91粉芽高清在线一区二区| 欧亚日韩综合精品国产| 午夜人人操| 五月天丁香| 9ⅰ久久久天天| 亚洲啪AⅤ永久无码| 精品久久久中文字幕不| 本道综合精品| 日本亚洲熟女视频| 91男人天堂网| 欧美亚洲国产91在线| 丁香五月影院| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 欧美熟妇乱码在线一区| 大茄子熟女AV导航| 五月丁香社区婷婷日韩欧美精品影院| 韩国免费播放一级毛片| 天天日天天操心| 亚洲丝袜少妇在线| www.色婷婷.com| 噜噜噜亚洲精| 韩国一级做A片免费的| 亚洲欲| 国产隔壁老王影院在线| 欧美色图片91| 久久久精品网| 男人的天堂在线2| 日韩射精| 天天色悠悠激情| 春色综合网| 久久久久久夜夜夜夜夜| 激情小说亚洲| 澳门成人网站久国产日韩| 蜜臀久久99精品久久久久| 播播亚洲小说亚洲| 亚洲精品乱码久久久久久蜜桃麻豆| 国产欧美岛国精品一区| 精国久久一区二区三区98| 婷婷丁香九月| 国产亚洲中文不卡二区| 亚洲精品天天影视综合网| 天天懆天天日| 久久同城AV| 操逼操网| 亚洲天堂资源在线| 亚洲熟妇乱女区二区三区| 久久专区| 鸥美精品一区二区久久婷婷| A 在线网址| 久久综合久色欧美综合狠狠 | 黑人猛交| 大香蕉欧美伊| 在线国产一区二区av| 99热欧美| 97午夜剧场日韩| 国产午夜福利电影免费在线观看 | 成人资源中文字幕在线观看| 一区二区三区欧美激情| 亚洲熟妇A V黑人| 熟女丝袜视频| 无码聚合| 久久久无码视频| 色婷婷成人综合| 欧美黄片免费在线观看视频| 欧美aⅴ99久久黑人专区| 欧亚在线视频| 一区在线精品中文字幕| 国产精品天干天干综合网麻豆| 亚洲精品亚洲人成在线麻豆| 久久久精品网站| 日本精品性生活久久久| 五月天色色网站| 亚洲春色一区二区三区| 91久久18禁| 人妻嗯啊啊在线播放| 呦呦影院| 欲综合网| 国产精品久久伊人| 在线a亚洲视频播放在线| 97欧美色综合| 久久久精久久久| 岛国黄色大片网站| 好吊色综合| 国产精品2020| 啪啪一区| 熟女五十路一区二区三| 欧美色视| 亚洲诱惑天堂 | 精品视频在线观看| 久久99草| 青青草在线成人视频| 婷婷色影院| 18啪啪手机免费性爱| 91无码人妻精品一区二区三区蜜桃| 日韩AV中文字幕电影| 大鸡巴久久久| 久久久免费一级黄片| A一区片| 超碰久久综合| 97超碰欧美| 欧美综合天堂| 中文字幕精品资源在线| 欧美性爱无码一区二区三区| 青娱乐91| 91热| 国产乱不卡| 熟妇激情| 亚洲www91| 亚洲熟妇丝袜在线观看| 99色在线| 黄色AV影视| 日本色色色| 亚洲欧洲日韩国产自在线| 欧美大波激情xxxx| 日本东京热久久久电影| 翔田千里AV无码秘 三区| 久久久亚洲精品中文字幕人妻| 久久宗合亚洲| 黑人干亚洲| 91欧美另类| 久久精品72| 亚洲s在线观看| 麻豆久久久久久久久丝袜| 大香蕉操久久| 亚洲有码 视频一区| 国产免费一区二区在线A片视频| 国产女人成人精品视频| 国产真实野战在线视频| 2019久久久久久久久福利| 一个人免费视频观看在线WWW| 毛片一区二区| 国产操逼视频在线观看| 一个国产在线综合网站| 日韩精品色呦呦| A级毛片在线看免费| 久久透逼视频| 亚洲三区视频| 日韩人成网站在线播放| 8050午夜少妇无码| 99欧美| 嗯嗯嗯好爽| 久久亚洲骚逼综合| 中文字幕在线日亚州9| 九九热免费国产视频婷婷伊人五月 | 加勒比五月天| 亚洲怡春院| 日本精品加勒比海一区| WWW美腿丝袜香蕉中文| 亚洲 欧美 第一页| 国内伊人久久久久久网站视频| 思思热一热婷婷热一热| 视频在线观看青青99国产| 亚洲午夜蜜臀| 99热这里都是精品| 78m啪啪啪| 国产欧美日本亚洲精品| 日韩欧美国产一区二区三区四区| α√在线| 一区在线观看中文字幕| 内射中出日韩在线观看视频| 曰本熟女视频| 97欧美久久久久久久| 91精片| 八戒无码国产午夜福利| 欧美国产伊人久久久久| AV中文在线| 中文字幕超碰CAO| 99热这里只有精品1| 久久少妇| 啪啪啪精品视频| 人人澡人人爽人人精品| 久久大精品乱码视频人妻熟女| 一本一道久久综合久久| 毛片一区二区| 2020国产精品| 亚洲色图a| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 殴洲老熟女| 97人人爱人人乐| 亚洲图片欧美色| 综合欧美日韩在线观看| 亚洲天天艹| 啊嗯嗯啊好大好爽| 波多野结衣AV无码一区| 欧美性爱精品一区二区| av情色影音| 亚洲精品蜜桃久久久| 一线黄色免费性爱片| 一区二区偷拍拍视频| 男人的天堂在线| 91精品91久久久久77777俄罗斯老妇姓x| 日本操嫩b网| 欧美嗯啊……在线观看视频免费| 蜜桃精品一区二区三区久在线| 日韩在线国产字幕| 超碰在线看| 久久婷婷亚洲欧| AAAA级日本片免费视频| 成人免费视瓶| 国模限制级电影| 蜜桃AV天堂| 操逼免费视频无码国产| 看黑丝美女操逼青青网站| 超碰色图| 九色婷婷| 99热国产精品| 影音先锋乱| 天天天天做夜夜夜夜做| 亚洲日韩一区电影| 91在线视频免费中出| 久久久久久久| 国产亚洲国产超碰| 九九九九一级| 欧美丝袜制服久久| 久干网| 日韩操p| 日产狠狠干| 日韩图色| 99自拍视频在线| 99热线麻豆 | 天堂男人网| 五月婷久久| 羞答答AV中文字| 蜜臀AV网站| 老鸭窝日丰县女人| 日韩欧美午夜视频在线| 青青草字幕AV| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 日韩欧美午夜视频在线| 日韩av色图综合| 人人操,人人插| 午夜成人福利影视| 国产成人亚洲精品无码最新在线| 亚洲精品天天影视综合网| 亚洲综合影院| 天天弄欧美| 超碰97人人cao| h色99999| 亚洲黄网在哪免费看| 国产99999久久精品| 色青青久久影视| 四季av一区二区凹凸精品小说| 岛国黄色大片网站| 尤物视频新赏网鲜网色诱网| 五月天激情视频| 亚洲欧洲自拍| 人妻精品综合中文字幕在线| 96超碰网| 嗯嗯啊啊用力视频免费| 澳门黄片一香蕉视频| 久久久久密臀一区二区| 亚洲av淫乱| 人妻夜爽夜夜爽| 九九av| 极品色| 91影视亚洲| 国产超碰人人操| 亚洲精品少妇| 老女人老91妇女老热女| 人人天天干干| 91人妻少妇| 玖玖97综合| 熟女乱伦A| 久久9免费视频| 亚洲熟妇极品| 十八禁的黄污污免费网站| 欧美色亚洲色| 天天摸夜夜摸| 久久久夜夜嗨免费视频| 97干在线| 日韩在线观看三级电影| 99国内精品| 亚洲小电影免费涩涩成人在线高清 | 日本黄色精品| 欧美精品人妻视频| 岛国黄色大片网站| 999久久久九九九九| 东北女人| 天天综合网国产| 操日韩第| 91亚洲综合在线| 躁躁日曰躁2020| 精品一区二区啪啪啪| 波多野结衣一级视频| 欧美色图99| 欧美亚洲宗合色性图| 婷婷五月在线视频| 91九色蝌蚪在线观看| 伊人嫩草| 九九国产热| 九九热免费国产视频婷婷伊人 | 欧美热图99| 久久欧洲| 播播亚洲小说亚洲| 亚洲色图尤物视频| 九九九九AV| 蜜臀无码一区二区| 天天干天天日天天射黄色片| 日本综合色图| 日本东京热加勒比久久| 东京热视频网| 成人一二三区| 啊啊啊啊啊啊啊啊要喷了| 密桃99999| 最新中文字幕在线亚洲| 操b在线观看| 日日不卡av| 97超碰影音| 亚洲熟女乱色一区二区三区久久久| 五月天婷婷综合网| 大香蕉综合在线| 亚洲精品一区二区精品| 偷拍盗拍亚洲色图图片| 日韩中文字幕宗合在线| 明星性猛交ⅹxxx乱大交| 欧美成人精品一区二区男人蜜臀 | 久久久免费的精品| 高清国产无码av| 久久久96| 69视频入口| 风月影院十八禁| 99re6在线视频播放免费精品| 日韩av情韩国爱禁区av一区二区| 中文字幕亚洲欧美在线不卡| 91人妻人人妻| 国产欧美亚洲精品a第2页| 日本激情免费大片| 日韩熟女乱伦中出| 性色AV蜜色av色欲av| 国产一区二区三区高清视频| 屁股久久久久久久久久| 国产9熟妇视频网站| 激情在线青青操| 亚州,欧美在线| 国内精品久9| 精品人妻一区二区三区免费视频| 久超碰这里只有精品| 青青操视频在线| 青青草在线视频美女| 精品女同一区| 人妻激情视频| 999久久久国产精品| 丰满人妻-区二区三区免费看 | 激情99| 激情第四色| 日本在线一二| 国产男人又猛又粗又爽| 色五月激情网| 激情文学网伊人| 欧美十八禁在线看| 蜜臀久久99精品久久久老,,| 欧美夜夜狠| 国产不卡片| 欧美少妇色综合| 香蕉免费一区二区三区不读| 色偷偷男人的天堂麻豆| 综合网少妇| 人人妻人人澡人人爽久久av| 一区二区影视| 亚洲欧美精品国产一区二区| 黄片免费看的| 竹菊影视国产一区二区| 啊啊啊啊嗯嗯嗯用力好爽 | 无码人妻精品一区二区三区九九| 欧美色日本| 亚洲91综合| 激情在线青青操| 内射老妇BBWX0C0CK| 园内精品自拍视频在线播放| 美女一区二区国产精品| 青青草操逼逼视频| 伊人97色天使| 97精品国产精品免费观看| 伊人性在线视频| 久久久久久精| 精品国产一区二区三区香蕉欧美| 中文字幕精品区先锋资源| 欧美在线视频99| 男人的天堂成人的社区| www.acm成人黄色毛片| 天堂成人网| 激情五月综合开心五月| 717影院理论午夜伦八戒| 精品女人999| 黑丝少妇麻豆| 91痴汉| 亚洲另类欧美精品| 九九无码视频| 欧美色图亚洲色图成人在在线| 日本欧美色| 久久久精品网| 日韩亚洲国产视频| 亚洲天堂区| 亚洲交换| 激情小说日韩无码| 天堂8在线新版官网| AV老汉| 欧美日韩狠狠爱| WWW啪啪的com| 99精品丰满人妻无| 精品二区三四区五电影 | 五月色综合| 欧美久久久15P| 成人一二三区| 无套内射人妻在线播放| 欧美淫穴| 综合少妇网| 爽极品影院| 99性视频| 蜜臀99久久精品| 欧美日韩另类在线| 美女露胸露屁股| 热G综合热G中文| 成人性爱AV在线免费观看| 97视频观看| 久久97视频| 日本精品无码三级网站| 麻豆性爱视频在线播放| 日本韩国五十路六十路七十路老熟女作爱视频网站 | www.久久爱| 九九热精彩视频| 日韩中文字幕精品一区在线| 伊人天堂在线| 60秒免费小视频| 操人人| 久热久一区二区三区| 国产传媒日韩| 中文字幕在线日亚州9| 日韩欧美中文字| 久久久久亚洲?V片无码V| 久久偷拍人| 亚洲欧美另类激情小说| 伊人97超碰| 淫淫综合网| 精品成人av一区二区三区在线| 97一区二区三区视频| 色在线综合| 一区二区三区四区五区高清无码永久视频 | 欧美日韩国产三级黄色| 97超碰资源网| 内射小黄片| 97色欧州| 日韩人妻一二三区视频| 美女91在线观看| 亚洲欧美自拍偷拍| 97这里只精品| 69少妇一区二区| 狠色婷婷久久一区二区三区_| 久久亚州精品成人Av无| 性色中出| 亚洲精品xxx| 国产1727欧美| 91精品大奶人妻| 国产精品一二三| 亚洲色诱惑| 欧美爱爱97| 91在线美女| 先锋激情∨在线视频播放| 人人搡人人肉久久精品| 欧 美 自 拍 偷 拍| 高清不卡 中文 人妻| 亚洲操逼无码| 亚洲不卡一| 极品色社| 国产青一二三| 免费av在线播放二区| 久久久久久久国产| 国产熟女完整版中字| 日韩欧美麻豆 | 国产成人99久久亚洲综合| 激情四射熟女丝袜| 国产a级午夜毛片| 一区二区三| 麻豆精品A片免费观看| 国产日韩区| 婷婷人妻激情| 玖玖97综合| 日韩欧美国产一区二区三区四区| 蜜桃狠狠色伊人亚洲综合 | 日本伦乱九九九综合| 亚洲视频,小说| 黄片免费久久久久久久| 日韩综合第八区国产精品| 久久天堂婷婷网| 国产极品精品美女视频| 久草线上视频免费看| 婷婷五月天激情四射| 九九综合九九综合| 夜草欧美| 激情文学网伊人| 久久久久久久伊人精品| 91制服丝袜| 97超碰无码网| 亚洲精品a人片在线观看视| 久久久久久久精| 91丝袜激情在线 | 日韩无码精品综合久久| 一区二区亚州激情久婷婷欧美| 97香焦色区| 国精精品无码一二三区水多多| 欧美亚洲手机在线| 久久久久921| 久久久蜜桃一区二区三区| 色嗨嗨在线| 国产精品操| 日韩国产品视频中文字| 婬女免费一二三区A片| a片久久久久久久久久久久 | 性站 | 91丨人妻丨国产丨丝袜| 午夜呻吟欧美| 亚洲色五月| 变态乱伦伪娘灌肠一区二区| 丝袜美腿亚洲| 天操天操夜操夜月月年年操操 | 极品销魂美女一区二区| 中文字幕女同在线| 综合五月天| 久久精品店| 国产在线强奸视频| 欧美九九九九九| 2019男人的天堂| 啊啊啊啊操死我了| 欧美成va视频网站| 人妻 丝袜美腿 中文字幕| 校园春色五月天| 97视频在线观看免费高清| 一区二区三区色综合| 国产精品久久久777| 2020中文字幕| 日本操大逼| 欧美一区二区福利在线| 日本久久超碰| 欧美综合色图网| 亚洲欧洲激情| 超碰到97情色| 极品粉嫩少妇视频| 91热情品| 久9久| 不卡啪啪视频| 被体育老师抱着c到高潮| 午夜超爽| 亚洲国产奇米影视久久| 日本视频在线中文字幕| 欧美超碰97| 一本久久久精品| 麻豆天天躁天天揉揉AV| 九九九九一级| 日少妇亚洲版| 天天干天天日天天射黄色片| 精品91摸| 激情图片伦理国产一区二区日韩| 9九九九九视频在线观看| 久久婷婷五月天| 久久综合激情| 97干在线视频| 色婷视频| 国产熟女乱论| 青娱乐国产精品| 澳门黄片一香蕉视频| 亚洲男人久久综合天堂| 免费视频在线一区二区不卡| 四虎国产精品永久在线囯在线 | 美女黄页| 粘花网06av视频| 91女网站| 97国产色图 | 欧美极度丰满熟妇hd| 日本色色色| 六月丁丁香| 欧美日韩人人精品| 亚洲综合888| 极品久久久久久久久久久久久久| 屌妞视频久久久久久久| 97精品国产精品免费观看| 啪啪视频亚洲第一| 97美日韩视频| 少好三P| 97神马久久| 亚洲国产综合图区中文字幕| 一级性爱视频免费在线| 国产又色又粗又黄又爽| 日韩国产在线观看av| 国产一级作爱毛片| 99精品久久| 欧洲综合视频| 人妻免费观看| 超碰97.com| 91操操操操| 中国一级特黄大片护士| 91free福利| 97爱爱爱综合| 亚洲精品蜜桃久久久一区二区三区|