欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

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

RTP H.264 保存為 .h264:拆包重組與 Annex-B 寫盤避坑 簡(jiǎn)介這份代碼包聚焦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工程、篩選器、用戶配置及說(shuō)明文檔整體約9KB體量輕便便于導(dǎo)入IDE查閱和調(diào)試。已有1032人學(xué)習(xí)下載適合作為協(xié)議解析與工程實(shí)現(xiàn)的對(duì)照參考。代碼圍繞服務(wù)端接收與公共工具模塊展開涵蓋RTP包頭解析、NAL單元邊界識(shí)別與重組、UDP數(shù)據(jù)接收以及H264 Annex B寫入等環(huán)節(jié)讀者可據(jù)此理解分包處理、順序恢復(fù)與丟失標(biāo)記修復(fù)思路并在此基礎(chǔ)上改造成自己的取流落盤工具。對(duì)于需要排查花屏、丟包與時(shí)間戳錯(cuò)位問題的讀者也能從代碼結(jié)構(gòu)中獲取可復(fù)用的處理線索。1. RTP 數(shù)據(jù)保存為 .h264 文件先分清收到的是流還是幀把 UDP 上的 rtp h264 數(shù)據(jù)保存成一個(gè)能雙擊播放的 .h264 文件看起來(lái)只是收包加寫文件實(shí)際最容易出問題的地方在載荷層RTP 頭、FU-A 分片、STAP-A 聚合、Annex-B 起始碼任何一處對(duì)不上文件就會(huì)“有體積、沒畫面”。這份資源適合兩類人一是做 IPC、錄播、無(wú)線圖傳的嵌入式或后端工程師手里有 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è)字段必須讀對(duì)字段位寬實(shí)際用途版本 V2 bit必須為 2不是 2 直接丟包填充 P1 bit末尾有填充最后一個(gè)字節(jié)是填充長(zhǎng)度擴(kuò)展 X1 bit固定頭后有擴(kuò)展長(zhǎng)度按 32 位字計(jì)算CSRC 計(jì)數(shù) CC4 bit固定頭實(shí)際長(zhǎng)度 12 4×CC標(biāo)記 M1 bit常用來(lái)標(biāo)一幀的最后一個(gè)包但不能完全依賴載荷類型 PT7 bit動(dòng)態(tài)類型 96–127 常見要和 SDP 對(duì)上序列號(hào)16 bit判丟包、亂序回繞按 16 位處理時(shí)間戳32 bit同一幀內(nèi)相同幀間遞增H.264 常見 90 kHzSSRC32 bit同一端口多路流時(shí)用來(lái)過濾計(jì)算載荷偏移時(shí)先算12 cc * 4如果X1再讀擴(kuò)展頭前 4 個(gè)字節(jié)其中后 2 字節(jié)是擴(kuò)展長(zhǎng)度單位是 32 位字所以還要加4 ext_len * 4。如果P1最后一個(gè)字節(jié)是填充長(zhǎng)度載荷末尾要減掉。這個(gè)偏移算錯(cuò)后面所有 NAL 解析都會(huì)錯(cuò)位。序列號(hào)是 16 位無(wú)符號(hào)數(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三種封裝怎么識(shí)別H.264 的 RTP 載荷格式由 NAL 頭低 5 位決定常見就三類nal_type名稱處理方式1–23單 NAL直接加起始碼寫文件24STAP-A一個(gè) RTP 里聚合多個(gè) NAL按 2 字節(jié)長(zhǎng)度切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é)大端長(zhǎng)度 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ū)懗鰜?lái)不要只取第一個(gè) NAL。2.3 用 Python 解出第一層UDP 收包與 RTP 頭解析先不寫文件只把 RTP 頭解析出來(lái)打印確認(rèn)序列號(hào)、時(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再看一眼。跑起來(lái)后觀察輸出如果nal_type長(zhǎng)期是 28說(shuō)明這路流大量使用 FU-A 分片如果出現(xiàn) 24說(shuō)明有 STAP-A 聚合如果一直是 1–23說(shuō)明是單 NAL 打包。marker1的包通常是一幀的最后一個(gè)包但先別急著依賴它下一步寫文件時(shí)還要結(jié)合時(shí)間戳變化。3. 寫 Annex-B起始碼、SPS/PPS 與寫盤順序RTP 拆出來(lái)的 NAL 不能直接拼成.h264。裸流文件需要 Annex-B 格式每個(gè) NAL 前面有起始碼而且 SPS/PPS 必須出現(xiàn)在 IDR 之前。很多“文件有大小、播放器不識(shí)別”的問題根源不是收包而是寫盤格式不對(duì)。3.1 裸流為什么必須是 Annex-BH.264 有兩種常見封裝Annex-B 用00 00 00 01或00 00 01分隔 NALAVCC 用 4 字節(jié)大端長(zhǎng)度前綴。.h264裸流一般按 Annex-B 處理.mp4里的視頻軌才用長(zhǎng)度前綴。你把 AVCC 格式直接寫成.h264ffplay 可能報(bào)“Invalid NAL unit size”因?yàn)榻獯a器把長(zhǎng)度字段當(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ò)了文件看起來(lái)很大實(shí)際解碼器只能認(rèn)出第一幀。3.2 SPS/PPS 從哪來(lái)SDP、帶內(nèi)與首包緩存SPS/PPS 是解碼器的“說(shuō)明書”沒有它們IDR 幀也解不出來(lái)。常見來(lái)源有三個(gè)SDP 里的sprop-parameter-sets。例如afmtp:96 packetization-mode1;profile-level-id42e01f;sprop-parameter-setsZ0LgH...,aM48g...逗號(hào)前是 SPS 的 Base64逗號(hào)后是 PPS。帶內(nèi)發(fā)送。有些編碼器在 IDR 前先發(fā) SPS/PPSRTP 里能看到nal_type7和nal_type8。抓包工具里手動(dòng)提取。只有前兩種都拿不到時(shí)才用容易抄錯(cuò)。從 SDP 解參數(shù)集可以這樣寫import base64 # 從 SDP 的 fmtp 行里取逗號(hào)前后分別是 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 到來(lái)前補(bǔ)寫。帶內(nèi)參數(shù)集可能會(huì)變比如分辨率切換遇到新的 SPS/PPS 要重新寫不要只認(rèn)第一次。提示profile-level-id只能說(shuō)明檔次和級(jí)別不能代替 SPS/PPS。只寫這個(gè)字段解碼器仍然沒有完整的參數(shù)集。3.3 完整的收流寫文件腳本下面這個(gè)腳本把 UDP 收包、RTP 解析、FU-A 重組、STAP-A 拆分、Annex-B 寫盤串在一起。它不依賴第三方庫(kù)適合先跑通最小鏈路再按項(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 # 序列號(hào)不連續(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 來(lái)自 fu_ind類型來(lái)自 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 解出來(lái)后傳進(jìn)來(lái)這里留空表示依賴帶內(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ī)測(cè)試用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é)長(zhǎng)度循環(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)場(chǎng)4.1 文件幾十 MB播放器只顯示第一幀現(xiàn)象.h264文件體積不小ffplay 能出第一幀之后黑屏或卡住。原因最常見的是把 RTP 頭一起寫進(jìn)了文件或者給每個(gè) FU-A 分片都加了起始碼。解碼器在第一幀碰巧能同步后面讀到的是“起始碼 FU-A 指示字節(jié) 分片數(shù)據(jù)”NAL 類型對(duì)不上直接停止。解決用十六進(jìn)制工具看文件頭正常應(yīng)該是00 00 00 01 67或00 00 00 01 65開頭。如果看到80 60這類 RTP 頭字節(jié)說(shuō)明偏移算錯(cuò)如果每個(gè)分片前都有00 00 00 01把起始碼移到 FU-A 重組完成之后。4.2 畫面下半部綠塊幾秒后花屏現(xiàn)象能播但畫面局部綠塊、馬賽克運(yùn)動(dòng)場(chǎng)景更明顯。原因FU-A 丟包或亂序。一個(gè) FU-A 幀少一個(gè)分片整幀數(shù)據(jù)不完整如果腳本還把不完整的分片寫進(jìn)文件解碼器會(huì)繼續(xù)用壞幀預(yù)測(cè)后面幾幀也跟著花。解決按序列號(hào)做小窗口重排窗口不用大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 長(zhǎng)度前綴或者起始碼字節(jié)序?qū)戝e(cuò)。比如把00 00 00 01寫成01 00 00 00或者把 NAL 長(zhǎng)度當(dāng)成起始碼寫進(jìn)去。解決確認(rèn)每個(gè) NAL 前是00 00 00 01不是 4 字節(jié)長(zhǎng)度。用xxd -l 64 out.h264看一眼前幾個(gè)字節(jié)應(yīng)該是0000 0001 67或0000 0001 68。如果是0000 001f 67這種說(shuō)明寫的是長(zhǎng)度字段。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保存出來(lái)的文件畫面跳來(lái)跳去。原因沒有按 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)收f(shuō)fprobe 看流參數(shù)ffmpeg 解碼看錯(cuò)誤抓包對(duì)照看包數(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說(shuō)明參數(shù)集沒寫對(duì)。再看幀數(shù)ffprobe -v error -count_frames -select_streams v:0 \ -show_entries streamnb_read_frames -of csvp0 out.h264這個(gè)數(shù)字要和發(fā)送端大致對(duì)得上。如果只有 1 幀說(shuō)明 IDR 之后的數(shù)據(jù)沒被識(shí)別如果幀數(shù)明顯偏少回查 FU-A 重組和丟包處理。裸流沒有容器時(shí)間戳ffprobe 的幀率是猜的所以不要拿它判斷實(shí)際幀率幀數(shù)更有參考價(jià)值。5.2 ffmpeg 轉(zhuǎn) mp4 與解碼核對(duì)把裸流轉(zhuǎn)成 mp4能快速判斷是文件問題還是播放器問題ffmpeg -fflags genpts -r 25 -i out.h264 -c copy out.mp4-r 25是給裸流一個(gè)輸入幀率因?yàn)?h264本身不攜帶幀率。實(shí)際幀率不是 25 就換成對(duì)應(yīng)的值否則 mp4 的時(shí)長(zhǎng)會(huì)不準(zhǔn)。-c copy不重新編碼只換容器能播說(shuō)明碼流基本正常不能播再回頭查 Annex-B。再做一次完整解碼專門看錯(cuò)誤輸出ffmpeg -v error -i out.h264 -f null -這條命令不生成文件只解碼。如果終端不斷刷 “error while decoding” 或 “no frame”說(shuō)明碼流有壞幀或參數(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 抓包對(duì)照用 tshark 驗(yàn)證 RTP 包數(shù)有 pcap 的話直接對(duì)比 RTP 序列號(hào)和標(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看三件事序列號(hào)是否連續(xù)時(shí)間戳是否按幀遞增標(biāo)記位是否在預(yù)期位置。序列號(hào)缺口和腳本日志里的seq gap對(duì)得上說(shuō)明丟包發(fā)生在網(wǎng)絡(luò)或內(nèi)核緩沖區(qū)對(duì)不上可能是腳本解析偏移錯(cuò)了。rtp.p_type用來(lái)確認(rèn)動(dòng)態(tài)載荷類型別把 96 和 97 兩路流混在一起。6. 把腳本變成工具丟包、亂序與長(zhǎng)流的三個(gè)硬約束最小腳本跑通之后真正決定能不能長(zhǎng)期用的是三個(gè)約束丟包策略、亂序窗口、長(zhǎng)流切片。這三個(gè)點(diǎn)不處理錄十分鐘可能沒問題錄兩小時(shí)一定出狀況。約束常見做法代價(jià)丟包丟到下一個(gè) IDR或記錄空洞繼續(xù)寫前者少一段畫面后者可能花屏亂序2–4 個(gè)包的小重排窗口延遲增加幾毫秒長(zhǎng)流按大小或時(shí)長(zhǎng)切片每片重寫 SPS/PPS文件變多但可定位、可恢復(fù)丟包策略沒有標(biāo)準(zhǔn)答案。做監(jiān)控回放我一般選擇“丟到下一個(gè) IDR”因?yàn)榛ㄆ翈M(jìn)了文件后面幾秒都跟著壞回放體驗(yàn)更差做鏈路質(zhì)量分析反而要保留空洞并記錄序列號(hào)方便定位是哪一段網(wǎng)絡(luò)出了問題。關(guān)鍵是別默默把半幀寫進(jìn)去至少打一條日志。亂序窗口不要開太大。RTP 走 UDP真正亂序通常發(fā)生在幾包之內(nèi)2–4 個(gè)包足夠窗口太大收包線程要等延遲上來(lái)實(shí)時(shí)性就沒了。實(shí)現(xiàn)上可以用一個(gè)按序列號(hào)排序的小字典收到連續(xù)包就往上寫超時(shí)或缺口太大就跳過。長(zhǎng)流切片建議按 200–500 MB 或 10–30 分鐘切一次每片重新寫 SPS/PPS。這樣即使某一片損壞其他片還能單獨(dú)播。切片時(shí)注意不要在 FU-A 中間切等一個(gè)完整幀寫完再換文件。文件名帶上序號(hào)或時(shí)間后面排查會(huì)輕松很多。從那以后我每次接一路新流都先跑一遍 ffprobe 看 profile 和分辨率再抽前 200 幀做完整解碼最后才把保存腳本掛到長(zhǎng)時(shí)間任務(wù)上。這個(gè)習(xí)慣不高級(jí)但能擋住大部分“文件有大小、畫面不對(duì)”的返工。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久精品亚洲热| av在线观看免费| 噜噜狠狠色综合久| av婷婷丁香 六月| 九九亚洲综合| 欧美va视频| 五月丁香六月婷婷综合在线| 欧美婷婷综合网| 色五月激情五月天| 91人操人人人操人| 99性色| 色情五月丁香| 综合激情在线| 中文字幕av在线播放| 三人荫蒂添的好舒服A片| 九艹在线| 九色啦蜜臀| 四色 爱 婷婷 精品 亚洲 五月天| 综合色影| 天天综合影院| 亚洲国产成人裸舞| 99热这里只有精品热| 九月综合| 97久操视频| 亚洲春色奇米影视| 一级操逼大片| 久久无码成人| 婷婷五月激情欧美大胆视频| 超pen个人视频97| 丁香六月激情综合| 五月丁香综合网| 操操操Av| 最新激情五月天| 99视频九九热| 成人婷婷色综合| 老司机伊人| 日本三级大片| 天天日天天干天天爱| 99在线69| 日韩人妻无码一区二区| 国产欧美婷婷五月| 五月丁香久久久| 欧美激情五月综合| 天天婷婷操| 激情综合区| 五月情涩综合婷婷| 亚洲无线视频| 五月丁香六月婷婷,婷| 久久性刺激| 五月婷婷综合影院| 男女99免费视频| 久久综合性| 99久久久免费| 色综合色综合色综合高潮| 欧美噜噜久久久XXX| 另类伊人婷婷| 婷婷丁香午夜综合影视| 99久久久| 五月婷婷精品无在线| 综合伊人久久| 婷婷综合网| 亚洲成人在线综合| 综合五月草| 久久婷婷成人视频| 99热99re6国产在线播放| 日韩五月天婷婷| 久久在这里有精品| 五月天色视频| 另类图片天天影视在线观看| 五月天精品| 成人亚洲精品久久久久| 97成人在线视频精品| 色99免费视频中文| 婷婷五月天丁香| 色久播播| 99热这里精品| 五月丁香综合激情| 成年视频免费观看| 激情综合五月激情XXXX| 五月天啪啪| 99热思思| 国产69久久久欧美黑人A片| 国产熟妇的荡欲午夜视频| 国产精品久久久久久久久久免费| 碰人人操| 国产精品国产VA片国产| 久久久97| 丁香色情五月综合激情| 五月总合激情网| 性爱电影科技贸易有限公司| 六月丁香啪啪啪| 欧美大片免费播放器| 久久婷婷一级片| 色婷婷色九月| 夜夜综合色| 99热综合在线| 亚洲天堂制| 偷偷操99| 五月激情久久综合网| 婷婷五月天激情综合| 中文字幕在线日亚州9| 超极99精品| 亚洲啪啪视频| 久久激情五月| 操97在线观看| 26uuu国产精品| 五月丁香综合| 丁香五月综合激情久久潮喷| 日韩欧美四五区| 五月天婷婷无码| 五月天开心网| 亚洲综合99| 五月网在线| 五月天啪啪| bukadeavzaixian| 97色色色色色色色| 婷婷午夜天| 久久婷婷网址| 日本成人噜噜| 岛国AAAV| 色婷五月| 国产日产亚洲系列最新| 色五月婷婷少妇人妻| 五月色婷婷影院| 99热传媒| 久久久精品人妻录| 超碰操日| 婷婷丁香五月在线播放| 国产欧美大香蕉一区| 色5月婷婷| 国产成人精品一区二三区熟女在线| 婷婷五月综合免费在线| 婷婷五月综合啪| 色婷婷综合视频| 9久久久| 婷婷五月俺要去| 五月天激情图片| 丁香激情五月少妇| 色婷婷激情| 丁香婷婷九月在线| 五月丁香无码| 日韩AV一区二区三区| 九九热手机在线视频| 五月婷婷六月天| 久久婷婷五月综合色奶水99啪| 综合久久五月天| 婷婷影院A成人| 亚洲性爱干干| 99久久超级| 激情婷婷人妻| 九久热| 精品三区影院| 高清国产一级婬片a免费| 五月天综合在线观看| 五月婷婷黄色网址| 久久久久丁香婷婷五月天| 婷婷六久久| 亚洲精品久久久久久久久久吃药| 色五月噜噜| 五月丁香另类网| 91久久精品国产91性色TV| 色青青五月| 99色在线| www.色五月.com| 久久五月天激情婷婷| 九九热思思| 久久五月天丁香花| 人妻22p| 天天摸天天肏| 黄桃AV无码免费一区二区三区 | 26uu| 涩 五月 婷婷 狠狠| 久久色这里只有精品| 日韩三十六页| 97视频久久| 色五月综合激情| AA丁香综合激情| 丁香婷五月| 极品精品一区二区三区在线| 婷婷五月综合啪| www.99精品在线| 激情五月天视频| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 丁香伊人五月色婷婷五十路| 综合99久久| 狠狠操综合| 婷婷色婷婷| 五月婷婷激情综合拍| 天色色综合网| 久久久久久久久久8888| 婷婷五月天电影网| 9久热这里只有精品视频| 久久综合站| 99精品免费视频| 九九热在线观看6| 激情五月婷婷综合秋霞| 亚洲色在线观看| 手机看片日日做夜夜| 97色碰碰公开视频| 亚洲激情在线| 中文AV在线观看| 久久99免费视屏| 玖玖爱伊人网| 色九区| 亚洲精品午夜国产va久久成人| 五月天久久婷婷| 亚洲电影在线观看| 欧美性丁香色色五月天干干| 九九99热| 吉澤明步Av一區二區| 婷婷偷拍网| 久草视频大香蕉99| 91色色五月天| 亚洲另类婷婷五月综合| 久9综合| 另类天堂| 国产在线黄色| 99这里只有精品| 成人色情五月天婷婷丁香| 五月丁香六月婷婷久久肏| 少妇出轨做爰高潮A片| xx久久| 艾小青av| 丁香五月激情六月综合| 五月色婷丁香| 99热超碰人| 五月天社区| 精品成人a v无码内射| 99婷婷| ady狠狠入| 婷婷五月色| 99riAv1国产在线观看| 久久99热 这里有精品| 91色在线/日韩| 色婷婷综合在线| 激情久久伊人| 久久综合五月情| 538在线精品| 色婷婷五月在线| 精品人妻久久久久| www天天色天天射| 色六月天| 无码人妻一区二区三区免费九色| 日本成人噜噜| 开心激情网五月| 久久丁香五月婷婷| 夜夜做夜夜愛| 26uuu在线观看| 综合深爱五月| 国产偷人妻精品一区| 激情五月色综合国产精品| 狠狠色噜噜狠狠色噜噜噜999| 亚洲天堂啪啪| 久热九九| 婷婷婷色五月| 亚洲婷婷乱乱丁香| 久久婷婷六月综合| 玖玖婷婷五月| 色情五月婷婷| 丁香网五月天| 丁香五月天婷婷大香蕉| 九月综合| 久久婷婷五月国产激情综合片| 婷婷久久五月| 嫩草综合网| 啪啪五月天啪啪| 九九综合久久丁香婷婷,开心激情综合网| 九九综合色| 五月丁香六月婷婷综合在线| 丁香五月狠狠综合欧美| 丁香五月天啪啪a日本| 青青草原精品久久| 日本一毛片| 超碰人人操在线| 五月婷婷六月丁香综合在线| av婷婷丁香| 日韩天堂久久| 色综合网上班开心婷婷久久| 天天综合天天玩夜夜玩天天玩夜夜玩| 色亚洲激情| 五月天啪啪啪| 91九色网| 成人在线高清| 狠狠色丁香综合| 五月激情综合婷婷| 人人干av| 色色色综合网| 99热加勒比| 五月天日日操夜夜操| 五月丁香六月激情综合啪啪| 婷婷天天日婷婷| 啪啪综合| 人人操9| 99在线免费视频| 五月花综合| 六月丁香婷婷色综合| 久久五月婷天天干| 九九热在线99| 日本操B片| 激情五月色婷婷| 黄色大片又大粗又爽| 夜夜操狠狠操天天操| WWW.17C亚洲精品| 久99热| 色婷婷狠狠18yy| 丁香婷婷综合喷| 婷婷五月大香蕉| 婷婷中文在线| 六月丁香成人网| 五月激情网站| 99五丁香月| 激情综合网五月婷婷| 色欲丁香久久| 91精品综合久久久久久五月丁香| 9l久久久视频| 激婷网| 亚洲有码在线视频| 婷婷狠狠五月综合| 91操人视频| 综合久久伊人| 夜夜骑福利资源| 综合激情婷婷| www.99热在线观看| 色天五月天在线观看视频| 99色视频| 久久久精品99亚洲综合| 高清不卡一区| 丁香五月电影院在线观看| 26uuu亚洲色| 97久久人人| 亚洲AV永久无码影院黑人 | 激情黄色五月天| 欧美精产国品一二三区| 婷婷娌伦网| 日韩久久这里只有精品| 亚洲碰碰碰| 国内久久久精品99| 欧美性色A片免费免费观看的| 日 日干 日日做| 天天天在线观看| 成人在线观看国产| 日日做A爰片久久毛片A片英语| 中文字幕,综合,91| 婷婷丁香色情五月天| 丁香久久| 甈吧vv| 激情五月丁香婷婷| 激情五月,色五月| 日本久久精品18| 日韩AV在线免费| 国产婷婷五月中文字幕高清| 中文字幕网伦射乱中文| 97色五月天| 97色色网| 色综合五月在线| 天天干天天干天天| 狠狠色狠狠色综合日日91| 九九综合久久| 婷婷激情六月综合| 九月丁香久久网| 婷婷亚洲激情在线观看视频| 热91久| 蜜乳A√| 91午夜婷婷狠狠久久综合9色| 一个色的综合| av不卡网站| 婷婷五亚洲| 七七色综合| 亚洲天堂aaa| 色色97丁香婷婷五月天| 亚洲色五月| 九九大香视频| 天天干,夜夜爽| 六月婷婷无码观看| 中文AV网站| 亚洲色情网站| 色婷婷19| 99热这里是精品| 人人爱天天摸摸天天爱| 亚洲殴洲精品Av在线| 第四色婷婷丁香五月| 日韩精品无码AV| 丁香五月天狠狠| 久久综合影院| 色综合久久久久| 国产美女精品| 99日精品视频| 国产做爰视频免费播放| 色婷婷五月天视频在线| 激情综合无码| 九月丁香八月婷婷加勒比| 久久思思热视频| 天堂久久大香蕉| 色色免费网站| 色五月丁香在线| 色99视| 激情av| 中文无码精品一区二区三区| 在线99精品| 日本一级一级一级一级| 久久这里只| 五月婷婷综合久久| 五月婷婷久草| 中文字幕永久在线| www.五月天激情| 人人97碰| 日本一区二区三区精品视频| 色爱亚洲| 亚洲五月婷婷| 人人爽人人爽人人爽人人爽| 黄色成人网站在线播放| YW无码| 亚洲综合五月天| 婷婷五月天激情在线| 91九色国产| 九九婷婷激情综合网| 精品女人九九九| 色欲日日躁| 久久精品99久久久久久| 婷婷丁香五月在线观看91| 九月激情网| 夜夜爽天操| AA丁香综合激情| 黄色AAAAAAA| 欧美激情五月天| 天天插天天日| 色色色色色色色色色色色色色色,网站| 色婷婷黄色网络| 综合激情四射一theav| 人人摸人人干| 91干| 久久五月激情综合| 久久丁香五月天| 狠狠va| 六月丁香综合| 婷婷丁香五月激情密臀av| 99热在线观看| 五月激情综合网| 婷婷五月综合社区| 五月婷婷视频| 一丁香五月天月AV| www.成人婷婷综合| 无码人妻一区二区三区免费九色| 国产六月婷婷| 密臀久久| caopeng97日韩| 夜夜夜天天操| 婷婷五月亚洲激情| 亚洲色9| 97碰碰视频在线观看免费| 大香蕉伊然在亚洲90| 99久久户外勾搭| 99色色| 色婷婷影视| 超碰超碰在线| 天天日夜夜拍| 五月婷婷丁香| 九九视频在线观看视频6 | 日韩成人精品中文字幕| 人人干av| 少妇高潮呻吟A片免费看软件| 激情小说在线视频| 伊人久久婷婷| A短视频免费在线观看| 国产亚洲精品久久久久久豆腐| 丁香五月婷婷在线| 色五月网址| 天天日天天舔| ..真实国产乱子伦对白在线_欧 | 狠狠草狠狠草| 天天搞天天爽| 国产真实乱了老女人视频| 777精品久无码人妻蜜桃| 99久热| 一本道在线电影| 亚洲精品白浆高清久久久久久| 国产又粗又大又爽又黄| 国产97在线日韩亚洲女人被黑人巨大| 99天堂网最新| 婷婷的99视频网站| 婷婷五月天伊人在线| 99高级会所久久| 岛国资源网| 色综合日日| 26uuu在线观看| 99在线免费视频| 色色色色色色网站| 春色激情| 91久久精品无码一区二区三区| 影音先锋噜一噜| 看婷婷五月天网| 情情五月天色| 激情五月影院| 成人在线99| 久久色六月| 大天天伊人| 久久免费精品小视频| 久久久久久久久久久久久久人妻视频 | 成人国产欧美大片一区| 伊人五月天97| 99热6这里只有精品6| 天天插天天| 亚洲av日韩无码| 丁香六月啪啪| 色五月婷婷自拍| 天天五月香欧美| 激情综合五月色丁香婷婷 | 亚洲看av的网站| 欧美人妻一区二区| 国产成人综合网| 亚洲国产成人AV在线| 色综合久久88色综合天天99| 色五月天成人在线| 大香蕉久久久久| 午夜精品久久久久久久爽| 涩涩婷婷五月| 婷婷六月久久| 99性视频| 五月狠狠| 人人操人人爱丁香五月| 婷婷丁香18| 日韩欧美性爱| 91啪级电影| 国产在线黄色| 久久sp免费视频| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 日韩成人AV在线| 婷婷六月天国产综合| 97色热| 天天色激情| 九九热视频在线观看| 婷婷色五月天色色| 亚洲男人的天堂婷婷色五月| 天天插天天爽| 国产精品人妻欲求不满| 思思久久精品| 色色色com| 丁香五月婷婷性爱| 综合婷婷| 激情五月综合网最新| 婷婷五月视频| 久久久久久久11111111111| 三级三久久线久久99久目本WW| 五月激激激情综合网| 国产成人精品亚洲线观看| 五月丁香av中文| 九九精品在线观看视频6| 风流少妇A片一区二区蜜桃 | yazhoujiqingav| 五月婷婷在线视频免费观看| 99啪啪视频| 婷婷影院欧美| 伊人五月天在线| 色吧婷婷五月亚洲| 人妻在线中文字幕久久| 少妇搡BBBB搡BBB搡毛茸茸| 伊人婷婷五月天| 丁香五月AV| 久久亚洲天堂| 超碰人人99| 丁香五月婷婷亚洲另类| 久久性爱视频网站| 激情宗合 激情宗合| 色五月六月| 亚洲中文字幕在线电影| 五月丁香婷爱在线| 九月婷婷在线观看| 婷婷深爱五月天| 九九激情视频| 97操碰碰无码视频| 色播六月| 色婷婷导航| 激情五月图| 开心激情婷婷| 91人妻视频| 五月丁香综合精品欧美| 99热久久这里只有精品2010| 毛v一区二区视频| 可以直接看的av| 99内射视频| 中文久久婷婷| 婷婷精品| 色婷婷成人做爰A片免费看网站| 五月婷婷天天色| 一本大道熟女人妻中文字幕在线| 天天日天天做天天操| 9热超碰| 无码操B| 另类激情四射| wwwss在线观看| 第四色婷婷五月| 十二区无码| 97碰人人操| 婷婷丁香六月| 成人免费黄色短视频| 五月丁香六月激情综合欧美| 91碰碰视频| 婷婷久久网| 精品久久久久久久久久久久人妻| 婷婷色一二三区波多野结衣| 久久九色| 色综合日日| 三级毛片7979| 香蕉AV福利精品导航| 婷婷五月花西瓜| 99热久草| 久久六月婷婷| 色婷| 亚洲色综久久五月| 九九人人自拍| 国产AV一区二区三区最新精品| 婷婷丁香色情| 成人噜噜网| 久久涩视频| 狠狠爱婷婷| 欧美毛片www| 日本123区日韩欧美不卡在线看| 99熟女| 99国产性感视频| 婷婷丁香激情综合色情| 五月天婷婷综合色| 天天干狠狠| 婷婷色爱| 婷婷五月天无码熟女| 婷婷五月天大香蕉| 婷婷色情 | 九九色色网| 五月婷六月丁香| www.五月婷婷| 九九中文字幕九| 精品夜夜澡人妻无码AV| 色综合久久综合中文综合网| 色婷婷色婷婷五月| 婷婷伊人激情婷婷| 亚洲综合视频在线| 婷婷五月无码| 日本综合99| 色综合伊人网| 日本美女上人| 九九热最新地址| 六月米奇色综合| 丁香五月影视| 99热99| 九九久久9 9在线观看| 色屌丝中文字幕| 婷婷六月综合基地| 丁香五月天在线| 亚洲激情丁香五月基地| 九九热这里有精品视频| 五月丁香亭亭操逼| 婷婷丁香成人五月天| 九九草草逼| 荫道BBWBBB高潮潮喷| 丁香五月色| 九九性爱网| 九九热思思| 五月婷婷九| 五月天婷婷在线啪啪视频| 久久9视频| 大香蕉99| 综合久久97| 久久人人九| 98色丁香五月婷婷综合网| 日韩中出视频| 九九99偷拍视频| 天天激情站| 逼特逼在线免费播放| 97高清国语自产拍| 日本人妻伦在线中文字幕| 六月婷婷综合| 国产又粗又大又爽又黄| 欧美叉叉叉BBB网站| 五月丁香啪啪| 久久久国产精品黄毛片| 国产精品久久久久久喷浆| 国产成人精品亚洲线观看| 超碰91在线| 婷婷久久五月天| 99∨VTV| 少妇人妻人伦A片| 八戒青柠影视剧在线观看| 99热这里只有精品8| 欧洲色区| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 久久女人天堂| 天天色天天爽| 啪啪啪五月天| 婷婷综合色五月天| 久久怡红院| 97色片| 91Chinese在线| 疯狂做受XXXX高潮A片| 九九99九九精品免费 | 天天天天天天操| 亚洲色图五月丁香| 色婷婷六月天| 91制片厂久久久国产电影| 五月婷婷色色网址| 婷婷黄色| 人人天堂操| 丁香六月色婷婷| 天天日天天插| 六月丁香啪啪| 先锋男人91资源| 成人av中文字幕| 乱女乱妇熟女熟妇综合网站| 人人视频色| 啪色综合| 国产亚洲精品久久久久苍井松| 九九久久久综合| 亚洲成人高清在线| 五月婷庭丁香在线| 天天做天天爱天天爽| 夜夜爽天天干| 第四色色色色色丁香五月天| 日本三级黄色大片| 婷婷射图五月天| 精品久久9| 香蕉97碰碰碰欧美| 色5月婷婷色| 26uuuavcom| 日本在线视频播放91| 国产熟妇的荡欲午夜视频| 午夜成人在线免费视频| 国产裸舞福利资源在线视频| 狠狠色狠狠操| 久久精品99国产精品日本| 丁香婷婷婷五月综合色情| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 久久黄色片| 五月天激情小说网| 欧美人人女女精品综合五月天| 五月丁香综合网色欲| 996er热| 专区无日本视频高清8| 97人人爱人人操| 五月婷婷干| 婷婷色在线| 六月婷婷AV| 日韩成人精品一区久久久久| 久久婷婷五月综合| 在线99色| 久久久精品色色色| 久久久国产精品黄毛片| 色,激情五月天| 播五月开心婷婷欧美综合| 亚洲欧美在线观看| 精品乱码视频| 亚洲综合在线播放| 9久操| 9这里只有精品| 开心五月深爱五月| 97久久人人| 五月丁香六月激情| ww超碰在线| www.lingjunshare.com| 色狠狠色噜噜AV天堂五区| 色情综合| 色综合激情| 在线不卡中文字幕| 欧美婷婷五月丁香| 亚洲欧美成人在线观看| 天天操夜夜玩!| 婷婷五月天网| 婷婷五月丁香影院| 六月激情婷婷| 色色自拍视频网站| 狠狠色成人影片| 大香蕉520| 久久久久久激情| 九月综合| 色噜噜狠狠色综合成人99| 在线看黄色| 久狠狠狠| 国产婷婷综合| 久久狠狠干| 中文字幕,综合,91| www.五月丁香| 激情婷婷在线中文字幕| 99热主页日本| 成人网站在线观看视频| 色五月激情综合网| 久久久人妻人伦| 婷婷综合五月| 日韩狠狠色婷婷| 被强行糟蹋的女人A片| 婷婷五月天在线观看av| 少妇熟女视频一区二区三区| 五月色导航| 思思久久久婷婷| 99久久九九| 99re在线免费视频| 五月天婷婷激情| 色域五月婷婷丁香| 99综合| 五月天a婷婷伊人| 影音先锋五月婷婷| 五月天亚洲色| 91婷婷在线| 五月天激情综合| www.五月婷婷久久.com| 超碰免费电影| 欧美色97| 激情五月天婷婷久久久久久久久久久| 八戒青柠影视剧在线观看| 另类小说五月天综合网| 久9草在线观看视频| nvrentiantang av| 99色婷婷视频| 成人做爰A片免费看网站找不到了| 丁香五月天激情综合网| 久久久色情| 六月丁香av| 五月丁香六月婷婷综合免| 婷婷五月丁香基| 六月婷婷五月丁香| 婷婷色网| 99精品综合在线| 九九操操| 色色aⅤ網| 欧美网站视频4399| 丁香五月综合| 开心五月婷婷婷美女| 欧美日韩99| 大伊香蕉精品视频在线| 久久 天天| 青青草a在线| 色吊丝中文字幕| 久久机热/这里只有精品| 丁香五月激情视频在线| 久久91久久精品久久| 丁香五月天AV在线| WWW.桔色成人.COM| 亚洲性爱干干| 97操| 精品夜夜澡人妻无码AV| 泰州成人视频| 影音先锋女人av鲁色资源网小说免费| 琪琪狠狠干| 伊人五月天在线| 九九热视频思思| 91九色精品熟女内射| 亚洲AV无码成人电影| 婷婷综合五月| 久色视频| 2025天天爽天天摸| 久草A片| 青青操成人福利| 99天堂网| 六月婷婷久久| 狠色色狠网| 99热免费网站| 伊人久久大香线蕉av一区| 日韩综合成人| 国产日韩欧美性爱| 色天堂A| 开心婷婷五月中文字幕组| 久热视频A.| 亚洲av无码精品色午夜| 婷婷五月在线影院| www.色五月| 91视频精品99| 99爱视频在线| 性色99| 婷婷久久夜| 深爱五月月天| 99操逼视频| 欧美VA视频| AV在线二十六页| 五月婷三级片| 亚洲亚洲人成综合网络| av九九| AV在线大香蕉| 五月天丁香| 亚洲色网址| 99er热精品视频| 久久人人人人妻| 久久五月天综合视频网站| 日本色婷婷| www.精品99| 久草性爱| 999婷婷综合| 亚洲AV第二区国产精品| 婷婷影院欧美| 午夜激情久久| 欲色人妻| 激情五月婷色| 日本三级片片| 六月丁香天堂| 亚洲av无码影院| 日韩性爱无码| 黄色91在线观看| 九伊人网| 大香蕉婷婷五月| WWW.婷婷五月天.COM| 色欲久久久久久综合网综合网| 五月丁香888| 天天综合网~91| 中文字幕av亚洲| 超碰人人91| 九洲一级A片| 丁香五月天堂| 色五月婷婷狠狠撸| 六月色婷婷欧美| 五月天色导航| 综合久久人妻| 五月丁香亭亭| 99精品久久| 色婷婷丁香五月| 精品人妻伦九区久久AAA片| 成熟妇人A片免费看网站| 丁香情色五月| 精品动漫 无码av| 欧美色色色色色色色色色色| 色综合九九| 五月丁香婷婷在线综合蜜桃| 丁香五月激情六月综合| 五月色天情| 六月婷婷久久| 色99色| 丁香香蕉射射射| 99超级超级超级碰| 激情AV在线| 婷婷五月丁香六月伊人网| 99久久成人| 五月婷婷AV| 色综合久久天天综合网| 大香蕉手机视频| 亚洲欧美成人在线观看| 九九色色色| 日操| 色婷婷婷婷五月天| 日本超碰在线| 俺也去五月婷婷丁| www.久久爱.c n| 婷婷五月天免费小说| 亚洲性色XXXXX| 影视av久久久噜噜噜噜噜三级| 97色色网| 92久操视频| 九九精品热| 五月婷婷啪啪网| 香蕉狠狠爱视频| 荡乳尤物3HP1V5| 久久 无毛。| 亚洲在线激情婷婷五月| 丁香六月婷婷综合缴| 五月天啪啪啪| 九九综合五月欧美| 久久狠狠高潮亚洲精品 天天摸夜夜摸夜夜狠狠摸| 九九九成人在线视频| 激情五月婷黄版| 精品一二三区久久AAA片| 亚洲精品成人片在线播| site:minyis.com| 2025天天日爽| 成熟妇人A片免费看网站| 色婷婷啪啪啪啪啪啪| 激情五月网站| 91九色国产| 婷婷黄色网| 婷婷五月成人有| 色欲婷婷五月天丁香| 国产无套精品一区二区| 五月婷在线影院| 五月丁香六月婷婷综合网缴情| 99热免费在线| 五月天婷婷丁香花| 俺去也在线www色官网| 99热这里只有精品3| 激情淫乱男女| 天天综合永久| 久色激情| 久久精典| 天天日天天插| 亚洲天堂AV综合网| 丁香六月天婷婷色| 丁香婷婷五月| 九九这里是免费的视频5| 天天操狠狠操| 黄色三级毛片中字| sS丁香五月婷婷| 网色99| 啪啪夜久久| www.成人婷婷综合| 超碰在线网站9| 青青夜夜狠狠夜夜狠狠| 99久久婷婷| 激情四射婷婷| 日本美女五月天| 亚洲AV成人在线观看| 五月色丁香成人| 精品婷婷| 大香蕉久久伊人婷婷五月丁香| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 日韩婷婷五月| 99色色网| 六月丁香大香蕉| 欧美影院| 大香蕉操操| 26uuu欧美| 91 九色 入口| 色五月天成人| 色射7856五月天激情四射| 久久视频在线| 久久五月丁香综合| 人妻久久久久久久久久| 天天久综合网永久入口18| 日日干日日s| 欧美精品XXXXBBBB| 成人欧美一区二区三区在线观看| 开心激情站| 丁香香五月激情免费视频| 亚洲天堂热| 99精品色色| 婷婷丁香六月天| 丁香桃色综合网| 日逼影音先锋男人AV资源站| 99视频在线观看欧| www.91av.com| 五月婷婷丁香狠狠撸久久| 婷婷六久久| 5月丁香婷婷激情网| 金品在线视频99| 日亚二欧美| 欧美丁香五月97色| 日日噜噜夜夜狠狠久久丁香五月| 午夜色色色极品视频| 午夜69成人做爰视频| www,五月丁,com| 超碰啪啪网| 亚洲成人中心| 丁香五月大香蕉| 欧美日韩中文国产一区发布| 五月色婷婷激情| 婷婷激情四射五月天| 五月天丁香成人| 婷婷丁香五月av| 婷婷五月天性色| 亚洲五月花| 色色狼人综合| 91chinese在线| 婷婷五月骚厕所| 色日本综合| 九九99久久| 五月色欧美| 欧美激情伊人| 丁香六月婷婷| 天天舔日日肏夜夜爽| 五月婷婷日本| 久久思思热| 婷婷五月天成人综合网| 综合色网站| 97操操| 欧美xx激情视频在线观看| 色爱综合网| 婷婷97色| 丁香婷婷色| 情婷婷五月天在线| 91九色无码内射| 99热手机在线精品| 五月婷婷综合潮喷| 亚洲六月婷婷| 4438亚洲欧美| 婷婷激情性爱| 丁香五月天av| 99热久草| 三级毛片视频| 超碰超碰在线| 婷婷色五月情| 97人妻碰碰中文无码久热丝袜| 婷婷五月欧美综合| 久久作爱| 狠婷婷五月| 色综合夜夜| 日韩精品一区二区刘| 这里只有精品视频| 五月丁香六月婷婷激情视频在线观看免费| 亚洲激情网| 人人97操| 欧美叉叉叉BBB网站| 色噜噜狠狠色综合成人99| 久久99久久99精品免观看软件| 插逼综合网| 影音先锋一区二区资源站| 欧美精品999| 久久激情五月天| 丁香五月天色综合| 久草a片| 婷婷五月丁香亚洲| 狠狠色成人影片| 五月天伊人久久久久| 噜噜噜色噜噜| 99国产er热视频| 久久久久久久8| 91人人爱| 少妇AB又爽又紧无码网站| 99熟女| 亚洲婷婷久久综合| 天堂草在线观| 六月香五月婷| 夜夜夜天天操| 99日本在线| 大香蕉伊在| 九月丁香婷婷网| 免费观看全黄做爰的视频| 亚洲免费婷婷| 五月丁香啪啪激情| 激情噜噜噜| 色狠久| 欧美爆乳一区二区三区| 五月亚洲激情| 亚洲小视频免费看| 99久久网站| 色色色综合色| 狠狠爱五月婷婷| 五月五月婷婷| 成人片在线免费看| 在线一起草av| 国产精品成人网址| 91夫妻视频| 内射在线CHINESE| 农村熟妇高潮精品A片| 99熟女| 九九99久久| 99久久综合| 熟女人妻一区二区三区免费看| 丁香五月天激情综合| 26uuu| 97色色色| 日本片日本片祼观看网站在线看中文版网页在线看 | 99超碰人人| 九月丁香婷婷基地| 成人无码髙潮喷水A片| 天天弄天天操| 亚洲亚洲人成综合网络| 国产欧美日韩综合精品一区二区| 九九这里只有精品| 熟女人妻一区二区三区免费看| 97色婷婷| 99久久国产宗和精品1上映| 超碰狠狠干99| 亚洲丁香花五月丁香花| 色播婷婷五月天| 五月激香蕉网| 亚洲天堂青草| 亚洲黄3级片网站欧美| 91婷婷在线观看| 婷婷九月亚洲| www超碰| 丁香五月在线伊人| 色婷婷成人影片| 色操b| 九九这里有精品| 亚洲无线视频| 婷婷五月天成人网| 国产成人精品一区二三区熟女在线| 99精品国产在热久久| 成人超碰网| 超热久碰.com| 东京热伊人| 色婷婷丁香五月高清在线| 五月丁香色婷婷综合| 丁香五月天激情免费在线观看AV777| 99这里热| 综合网激情| 碰97 久| 九色在线观看91av| 成人av免费观看| 激情图片婷婷| 丁香婷婷成人网| 中文字幕不卡+婷婷五月| www狠狠| 奇米色大香蕉| 久久久999精品| 亚洲尤物在线| 久久丁香综合| 亚洲综合五月天婷婷丁香| 婷婷99狠狠躁天天久久久九九九| 亚洲精品444久久久久久| 中文字幕不卡+婷婷五月| 婷婷亚洲五月丁香综合在线 | 欧美A级成人婬片免费看理论| 99久免费视频| 五月天激情小说婷婷| www.av骚货| 色情综合| 9色资源在线| 99啪啪视频| 综合激情深爱| 久久久18| 久久婷婷一级片| 久久久97| 国产玖玖资源| 五月天激情综合| 天堂久久大香蕉| 日本精品。999| 久热69| 久久se 综合网| 色婷婷小说| 久久五月综合| 色婷婷久久| 中文久久婷婷| 六月丁香婷婷开心综合基地| 久久资源网五月婷| 狠狠色中色| 安息电影在线观看完整版| 亚洲人妻电影| 天天色2017| 天堂AV三级| 色婷六月| 免费日本aⅴ中文字幕 | 免费观看全黄做爰的视频| 中文字幕人妻在线| 中文网av| 五月婷婷深深爱| 在线观看中文字幕亚洲| 俺也去在线视频| 夫妇交换刺激做爰| 久热大香蕉| 噜噜噜久久| www.夜夜爱.com| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 97se视频在线| 国产,欧美,日韩,性爱| 五月丁香| a在线观看| 久久伦乱| 91xxxx九色| 婷婷五月色综合| 亚洲精品一区中文字幕乱码| 操碰99| 夜夜躁婷婷AV| 99日视频在线| 五月丁香六月婷婷综合| αv中文字幕在线观| 中文人妻主播久久| 亚洲无码色色| 思思热久久艹| 强伦轩人妻一区二区电影| 99在线综合视频| www,av好吊操| 激情婷婷狠狠干综合| 日本色婷婷五月天成人电影| 丁香婷婷深情五月亚洲| 97色久| 一级精品999WWW| 丁香五月网| www.色婷婷| 超碰国产AV| 激情五月天视频| 丁香婷婷五月人体| 欧美成人色婷婷| 嫩草视频| 婷婷五月天狠狠搞干| 大香蕉视频婷婷| 3www激情| 久久久色情| 亚洲成人婷婷| 亚洲五月天色色| 日本狠狠干| 一区二区免费看| 99ri精品| 欧日美女Va| 亚洲精品V天堂中文字幕| 亚洲 无码 中文字幕 中出|