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

ARTICLE DETAIL

資訊詳情

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

Java后端集成FFmpeg:漫劇視頻處理鏈路實(shí)戰(zhàn)與參數(shù)調(diào)優(yōu)

Java后端集成FFmpeg:漫劇視頻處理鏈路實(shí)戰(zhàn)與參數(shù)調(diào)優(yōu) 做漫劇平臺(tái)最容易被低估的模塊就是視頻處理。我一開(kāi)始以為無(wú)非就是把 MP4 扔給 FFmpeg 轉(zhuǎn)個(gè)碼、切個(gè)片等真正接到動(dòng)漫短劇這種高密度動(dòng)態(tài)畫(huà)面和大量文字字幕的內(nèi)容時(shí)才發(fā)現(xiàn)細(xì)節(jié)遠(yuǎn)比想象中復(fù)雜。Java 后端在這一環(huán)里承擔(dān)的不只是“調(diào)起命令行”而是完整的任務(wù)編排、參數(shù)策略、狀態(tài)管理和異常兜底。這篇文章我結(jié)合自己做漫劇系統(tǒng)的經(jīng)驗(yàn)把視頻處理這條鏈路從選型到落地、從參數(shù)調(diào)優(yōu)到線上排障完整拆開(kāi)講一遍。內(nèi)容偏實(shí)戰(zhàn)適合正在做短視頻平臺(tái)、短劇 App、漫畫(huà)動(dòng)態(tài)化產(chǎn)品以及任何在 Java 技術(shù)棧里集成 FFmpeg 的團(tuán)隊(duì)參考。1. 漫劇系統(tǒng)對(duì)視頻處理的特殊要求為什么通用轉(zhuǎn)碼方案不夠用1.1 漫劇內(nèi)容的特點(diǎn)決定了轉(zhuǎn)碼策略不能照搬普通影視劇、短視頻和漫劇的差異很多人一開(kāi)始沒(méi)意識(shí)到。漫劇本質(zhì)上是漫畫(huà)的動(dòng)態(tài)化畫(huà)面往往是高對(duì)比度的線條、大面積色塊、密集的文字氣泡這些內(nèi)容對(duì)編碼器的“邊緣保持”能力要求極高。用一套默認(rèn)的 CRF 參數(shù)去轉(zhuǎn)出來(lái)的畫(huà)面很容易出現(xiàn)文字邊緣發(fā)虛、線條抖動(dòng)、色塊斑駁觀感非常差。另外漫劇的時(shí)長(zhǎng)結(jié)構(gòu)也不一樣。一集可能只有 1 到 3 分鐘但動(dòng)輒幾百上千集而且更新頻率高、熱點(diǎn)期可能一次性批量上傳幾十集。這意味著視頻處理鏈路必須有很強(qiáng)的吞吐能力任務(wù)調(diào)度必須能扛住突發(fā)壓力而不是單機(jī)串行處理。還有一點(diǎn)容易被忽略漫劇通常需要多語(yǔ)言字幕。中文語(yǔ)音軌、日配、中文字幕、雙語(yǔ)字幕這些都要求在轉(zhuǎn)碼階段處理或者至少為后續(xù)的字幕軌道封裝預(yù)留設(shè)計(jì)否則等人氣起來(lái)了再改成本會(huì)成倍增加。1.2 整體視頻處理鏈路應(yīng)該長(zhǎng)什么樣漫劇系統(tǒng)的視頻處理我用一條主線來(lái)概括上傳 → 校驗(yàn) → 轉(zhuǎn)碼 → 切片 → 分發(fā) → 播放。六個(gè)環(huán)節(jié)缺一不可但真正決定用戶體驗(yàn)的往往是中間的轉(zhuǎn)碼和切片。一個(gè)可落地的架構(gòu)大概是這樣的客戶端上傳原始 MP4 到對(duì)象存儲(chǔ)上傳完成后回調(diào) Java 后端生成轉(zhuǎn)碼任務(wù)。任務(wù)進(jìn)入消息隊(duì)列異步消費(fèi)避免上傳接口被轉(zhuǎn)碼耗時(shí)拖垮。轉(zhuǎn)碼服務(wù)拉取原文件調(diào)用 FFmpeg 輸出多碼率視頻和 HLS 切片。轉(zhuǎn)碼產(chǎn)物回傳對(duì)象存儲(chǔ)CDN 加速分發(fā)。數(shù)據(jù)庫(kù)記錄任務(wù)狀態(tài)和產(chǎn)物地址播放器側(cè)請(qǐng)求帶簽名或防盜鏈的播放地址。這個(gè)鏈路我在多個(gè)項(xiàng)目里驗(yàn)證過(guò)最穩(wěn)的方案是 Java RabbitMQ FFmpeg Redis對(duì)象存儲(chǔ)選哪家都能適配因?yàn)楹诵倪壿嫸荚?Java 側(cè)封裝。1.3 技術(shù)選型Java 在視頻處理里的位置不是替代 FFmpeg而是駕馭它很多團(tuán)隊(duì)糾結(jié)要不要用 JavaCV其實(shí)沒(méi)必要把 JavaCV 當(dāng)成主方案。JavaCV 本質(zhì)上是對(duì) FFmpeg 的 JNI 封裝適合做輕量的實(shí)時(shí)處理、抽幀、邊解碼邊推流但在批量的高質(zhì)量轉(zhuǎn)碼場(chǎng)景下直接調(diào)用 FFmpeg 的可執(zhí)行文件反而更穩(wěn)定。原因很簡(jiǎn)單FFmpeg 迭代太快JavaCV 版本滯后容易出現(xiàn)編碼器支持不全的問(wèn)題而且它自身的內(nèi)存管理容易把 JVM 搞得很難受。我在項(xiàng)目中用的方案是機(jī)器上安裝 FFmpeg 可執(zhí)行文件Java 側(cè)通過(guò) ProcessBuilder 拉起進(jìn)程核心轉(zhuǎn)碼邏輯全部用 FFmpeg 參數(shù)表達(dá)。這樣既能保證編解碼器的完整能力又不會(huì)讓 JVM 直接承擔(dān) C 庫(kù)崩潰的風(fēng)險(xiǎn)。進(jìn)程退出碼加日志輸出足夠覆蓋絕大多數(shù)異常場(chǎng)景。2. 核心鏈路落地Java 與 FFmpeg 的集成細(xì)節(jié)2.1 三種進(jìn)程調(diào)用方式我只推薦 ProcessBuilderJava 里調(diào)用 FFmpeg 常見(jiàn)有三種方式Runtime.exec、ProcessBuilder、JavaCV。Runtime.exec 雖然寫(xiě)起來(lái)簡(jiǎn)單但多個(gè)參數(shù)拼接在一條命令字符串里很容易出現(xiàn)空格、引號(hào)、特殊字符的轉(zhuǎn)義問(wèn)題尤其是文件路徑帶中文或者帶空格時(shí)線上會(huì)頻繁踩雷。ProcessBuilder 直接傳參數(shù)列表不走 shell 解析徹底規(guī)避了注入和轉(zhuǎn)義問(wèn)題這也是我最推薦的方式。JavaCV 適合做實(shí)時(shí)流和抽幀但對(duì)轉(zhuǎn)碼任務(wù)的過(guò)程控制不夠直接而且如果遇到 FFmpeg 需要?jiǎng)討B(tài)加載第三方庫(kù)的場(chǎng)景JavaCV 的配置會(huì)更頭疼。一個(gè)最基礎(chǔ)的封裝看起來(lái)是這樣public class FFmpegCommandRunner { private static final String FFMPEG_PATH /usr/bin/ffmpeg; public boolean execute(ListString args, long timeoutSeconds) throws IOException, InterruptedException { ListString command new ArrayList(); command.add(FFMPEG_PATH); command.addAll(args); ProcessBuilder pb new ProcessBuilder(command); pb.redirectErrorStream(false); Process process pb.start(); // 必須異步消費(fèi) stderr否則緩沖區(qū)占滿會(huì)阻塞進(jìn)程 CompletableFutureString errorFuture CompletableFuture.supplyAsync(() - readStream(process.getErrorStream())); CompletableFutureString outputFuture CompletableFuture.supplyAsync(() - readStream(process.getInputStream())); boolean finished process.waitFor(timeoutSeconds, TimeUnit.SECONDS); if (!finished) { process.destroyForcibly(); return false; } int exitCode process.exitValue(); return exitCode 0; } }這段代碼里藏著幾個(gè)容易踩的坑第一waitFor一定要帶超時(shí)時(shí)間否則 FFmpeg 因?yàn)閰?shù)錯(cuò)誤或輸入源異常掛起任務(wù)會(huì)卡死在隊(duì)列里第二stderr 必須異步讀因?yàn)?FFmpeg 的進(jìn)度日志輸出在 stderr不消費(fèi)就會(huì)把管道緩沖區(qū)寫(xiě)滿導(dǎo)致進(jìn)程阻塞第三超時(shí)后要用destroyForcibly光調(diào)destroy可能不夠FFmpeg 的子進(jìn)程有可能會(huì)殘留。2.2 參數(shù)注入用列表構(gòu)建命令不拼字符串構(gòu)建 FFmpeg 參數(shù)時(shí)我最常犯過(guò)的錯(cuò)誤就是試圖拼接成一條字符串命令。后來(lái)我把參數(shù)構(gòu)建單獨(dú)抽了一層所有參數(shù)用ListString組裝其中只有固定開(kāi)關(guān)和路徑變量避免任何人肉拼裝。以一段最基礎(chǔ)的轉(zhuǎn)碼為例ListString args convertArgs(inputPath, outputPath, libx264, 20, 1280x720);這個(gè)方法的內(nèi)部邏輯就是通過(guò)command.add(-i)、command.add(inputPath)這種方式把-i和它的值分成兩個(gè)獨(dú)立元素傳入。FFmpeg 天然支持這種參數(shù)數(shù)組調(diào)用不需要 shell 解釋這就把路徑里的空格、中文、特殊符號(hào)問(wèn)題全部隔離掉了。2.3 轉(zhuǎn)碼進(jìn)度的可視化與監(jiān)控怎么做用戶上傳視頻后前端經(jīng)常會(huì)展示進(jìn)度條這個(gè)需求躲不掉。FFmpeg 本身會(huì)向 stderr 輸出形如time00:01:23.45 bitrate 512kbps的日志Java 側(cè)只需要在讀取 stderr 的流里做正則解析把當(dāng)前時(shí)間戳換算成百分比寫(xiě)入 Redis 即可。但這里有一個(gè)關(guān)鍵細(xì)節(jié)如果用-progress pipe:1參數(shù)FFmpeg 會(huì)把進(jìn)度信息輸出到 stdout 并用 keyvalue 的結(jié)構(gòu)化格式給出解析起來(lái)比正則匹配簡(jiǎn)單得多而且穩(wěn)定性更好。我在線上用的就是這個(gè)方式每 500 毫秒刷新一次 Redis 進(jìn)度值前端通過(guò)輪詢或者 WebSocket 獲取。3. 轉(zhuǎn)碼參數(shù)調(diào)優(yōu)動(dòng)漫短劇畫(huà)質(zhì)不是越高越好要匹配人眼觀感3.1 碼率控制為什么我不建議無(wú)腦用 CRF 18很多人看到 1080P、高碼率就覺(jué)得畫(huà)質(zhì)好但在漫劇場(chǎng)景里畫(huà)質(zhì)觀感不僅依賴碼率更依賴編碼器對(duì)邊緣和文字的處理。漫畫(huà)線條是高頻信息碼率給得不夠就會(huì)產(chǎn)生振鈴效應(yīng)文字邊緣出現(xiàn)白色光暈碼率給得過(guò)高又會(huì)導(dǎo)致文件體積暴漲CDN 成本直線上升。我實(shí)測(cè)下來(lái)x264 編碼器 -preset veryfast-crf 20是漫劇內(nèi)容一個(gè)比較均衡的起點(diǎn)。CRF 值越低畫(huà)質(zhì)越好但 18 和 20 在大多數(shù)手機(jī)屏幕上幾乎沒(méi)有肉眼差異而文件體積能差 15% 到 25%。如果你的漫劇有大量靜態(tài)幀、少動(dòng)態(tài)場(chǎng)景CRF 20 足夠如果是打斗、爆炸特效比較多的短劇可以降到 18。另外x264 有一個(gè)專門(mén)針對(duì)動(dòng)畫(huà)內(nèi)容的參數(shù)叫-tune animation。這個(gè)參數(shù)會(huì)調(diào)整 psychovisual 優(yōu)化策略對(duì)平坦色塊區(qū)域少花碼率把更多 bit 分配給邊緣和高頻細(xì)節(jié)對(duì)漫劇畫(huà)面非常友好。3.2 多碼率輸出分辨率階梯不能一刀切漫劇的播放端覆蓋手機(jī)、平板、電視、Web我需要輸出至少三檔清晰度清晰度檔位分辨率視頻碼率參考適用場(chǎng)景高清1920x10803000-4000 kbps電視、大屏 Web標(biāo)清1280x7201500-2000 kbps手機(jī) Wi-Fi流暢854x480600-900 kbps移動(dòng)網(wǎng)絡(luò)弱網(wǎng)環(huán)境切片時(shí)三檔共用同一個(gè)時(shí)間軸這樣播放器可以在同一時(shí)刻無(wú)縫切換清晰度不需要重新加載。這里要注意的是不要把所有檔位都用原始畫(huà)幅直接壓短劇多數(shù)是豎屏 9:16 素材但也有橫屏內(nèi)容轉(zhuǎn)碼前最好先用ffprobe探測(cè)原始分辨率再?zèng)Q定是否做裁剪或加黑邊。3.3 字幕燒錄與多語(yǔ)言軌道的取舍漫劇的字幕處理有兩種思路硬字幕和軟字幕。硬字幕就是把字幕直接燒進(jìn)畫(huà)面優(yōu)點(diǎn)是全端通用、樣式統(tǒng)一缺點(diǎn)是后期想改字幕必須重新轉(zhuǎn)碼。軟字幕需要播放器支持而且不同平臺(tái)的解析能力差異很大。我的做法是默認(rèn)硬字幕中文字幕在轉(zhuǎn)碼時(shí)通過(guò)-vf subtitlessubtitle.ass燒錄進(jìn)去因?yàn)榇蟛糠致∮脩艟褪莵?lái)看中文字幕的。多語(yǔ)言支持則是額外抽一條軌或者做成音軌選擇。用 Java 拼字幕濾鏡時(shí)有個(gè)坑濾鏡內(nèi)部路徑中的冒號(hào)和逗號(hào)需要轉(zhuǎn)義Windows 路徑尤其麻煩。我建議先把字幕文件復(fù)制到工作目錄用相對(duì)路徑配合在參數(shù)中加上filename*xxx的方式規(guī)避轉(zhuǎn)義問(wèn)題。3.4 用 H.265 還是 H.264當(dāng)前階段我仍以 H.264 為主。原因很現(xiàn)實(shí)H.265 雖然能在同樣畫(huà)質(zhì)下省 30% 到 50% 碼率但瀏覽器兼容性和老設(shè)備硬解支持還是參差不齊尤其是 Web 端和低端 Android 機(jī)容易出現(xiàn)花屏或無(wú)法播放。短劇內(nèi)容的時(shí)長(zhǎng)本來(lái)就不長(zhǎng)碼率省下來(lái)的流量成本不如直接談 CDN 價(jià)格來(lái)得實(shí)際。如果以后用戶量大、存儲(chǔ)和帶寬成本占比明顯上升再考慮對(duì)老片源做 H.265 二壓。這是成本驅(qū)動(dòng)的選擇技術(shù)上隨時(shí)可以切。4. 切片與分發(fā)HLS 切片不是簡(jiǎn)單加幾個(gè)參數(shù)的事4.1 一次完整的 HLS 切片命令漫劇系統(tǒng)我選用 HLS 協(xié)議來(lái)做播放因?yàn)樗烊恢С侄啻a率自適應(yīng)、易于 CDN 邊緣緩存、天然支持訪問(wèn)控制Java 后端只需要生成好 m3u8 文件和 ts 分片即可。核心命令如下ffmpeg -y -i input.mp4 \ -vf scale1280:720:force_original_aspect_ratiodecrease,pad1280:720:(ow-iw)/2:(oh-ih)/2 \ -c:v libx264 -preset veryfast -crf 20 -tune animation \ -c:a aac -b:a 128k -ac 2 \ -pix_fmt yuv420p \ -force_key_frames expr:gte(t,n_forced*4) \ -hls_time 4 \ -hls_list_size 0 \ -hls_playlist_type vod \ -hls_segment_filename output/720p_%04d.ts \ output/720p.m3u8-force_key_frames這個(gè)參數(shù)是我強(qiáng)烈建議加的它保證每 4 秒一個(gè)關(guān)鍵幀這樣切片點(diǎn)對(duì)齊后多碼率切換時(shí)幀同步更干凈用戶拖動(dòng)進(jìn)度條也能更快定位。如果不加這個(gè)參數(shù)切片點(diǎn)會(huì)由編碼器自動(dòng)決定很容易出現(xiàn)首幀不是關(guān)鍵幀的切片播放器兼容性會(huì)下降。4.2 切片產(chǎn)物如何命名和存儲(chǔ)切片文件名絕不能是原始視頻名更不能是中文。我全部用任務(wù) ID 做前綴比如task_20250115_001_720p_0001.ts每個(gè)轉(zhuǎn)碼任務(wù)有獨(dú)立的輸出目錄結(jié)構(gòu)。這樣做有兩個(gè)好處一是命名穩(wěn)定CDN 緩存 key 命中率高二是排查問(wèn)題的時(shí)候能直接從文件名定位到是哪一次轉(zhuǎn)碼任務(wù)。存儲(chǔ)路徑我習(xí)慣按這個(gè)規(guī)則組織/vod/{taskId}/master.m3u8 /vod/{taskId}/1080p/index.m3u8 /vod/{taskId}/1080p/segment_0001.tsmaster.m3u8 是總播放列表里面通過(guò)相對(duì)路徑引用各清晰度的 index.m3u8這樣切換清晰度不用重新拼絕對(duì)地址播放器兼容性也好。4.3 防盜鏈與 CDN 簽名漫劇內(nèi)容版權(quán)意識(shí)強(qiáng)防盜鏈必須做。我推薦的是“時(shí)間戳簽名 防盜鏈 Key”的方式Java 后端給前端下發(fā)播放地址時(shí)在 URL 上拼接expires和sign參數(shù)CDN 邊緣節(jié)點(diǎn)校驗(yàn)通過(guò)才回源。這里有個(gè)容易忽略的細(xì)節(jié)簽名用文件的相對(duì)路徑計(jì)算而不是完整 URL否則換域名或者加參數(shù)順序變了簽名就會(huì)失效。HLS 切片場(chǎng)景下播放器會(huì)頻繁請(qǐng)求 ts 文件如果每個(gè) ts 都要單獨(dú)簽名URL 會(huì)非常長(zhǎng)而且部分播放器對(duì)帶 query 參數(shù)的 ts 切片支持不好。更穩(wěn)的方案是m3u8 用短時(shí)簽名ts 分片通過(guò) CDN 的 Referer 黑白名單保護(hù)或者用固定的私有前綴加不透?jìng)麒b權(quán)。5. 任務(wù)調(diào)度與重試機(jī)制讓視頻處理不再阻塞主流程5.1 為什么轉(zhuǎn)碼任務(wù)必須異步化我曾經(jīng)見(jiàn)過(guò)有團(tuán)隊(duì)在用戶上傳視頻的 HTTP 請(qǐng)求里直接同步轉(zhuǎn)碼結(jié)果轉(zhuǎn)碼 3 分鐘連接超時(shí)前端只能干等。視頻處理這類任務(wù)耗時(shí)不可控千萬(wàn)不能和請(qǐng)求線程綁定。漫劇系統(tǒng)里每次可能有幾十集批量上傳同步轉(zhuǎn)碼會(huì)把數(shù)據(jù)庫(kù)連接池、線程池全部拖垮。合理做法是上傳接口只負(fù)責(zé)存文件、寫(xiě)任務(wù)記錄、發(fā)消息然后立即返回“上傳成功處理中”的狀態(tài)。后端異步消費(fèi)任務(wù)把轉(zhuǎn)碼進(jìn)度反饋到 Redis前端通過(guò)輪詢或推送獲取進(jìn)度。5.2 基于消息隊(duì)列的任務(wù)狀態(tài)機(jī)我用的消息隊(duì)列是 RabbitMQ因?yàn)椴渴鸷?jiǎn)單、生態(tài)成熟配合死信隊(duì)列做重試非常順手。任務(wù)狀態(tài)用一個(gè)枚舉維護(hù)public enum VideoTaskState { PENDING(0, 等待處理), PROCESSING(1, 轉(zhuǎn)碼中), SUCCESS(2, 成功), FAILED(3, 失敗), RETRYING(4, 重試中); }消費(fèi)邏輯大致是收到消息后先把任務(wù)狀態(tài)從 PENDING 改成 PROCESSING然后執(zhí)行轉(zhuǎn)碼轉(zhuǎn)碼成功后更新產(chǎn)物地址最后返回 ACK。如果轉(zhuǎn)碼失敗不直接標(biāo)記最終失敗而是先做有限次重試。我在 RabbitMQ 里配置了重試隊(duì)列和死信隊(duì)列第一次失敗延遲 30 秒重試第二次失敗延遲 5 分鐘重試第三次失敗進(jìn)入死信隊(duì)列人工介入重試次數(shù)太多會(huì)掩蓋真實(shí)問(wèn)題太少又會(huì)因?yàn)榕及l(fā)網(wǎng)絡(luò)抖動(dòng)導(dǎo)致任務(wù)失敗率偏高3 次是一個(gè)比較平衡的閾值。5.3 并發(fā)控制不能只靠隊(duì)列堆積消息隊(duì)列只解決任務(wù)分發(fā)不解決 FFmpeg 進(jìn)程對(duì)機(jī)器資源的爭(zhēng)搶。一臺(tái)轉(zhuǎn)碼機(jī)同時(shí)拉起 8 個(gè) FFmpeg 進(jìn)程CPU 跑滿、內(nèi)存吃緊、磁盤(pán) IO 爆炸每一個(gè)任務(wù)的轉(zhuǎn)碼時(shí)間都會(huì)成倍拉長(zhǎng)整體吞吐反而下降。我在轉(zhuǎn)碼機(jī)上用信號(hào)量控制并發(fā)數(shù)建議按物理核心數(shù)的一半設(shè)置。8 核機(jī)器并發(fā)轉(zhuǎn)碼數(shù)控制在 4 個(gè)左右16 核機(jī)器控制在 8 個(gè)左右。這樣 CPU 利用率能穩(wěn)定在 80% 左右每個(gè)任務(wù)的轉(zhuǎn)碼耗時(shí)可預(yù)測(cè)任務(wù)隊(duì)列也不會(huì)積壓得太離譜。Java 里的實(shí)現(xiàn)很直接private final Semaphore semaphore new Semaphore(4); public void processTask(VideoTask task) { try { semaphore.acquire(); doTranscode(task); } finally { semaphore.release(); } }如果機(jī)器還承載了 Web 服務(wù)并發(fā)數(shù)再往下調(diào)一檔不要讓 FFmpeg 把 CPU 吃光后連健康檢查的請(qǐng)求都響應(yīng)不了。5.4 冪等與防重消息重復(fù)消費(fèi)要如何處理RabbitMQ 在極端場(chǎng)景下會(huì)有消息重復(fù)投遞比如消費(fèi)者處理完成后還沒(méi)來(lái)得及 ACK 就宕機(jī)了消息會(huì)被重新投遞。如果不做冪等同一個(gè)任務(wù)會(huì)被重復(fù)轉(zhuǎn)碼兩次浪費(fèi)資源不說(shuō)還會(huì)把產(chǎn)物文件覆蓋成相同內(nèi)容雖然最終結(jié)果沒(méi)大問(wèn)題但中間狀態(tài)會(huì)干擾監(jiān)控?cái)?shù)據(jù)。我的做法是在數(shù)據(jù)庫(kù)表上對(duì)task_id建唯一索引消費(fèi)消息前先嘗試插入一條處理記錄如果唯一索引沖突說(shuō)明任務(wù)已經(jīng)被處理過(guò)直接 ACK 丟棄即可。同時(shí)轉(zhuǎn)碼產(chǎn)物采用“先寫(xiě)臨時(shí)目錄成功后原子改名”的提交方式保證任務(wù)狀態(tài)和產(chǎn)物文件的一致性。6. 線上環(huán)境必須重視的幾個(gè)隱形坑6.1 僵尸 FFmpeg 進(jìn)程是怎么產(chǎn)生的Java 進(jìn)程拉起 FFmpeg 后如果 JVM 發(fā)生 OOM 或者被強(qiáng)制 KillFFmpeg 子進(jìn)程會(huì)變成孤兒進(jìn)程繼續(xù)跑。它可能占著幾個(gè) G 內(nèi)存但已經(jīng)沒(méi)有任何人在管理等它結(jié)束了。時(shí)間一長(zhǎng)機(jī)器上會(huì)積壓一堆僵尸轉(zhuǎn)碼進(jìn)程資源被白白消耗。我現(xiàn)在的做法是雙保險(xiǎn)啟動(dòng) FFmpeg 時(shí)用獨(dú)立的進(jìn)程組JVM 退出時(shí)通過(guò) shutdown hook 去銷毀同時(shí)寫(xiě)一個(gè)定時(shí)任務(wù)掃描超過(guò)任務(wù)超時(shí)時(shí)間仍然存活的 FFmpeg 進(jìn)程直接 Kill 掉。這個(gè)掃描腳本不用寫(xiě)復(fù)雜邏輯匹配命令行里包含對(duì)應(yīng)任務(wù) ID 的進(jìn)程即可。6.2 轉(zhuǎn)碼速度預(yù)估一集短劇到底要等多久轉(zhuǎn)碼時(shí)長(zhǎng)取決于原始分辨率、編碼器、CPU 性能。拿一個(gè) 2 分鐘 1080P 的漫劇素材來(lái)算用 x264 的veryfast預(yù)設(shè)、8 核 CPU轉(zhuǎn)成 720P HLS 切片實(shí)測(cè)大概需要 15 到 25 秒。如果三檔清晰度都?jí)嚎偤臅r(shí)大概在 40 到 60 秒。這個(gè)量級(jí)決定了異步任務(wù)和進(jìn)度反饋是剛需也決定了并發(fā)控制的上限。如果要優(yōu)化耗時(shí)優(yōu)先考慮上 NVIDIA NVENC 硬件編碼。-c:v h264_nvenc的編碼速度比 x264 快 5 到 10 倍畫(huà)質(zhì)在低碼率下不如 x264但對(duì)短劇內(nèi)容來(lái)說(shuō)NVENC 的默認(rèn)配置已經(jīng)夠用。加了 GPU 之后一臺(tái)帶 Tesla T4 或同等性能卡的機(jī)器能扛幾十路并發(fā)轉(zhuǎn)碼。6.3 磁盤(pán) IO 和臨時(shí)目錄的清理轉(zhuǎn)碼過(guò)程中中間文件的讀寫(xiě)非常頻繁尤其是一邊讀原文件、一邊寫(xiě)多個(gè)清晰度的切片的場(chǎng)景對(duì)磁盤(pán) IO 壓力很大。不要貪便宜用機(jī)械盤(pán)或共享存儲(chǔ)做轉(zhuǎn)碼工作目錄本地 SSD 是底線。我通常給每個(gè)任務(wù)建獨(dú)立臨時(shí)目錄任務(wù)結(jié)束后無(wú)論成功失敗都遞歸刪除避免臨時(shí)文件把磁盤(pán)塞滿。一個(gè)容易忽略的點(diǎn)是對(duì)象存儲(chǔ)回源拉流的臨時(shí)文件也會(huì)占磁盤(pán)所以要為工作目錄單獨(dú)掛盤(pán)并設(shè)置容量告警。有一次我線上磁盤(pán)告警排查發(fā)現(xiàn)是某個(gè)異常任務(wù)反復(fù)重試每次拉取原文件到本地都沒(méi)清理最后把盤(pán)寫(xiě)滿了。6.4 日志規(guī)范出了故障能快速定位到具體環(huán)節(jié)視頻處理鏈路涉及上傳、消息、轉(zhuǎn)碼、上傳對(duì)象存儲(chǔ)、更新數(shù)據(jù)庫(kù)、CDN 預(yù)熱等多個(gè)環(huán)節(jié)必須把日志打全。我在每個(gè)任務(wù)的處理過(guò)程中會(huì)把 taskId、當(dāng)前步驟、耗時(shí)、退出碼都打在一個(gè)統(tǒng)一的日志結(jié)構(gòu)里比如taskId20250115_001 steptranscode encodelibx264 crf20 duration18342ms exit0 taskId20250115_001 stepupload oss cost321ms object/vod/20250115_001/master.m3u8這樣線上定位問(wèn)題的時(shí)候直接按 taskId 一篩整條鏈路的耗時(shí)和結(jié)果一目了然。不要小看這個(gè)習(xí)慣漫劇系統(tǒng)一次批量更新幾十集出問(wèn)題的時(shí)候逐個(gè)翻裸日志真的會(huì)瘋掉。視頻處理不是核心業(yè)務(wù)中最“性感”的部分但它直接決定了用戶的播放體驗(yàn)和平臺(tái)的帶寬成本。Java 后端能做的是把這條鏈路管得足夠穩(wěn)讓 FFmpeg 這種強(qiáng)大的底層工具在最合適的位置發(fā)揮力量。參數(shù)可以慢慢調(diào)架構(gòu)必須一開(kāi)始就扛住沖擊。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本一级性爱| 懂色Av| 久久午夜神马| 真实高潮91| 欧美自拍网| 国产福利电影| 蜜臀久久99精品久久久老,,| 国产超碰AV在线精品| 欧美专区17页| AV在线资源| 69精品久久久久中文字幕| 超碰九7| av资源在线观看少妇| 一区二区三区高清| 激情文学小说一区二区| 骚乳在线| 亚洲一区二区三区麻豆传媒| 色噜噜狠狠色综合日日| 成人日韩3| 欧美日日人人天天| 激情五月综合| 日韩性爱长视频免费| aaa淫乱视频| 女人天堂AV五区在线| 国产精品一级毛片不卡视| 暴力av在线| 综合欧美日韩在线| 射欧美综合| 操久久久久久| 色五月婷婷网| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 精品免费囯产一区二区三区| 精品色色| 免费av在线播放二区| 天天射天天色成人| 97亚洲在线| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 密乳无码| 在线观看综合精品亚洲| 97人妻免费中文字幕| 九九视频黄色片| 亲子敌伦对白在线播放| 精品国产乱码久久久久久网站入口| 激情另类激情| 精品人妻一区二区三区不卡断| 老女人91| 一本大道青青| 加勒比海人人操超碰在线| 大香蕉92| 少妇天堂网络| 操国产逼| 亚洲激情欧美色图| 美女尤物福利视频| 自拍偷拍 日韩无码| 加勒比色综合| 亚洲 中文 女同| 国产精品自拍xxxx| 女人喷水视频在线观看| 99久在线精品99re8| 欧美熟女少妇| 亚洲国产一区二区入口| 亚洲综合嫩| 91久久精品国产| 日韩中文字幕人妻视频| 久午视频| 男男H黄动漫啪啪无遮挡网站| 韩国三级一线观看久| 亚洲精品不卡一二三区| 亚洲āv网址在线观看| 久久99草| 天堂av2019| 91在线精品一区二区三区| 天美传媒精品久久视频| 黄色大片视频在线免费看| 日本熟女不卡视频| 久久性爱网站| 五月天丁香欧洲日韩| 91色综合激情| 天天综合站| 夜夜高潮夜夜爽夜夜爱爱一区 | 日韩中文字幕av在线播放| 亚洲综合小视频小说在线观看 | 亚洲成人久久一区二区| 开心五月激情网| 91蜜臀在线久久久久| 色色99| 偷拍亚洲情色| 亚洲国产美女久久久久| 激情接吻视频久久久久久| 色五月婷婷久久| 国产精品午夜成人福利| 中字一区| 天天澡天天爽日日AV| 久久riav中文精品| 99爱久久视频频| 亚洲欧美日韩国产丝袜自拍中文| 大香久久| 国产精品成人无码av| 一级免费啪啪片| 丝袜无码a片| 青青青青操国内视频在线| 亚州综合网| 久久99午夜精品一区人妻| 日产狠狠干| 搡老女人老91妇女熟女| 日本伦乱九九九综合| 免费观看啪视频| 美女淫穴| 天天看天天日天天操| 99热啪啪| 天天摸天天操视频| 国产一区在线免费播放| 欧美日韩天堂| 日欧操屄| 国产久久一区二区三区野外在线| 精品人妻一区二区三区日产| 狠狠干狠狠干| 99rre在线精品99re8| 国产www色在线观看| 91亚洲精品青草| 校园春色家庭伦理欧美激情| 亚洲精品国产专区在线观看| 东京热av男人的天堂| 91欧洲国产成人久久精品网站| 国内三级自拍小视频在线观看| 91天天爱| 亚洲无码一区成人免费午夜| 熟妇艹鸡八| 神马午夜久久久| 亚欧中文字幕在线视频| 亚洲高清少妇| 男人的天堂kva| 人妻熟妇久草在线| 91高清日| 亚洲欧洲网站免费观看| 白嫩妹子国产骚| 国产不卡免费在线视频| 国产美女激情| 自拍偷拍 日韩无码| 熟女露脸激情自拍视频| av凤凰久久久| 97超碰超碰| 花野真衣| 1人人看人人摸人人操| 色九九九| 一个人免费HD91视频| 国偷自 一区二区| 人人弄人人摸| 欧美性爱一区二区三区四区 | 亚洲免费人妻在| 后入式福利| 操屄不卡视频| 亚洲色图A| 无码欧美有限公司| 一级@啪啪视频| 大香蕉99热| 久久亚洲AV无码专区首页| 丝袜狂射91| 久热伊人| 欧美精品宗合| 7月婷婷综合| 91在线丝袜视频| 人人做,人人操,人人摸| 亚洲棕合电彰| 亚洲av淫乱| 97视频播放| 久久婷婷色| 亚洲男人电影天堂| 欧美青青视频| 96AV精品| 天天影视网综合少妇| 免费岛国一级片| 天天超级碰碰碰| 黄片在线免费在线观看| 日本黄大片在线观看视频| 二级久久网| 中文字幕 国产 精品| 天天拍夜夜| 超碰碰激情97+久| 黄色高清无码无码破解免费暗网| 欧美人妻少妇| 激情文学小说一区二区| 欧美人妻二区三区| 精品婷婷| 乱论91| 日韩啪啪视频| 欧美激情一| 男人天堂.AB| 手机看片1024你懂的国产| 亚洲欧美综合| 亚欧美综合网| 欧美 亚洲 制服 精品| 丁香婷婷激情五月天无毒不卡| 无码人妻一区二区三区免费九色| 大香蕉五月天婷婷| 天天久久久久久| 一级黄色视频网| 99啪啪视频| 粉嫩久久久极品| 在线无码视频| 亚洲欧美在线综合| 色色色色日本| 人人搡人人肉久久精品| 看日韩黄片| 五月婷婷色色| 亚洲九九爱| 成人毛片免费| 中国特猛少妇色xxx| 熟女一区二区| 人妻天堂综合网| 蜜桃无码AV一区二区| 亚洲一卡2卡3卡4卡乱码网站| 亚洲综合影院| 国产av白丝| 亚洲日韩精品一区二区| 小泽玛利亚一二三| 97伊人网| 大香蕉伊人网WWWn0n| 大象AV在线| 日韩丝袜高跟制服在线观看| 内射黑人| 无码91| 婷婷亚洲五月***久久| 黄色av片三级三级三级免费看| 老熟女乱子伦中文字幕一区二区| 国语国产操逼伊人AV网| 抽插无码高清一区| 天天操天天插| 精品国产一区二区久久| 亚洲情色一区三区| 久久超碰免费的| 中文字幕人妻色偷偷久久皮| 制服少妇欧美| 欧美日韩青操| 99999久久精| 欧美18 在线观看| 日本操大逼| 伊人色综合网| 狠插 制服 自拍| 小骚逼被操的爽不爽| 亚洲欧美变态| 久草尤物| 91在线无码精品秘 软件| 亚洲欧洲日韩国产自在线| 91丨九色丨东北熟女| 亚洲男人的天堂V| 久久久精品中文字幕麻豆| 久久精品国产亚洲粉嫩| 国内偷自视频区视频综合 | 午夜性| 日本中文字幕一区| 婷婷伊人綜合中文字幕| 天天爽夜夜欢视| 97超碰这里只有精品| 国内一级精品| 欧美色性爱| 久久久蜜桃一区二区三区| 美女AV一区二区| 亚洲综合网91| 日韩欧美午夜视频在线| 日本999精品| 国产精品扒开腿做爽爽爽视频| 日韩性爱毛片操骚逼| 亚洲男人的天堂亚洲| 99色骚| 黑人猛交| 美女露胸露奶头| 亚洲情色 自拍| 中文字幕精品一区欧美| 精品国产网站| 0755午夜福利视频| 亚洲天堂电影精品一区| 97亚洲色图| 尤物一级在线免费观看| 干美女人妻| 草莓精品视频在线免费观看| 草久久久| 精品午夜福利国产一区二区在线观看| 成人影 天天操 亚洲| 久久综合97| 天天肏夜夜肏| 日本 情色 1区2区3区| 老外又粗又长一晚做五次| 国产原创自拍| 日本在线伊人啪啪| 操一区| 人妻夜爽夜夜爽| 国产精品自在自拍视频| www.acm成人黄色毛片| 久久黄色视频一区二区三区| 色婷婷一区二区三区久久午夜成人不| 人妻一区视频| av 模特一区了| 欧美性爱无码一区二区三区| 91爰爱欧美| 不卡av在线中文字幕| 久草资源欧美在线视频| 少妇高潮对白在线观看| 人妻另类| 日韩在线女优天天干| 精品福利| 啊啊好多水| 欧美精品成人在线播放| 色九九综合AV| 久久久精品国产亚洲AV无码| 欧美日韩人妻精品一区二区三区| 久久骚| 久久久亚洲| 亚欧精品久久久久久久久久久| 一二三区精品视频| 伊人天堂在线| 人妻9117c| 成人老鸭窝人人在线视频| 欧洲在线性爱视频| 久久少妇视频| 亚洲精品啪视频| 综合色久欲| 97色干| 视频不卡中文字幕| 国产美女激情| 第一高清av中文字幕| 97超碰精品图片| 国产农村妇女一区二区| 欧美色性爱| 成人精品久久| 东京热不卡视频| 99啪啪视频| 曰韩中文人妻视频| 亚洲欧美国产va在线| 亚洲色啪| 国产精品白丝在线播放| 99re在线视频这里只有精品| 久久黄黄| 日韩一区二区高清在线观看的| 91制服丝袜| 欧美视频第二页| 亚洲第一成人影院色播| 私人尤物在线精品不卡| 天天日熟妇| 久久精彩视频9| 强奸乱伦麻豆| 夜夜草天天| 日韩大香蕉精品在线视频| 欧美色棕合| 操逼操逼视频操逼| 国产精品午夜AV完会免费 | 色哟哟精品1精品2| 欧美午夜色妇色鬼| 东京热男人的天堂网| 日本操逼视频不卡直接放| 青草伊人网| 91美女视频在线| 99热最新| 逼逼逼逼操操操操操操操操操午夜剧场| 亚洲天堂男| 高清不卡 中文 人妻| 一区二区三区在线资源| 久久精视频美日韩在线视频| 草草影院日本第一页| 久久精品国产亚洲5555| 国产精品一区二区三区四区五区| 久湿久久| 国产欧美后入| 超碰综合色| 爱射综合| 宅男午夜在线视频| 久久大线蕉一区| 日本一二区免费| 伊人激情| 91九色精品熟女内射| 91人妻中文| 老熟女乱伦一区| 夜夜躁狠狠躁日日躁av| 日韩99999| 亚洲久草AV色图| 中文字幕第23区| 牛牛久久国产精品视频一二三 | 国产女人高潮嗷嗷嗷叫小说 | 九九黄色网| 岛国成人av在线播放网址| 911av网站免费观看| 国产婷婷综合在线观看| 国产亚洲日韩欧| 日本性爱视频一级| PMv在线观看| 91在线免费精品视频| 免费精品无码一级毛片牛牛影视 | 九九这里只有精品| 91碰碰| 五月天大香蕉| 热久久这里只有精品| 婷婷五月成人| 中文字幕av久久爽Av| 日韩在线人妻网站| 日韩精品影视| 国产精品伦理| 97超碰超碰| 在线日韩日本亚洲国产| 内射小黄片| 欧美αv.com| 户外裸露刺激视频第一区| 伊人色综合网电影| 人夜夜精品网站香蕉嫩草| 亚洲。日韩。欧美| 国产精品熟女九九九| 99re99视频在线免费观看| 亚洲性图91| 人妻夜爽夜夜爽| 另类图片综合| 综合久久久久久久综合网| 日韩少妇一区二区三区| 欧美图片偷拍| A一级色女| 熟女少妇一区二区三区| 国产第12页| 免费综合亚洲中文| 91人妻视频| 国产又大又粗又长视频| 欧美影院一区二区三区| 无码逼| 吻戏激情性巴克| 秋霞午夜视频一区二区| 亚洲综合有码| 尤物黄色在线观看网站| 大香蕉婷婷| 五月婷婷hd| 日日躁狠狠躁天天躁精品| 亚洲 暴爽 AV人人爽日日碰| 日本一本道A级黄色毛片试看60分钟| 视频二区美腿丝袜制服人妻欧美| 天美传媒av在线| 欧美综合网在线| 91c色| 日本熟妇熟色97一本在线观看| 久久同城AV| 久久超碰网| 日韩黄色一区二区三区| 高跟伊人julia ann| 91九色丨风韵犹存| 蜜臀AV网站| 欧洲精品在线播放| 国产精品点击进入在线影院高清| 啊v视频在线观看| 91丝袜激情在线| 国产女同在线观看视频| 91蜜桃婷婷狠狠久久综合9色| 伊人伊人LD| 最新亚洲黄色免费电影| 黄污污污污| 91在线观看,天天综合| 久久无码成人| 少妇三P| 国产91影院| 女色视频社区| 色九久| 精品超碰国产| 国产91专区| 一级特黄aaa大片在线观看成人一级片在线观看 | 懂色AV蜜臀无码精品APP| 美国久久一二三四| 国产a片操逼| 骚货| 日本操逼无码| 九九九九九九亚洲| 一区在线精品中文字幕| 亚洲综合在线高清| 国产福利电影| 天天享受天天看| 亚洲国产成人精品999| 人妻一区二区三区| 99精品国产户外露出| 天堂日本亚洲欧美| 国产最火爆久久国产网站网站| 99自拍B亚洲| 高清有码一区二区| 99啪啪| 一级毛片久久久久久久女人18| 欧美亚洲20p| 性色av大全| 久热久操| 国产激情片在线观看| 伊人97| 超碰亚洲欧美日韩无| 天美91| 午夜性| 天天色黄色影院天天操| 日本一久是| www.av在线观看| 国内一级精品| 亚洲欧美综合色| 91夜色chaopeng| 翔田千里Av在线| 精品无码一二三四区| 午夜福利免费福利视频| 欧美 亚洲| 台湾肥佬网一区二区三区| 免费又黄又裸乳的视频| 久久在肏| 大香蕉综合在线| 99久在线精品99re8热| 综合网欧美| 午夜精品久久久久| 婷婷精品| 天天狠操| 精品国产乱子伦一区二区三区,精品一| 91在线欧色| 欧美老妇曰批的视频| 欧美日韩小说| 欧美97在线观看| 手机看片1025| 国产精品不卡一区二区三区av| 亚洲999综合| 五月天综合| 国产乱伦亚洲| 97超碰色情| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV| 国内毛片无码一级毛片| 十八禁视频一区二区| 深夜激情 | 欧美爱三级日韩久久| 青草伊人网| 偷拍超碰| 国产人妻精品久久久一区二区三区| 377p欧洲日本亚洲大胆| 国产在线播放成人免费| 成人情色综合网| 成人天天看站长推荐| 狠狠色婷婷| 久久精品国产亚洲AV片多多| 亚洲无码超碰免费| 日韩精品午夜操呦呦不卡影院| 久久超碰97中文字幕| 男人的天堂2019AV| 青娱乐日韩无码| 国产欧美精选激情视频| 7777奇米影视久久| 韩国三级一线观看久| 九九热精品| 久久久久久裸体| 亚洲 欧美 小说| 亚洲精品蜜桃久久久一区二区三区| 无码视频黄色网战| 嫩草影院在线观看精品| 隔壁邻居波多野结衣中文字幕| 中文字幕在线观看网址| 激情欧美97| 九九九九亚洲| 日韩欧美女求操每天更新| 国产91丝袜在线播放蜜月| 91AV天堂| 久久综合久色欧美综合狠狠 | 超碰在线1234区| 欧美精品久久| 91色伦综合| 99热婷婷| 男人 天堂 日 亚洲| 中文字幕99999| 中文字幕日本久久| 中文字幕第23区| 另类亚洲一区二区三区| 久久大香蕉手机高清视频| 加勒比色99999| 国产亚洲日本精品在线| 欧美日韩另类字幕中文| 日本成人A片免费看| 亚洲五区熟女| 91久久久亚洲| 亚洲有薄码区日本系列中文字幕| 久热这里只有精品9| 久久精品国产72国产精品福利| 天天色踪合| 国产二区视频在线观看电影| 亚洲永久永久永久永久一级一级一级精品 | 精品久久艹| 欧美色日本| 人妻二区| 曰韩精品视频一区二区| 国产三级中文有码在线视频| 婷婷久久网| 欧美大波激情xxxx| 综合五月天| 亚洲色宗合| 欧美综合97www| 狠狠爱综合网| 嫩草 人人网精品| 免费的黄片有限公司| 欧美熟妇人体| 啪啪啪东京| 亚洲精品天堂久久A∨51成人漫| 日韩性爱视频在线免费观看| 激情久久av一区av二区av| 亚洲一区深夜| 情色五月天网| 久久人| 夜夜天天噜狠狠爱2021| 免费观看欧美日韩操逼视频| 天天日天天操VV| 亚洲欧洲日韩中文字幕一区| 岛国在线国产| 9久久精品| 天美传媒Av在线| 东京热,男人的天堂| 国产又猛又粗又爽又黄| 色墦五月丁香| s片在线观看| 97超碰久久| 1禁看欧美黄片免费看| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 9久9久9久9久视频网站| 秋霞一级鲁丝片A片| 探花激情视频| 麻豆国产成人精品| 搡老熟女免费视频| 久久香蕉网| 4虎在线视频| 18禁止看精品中文字幕| 天天干美少妇一区| 少妇精品久久久八区九区| 欧美综合网在线| 伊人五月天激情| 在线天堂999| 精品人妻一区二区免费看| 欧美人妻精品一区二区| 神马午夜久久久| 欧美一级在线观看成人| 久久99综合| 骚妻少妇精品性色无码四色A V| 日韩成人性日韩成人性爱视频在线免费观看 | 国产suv精品一区二区四| 国产国产亚洲一二三久久| 亚洲最新av无码成人精品区 | 很很操在线| 九九碰九九爱97超碰| 999熟女精品| 福利社区午夜一区二区| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 目产99999久久999| 自拍偷拍 日韩欧美| 久久久999日本大片| 午夜精品久久久久久久第一页按摩| 久久久免费一级黄片| www.av不卡中文字幕| 欧美大香蕉同搞| 九九九九免费高| 免费人成在线观看网站品爱网| 欧洲精品在线播放| 熟妇xxxxx性春色| 欧美熟妇操操视频| 欧美日韩另类在线播放| 大香蕉男人的天堂| 欧美十八禁导航成人| 蜜桃精品一区二区三区久在线| 久久国内| 深喉吞精| 91九九九馒头| 免费日韩黄片| 久久噜| 欧美国产日韩高清在线| 4虎在线观看| 欧美日韩国产中文超碰| 免费观看成人www精品视频| 国产性感在线观看| 伊人网综合在线视频| 精品久久久久成人码免| 久热99| 欧美裸体美女日麻屄| 宗合情欲网| 欧美极品性爱天天射| 干b网| 97爱免费插| 操操吧亚洲乱伦视频| 丝袜色综合| 99色在线视频| 插入逼91| 操91| 无码WWW免费视频网站| 91老女人| 一区AV| 无码精品久久| 久久riav中文精品| 2021久久国产综合精品青草| 强奸乱伦av电影| 久久99午夜精品一区人妻| 日韩av不卡在线观看| 亚洲精品乱码久久久久久蜜桃麻豆| 唐山老熟妇露脸啪啪叫| 91在线无码精品秘 软件| 婷婷久久五月| 69精品在线| 天天摸夜夜摸| julia中文字幕在线观看| 日韩精品国模| 美女91网| 日韩电影在线观看网址| 久久透逼视频| 最新中文字幕在线亚洲| 狠狠操狠狠爱| 亚洲日韩av一区二区三区百合| 中文字幕人妻色偷偷久久皮| 国产精品午夜福利视频| 狠狠色五月亚洲91| 国产老太乱伦一区| 国产在线强奸视频| 亚州欧美总和| 婷婷激情四射| 精品亚洲黄色片 国产精品导航一区二区 | 狠狠爱夜夜| 搡老熟女免费视频| 亚洲精品影视老司机| 久热大香蕉| 久久久精品中文字幕爱豆| 亚洲性少妇| 欧美大香蕉97| 玖玖97综合| 亚洲综合在线视频| 天天干天天狼在线视频| 无码丰满熟妇一区二区浪潮AV| 碰碰97| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 欧美成人精品一区二区男人蜜臀| 白丝少妇一区二区| 中文字幕视频在线观看一区二区| 天天射影院| 婷婷综合五月| 亚洲一区日韩| 精品性爱一区二区| 秋霞蝌科网日本一区| 奇米四色影视777久久久| 超碰精品国产无码| 天天看天天日天天操| se..亚洲欧美| 久久系列| 大肥女高潮bbwbbwhd视频| 一起草视频在线| 欧美 亚洲 在线| 欧美亚洲首页| 色九久| 97天天| 男人天堂网站| 国产在线观看一区二区三区| 国产h小视频在线观看免费| 久久久久久97| 在线αⅴ| 亚洲h片在线免费观看| 18禁无码永久免费无限制| 被男人吃奶很爽的毛片| av天堂精品久久| 欧美日韩国产黄色片| 无码精品久久久天天影视| 国产操偷| 国产大学生高潮在线播放| 久久久激情| 2020视频1区2区3区| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 五月丁香激情啪啪| 人妻久久久久久久久久久久久久久| 久久精品国产精品亚洲艾通辽熟妇 | www. 男人天堂成人在线| 伊人午夜福利视频| 巨乳特殊服务按摩| 97综合| 久久久久免费看少妇A片特黄| 日操粉逼逼| 欧美色婷婷| 密臀在线免费观看| 亚洲综合贴图91| 久久99干一本高清| 久久精品人妻一区| 国产女人和拘做爰视频| 秋霞视频一区二区| 亚洲成人一二三区| 中文熟女五十乱码在线| 亚洲激情视频| 可以在线观看的黄色网址| 成人黑料社久久| 四虎永久在线精品免费网址| 久草热制服丝袜在线观看| 婷婷激情丁香| 性综合网| 久久精视频美日韩在线视频| 奸色色 男人天堂 天天射| 亚洲日韩熟女人妻高清在线| 东京太热男人的天堂久久久| 亚洲欧洲日本精品中文a∨| 尤物国产一区在线观看| 搡老女人老妇女老妇老熟女怎么读| 啊啊啊啊啊啊啊啊啊啊在线观看| 国产精品农村妇女| 狠狠中文字幕| 亚洲欲色9532548967一区| 欧美大色交| 亚洲色图综合| 亚洲欧美中文日韩视频中国语| 夜夜高潮夜夜爽高清视频一 | 玖玖爱在线视频免费观看| 日本高清有码网址视频| 啊啊啊好湿久久| 一区e区三| 久久久99免费| 中文字幕一区av| 久久视频,这里只有精品| 一本一道久久综合久久| 亚洲熟妇图片| 欧亚成人在线视频| 奇米狠999| 午夜国产综合视频在线观看 | 国产成人无码啪| 无码9区| 九草九九九| 国产成人自拍视频视频| 加勒比无码一区二区三区| 欧美激情一| 国产高清免费不卡av| 欧美狠狠弄| 白丝AV| 五月天激情婷婷| 久久久性少妇| 手机在线A片| 久久蜜色情在线视频xxx免费观看| 免费国产视频| 亚洲宅男天堂| 天天天肏屄肏屄肏屄欧美欧美| 国产女生在线| 啊啊啊在线看| 亚洲av淫乱| 超碰伊人在线| 亚洲黄色网址视频| 欧洲亚洲天堂精品 | 亚熟hd视频在线| 澳门黄片一香蕉视频| 丰满人妻一区二区三区四 | 98一区二区精品| 78精品| 99热| 夫妻天天操岛国视频| 99在线精品视频| 久热热| 又黄又爽在线观看视频| 丰满人妻-区二区三区| 久操大香蕉手机视频在线看| 欧美+日产+中文| 男人天堂久久精品| 亚洲综合91| 91亚洲青青草原精品1区| 色在线视频导航| 欧美一二三区四五区| 成人小说视频在线精品欧美| 牛牛久久国产精品视频一二三| xxxx网站亚洲精品| 蜜桃视频啊啊啊啊| 91精品久久久久久综合五月天| 青草精品视频一日本久久久久网站| 五月丁香色综合| 天天澡天天爽日日AV| 蜜臀AV成人精品蜜臀AV久久| 日本三级一区二区 在线| 男人天堂网手机版婷婷| 99久久九九| 女人天堂av在线播放| 老师充足的奶水小说| 91九色蝌蚪在线观看| 少妇久久久免费| 污啪啪啪视频| 人人操人人干xxx| 热的中文 热的有码 热的国产| 亚洲各类熟们中文字幕| 欧美色图20p| 美女AV一区二区| 一区二区三区视频在线观看免费| 伊人久久AV诱惑悠悠| 四虎视频在线观看| 亚洲啪啪性视频| 97精品国产| 超碰97首页| 99在线免费视频| 免费成人在线观看91| 九热超碰| 青青草国产亚洲精品久久| 夜色AV无码手机在线影院| 欧美性第一页| 婷婷久草| 欧美嗯啊……在线观看视频免费| 国产精品无码av| 好吊色青靑草| 日本精品九九九| 啊啊啊啊啊啊啊国| 国产激情av女片自拍| 日韩熟女三十乱伦| 色偷偷综合91久久噜噜| 国产精品经典一卡久久久 | 极品色电影院| 大香蕉手机在线视频| 福利色色| 久久受www免费人成| 日韩无码人妻中字久久三区四区| 久草精品国产蜜臀| 黑丝少妇在线观看| 特级丰满少妇一级AAAA爱毛片| 2024年最新色情网站在线观看| 9 1超碰九色| 夜夜久久| www.97在线| 欧美日韩99精品麻豆传媒| 日韩成人大片一区二区| 日韩中文字幕国产| 亚洲综合第一页| 在线观看啊啊啊啊啊| 一直超碰| 丝袜天堂| 台湾佬中文娱乐自偷自拍| 中文字幕 码 自拍 视频 区| 大香蕉免费乱伦视频| a一区二区三区乱码在线| 黄片www视频免费| 亚洲女优有码无码高清| 9999久久久久| 麻豆成人av| 九热大香蕉| 嗯阿好爽好紧| 婷婷色一区| 欧洲色色| 久久综合五月天| 日韩在线观看中文字幕视频| 中国女人内射6XXXXX| 一类av片在线看| 欧美日韩黄片精品在线| 岛国免费视频在线| 亚洲 暴爽 AV人人爽日日碰| 啊v在线观看视频| 蜜臀网 一区| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | Julia在线播放亚洲久久| 99日韩| 激情综合色| 蜜桃臀av在线观看| 夜夜爽77777| 玖玖97综合 | 强奸乱伦AV一天堂网| 日本孕妇一区二区视频操逼免费看| 婷婷涩嫩草鲁丝久久午夜精品| 白丝一区| 久久欲| 999亚洲国产视频| 亚洲毛片一级带毛片基地| 中国东北熟女老太婆内谢| 久草福利在线资源站| 色情五月丁香| 欧美亚洲玖玖玖| 美女在线H91| 玖玖爱一区在线| 久久精品人妻一区二区| 97久久国产精品| 高清无码学生妹高潮| 不卡视频一区蜜桃视频| 曰韩中文人妻视频| 亚洲欧洲无码bt精品合集| 欧美综合娱乐久久| 国内自拍 日韩激情 99| 先锋精品av色鲁| 中文字幕片| 亚洲熟女偷拍在线观看| 96超碰网| 国产超碰AV在线精品| 欧美顶级黄色大片免费| av大香蕉| 91视频成人福利网站在线一区| 4虎在线视频| 久久αⅴ| 黄色激情电影在线观看| 亚洲欧美日韩综合在线尤物 | 爱爱动态60秒| 在线岛| 丁香六月啪啪| 丝袜喷水在线| 欧美日韩亚洲国产中文永久天天看| 91欧美网| 国产精品无码久久久久2025| 五月婷婷爱六月丁香色| 少妇毛片久久| 久久久91福利姬| 午夜精品久久久| 在线精品福利免费播放| 日韩情色视频| 国产熟女自拍| 欧美成人免费在线观看| A 天堂在线观看视频| 午夜呻吟欧美| 色亚洲欧美| 国产最火爆久久国产网站网站| 九色婷婷| julia中文字幕在线观看| 欧美日韩在线小说 | 超碰国产在线| 伊人 俄罗斯 a v| 日韩小电影| 人人操人人大香蕉| 久久鲁夜| 久久加勒比| 国产一区二区三区影片| 诱惑人妻欧美一区在线播放| 一起草视频在线| 国产精品免费视频人成| 日韩情色AV| 超碰免费97| www激情| 欧美中字不卡| 日欧操屄| 91精品电影18| 高清无码 国产精品| 宅男午夜在线视频| 久操免费观看| 无套内射性感少妇视频| 91黑丝美女| J?P?NESEHD熟女熟妇伦| 久久草草欧美精品| 久久久无码精品人妻二区| 波多野结衣先锋影音| 青青草伊人久久| 啊啊啊好想要| 校园春色 男人天堂| 久久东京热成人| 中文字幕123| 亚洲有码第一页| 眼镜人妻101.com| 操我啊啊啊啊啊| 亚洲情色综合| 性色一线| 久久精品熟妇丰满人妻99| 超碰碰碰碰| 欧洲精品二区| 亚洲综合激情五月久久| 大香蕉懂9| 99日韩| 偷偷人人精品女女久久| 五月丁香啪啪网| 竹菊一区二区三区AV线| 99人人干| 日夜精品| 天天色悠悠激情| 3PAV乱伦视频| 肥臀熟女福利视频一区二区| 日韩三级伦理中文字幕| 欧美少妇一区二区三区| 2017av无码免费无线播| 中文字幕av久久爽Av| 久久av无码| 亚洲吊色| 日本Xx性爱| 久9爱精品| 东京热激情视频一二三区| 国产一级高清免费观看| 久艹伊人精品综合在线| 大香蕉www.超碰| 男人天堂网手机版婷婷| 麻豆国产免费影片| 91性感在线| 日本伦理一区二区| 欧美日韩免费性爱| 久久精品日韩专区免费观看| 日本日逼视频网| 91视频在线观看18| 中文字幕亚洲欧美在线不卡| 成年人黄色小视频网站| 骚货 中文字幕 av| 日韩人妻精品久久久久| 欧美成人性爱视频在线播放 | 韩国三级理论在线| 亚州性色| 91网18| 国产亚洲精品第一最新| 欧成人精品H无码| 亚洲视频一二区| 综合自拍| 欧美不卡五十路| 啊啊啊啊啊啊啊网址在线观看| 色婷婷导航| 国产精品高潮久久久无码| 91老熟女老女人国产老太| 九九性爱网| 日产操逼| q2午夜理论片夜色av| 久久久亚洲精品电影免费看| 天天综合网日韩7799| 久操免费观看| 欧美国产成人在线| 熟女精品一区二区三区| 亚洲小电影免费涩涩成人在线高清 | 精品午夜福利国产一区二区在线观看 | 色牛aV| 少好三P| 亚洲AV乱码专区国产噜噜亚洲| 久久高清欧美国产| 张柏芝国产一区在线观看| 日韩欧美蜜桃精品久久中文字幕久久| 日夜啪电影| 黄色小视频日本txt| 亚洲中字幕日本一区二区三区| 国产少妇内射| 亚洲人妻熟妇三十三区| 婷婷在线播放| 中文字幕123| 蜜乳成人AV| 91n欧美| 97精品视频在线播放| 91熟女综合| 丝袜夫妻自拍| 99久在线精品99re8热| 亚洲欧美自拍偷拍| 中文字幕精品探花视频| 91四海无码日韩欧美| 久久久久网站-538在线视频-欧美永久乱码 | 国产男女无套视频免费观看| 精品久久久久久无码| 天天伊人| 91女日逼| 超碰在线综合97| 天天澡天天爽日日av| 日韩熟女精品无码专区一区二区| 丁香五月色| 欧美色综合影院| 91高清无码下载| 久久精品国产亚洲AV先锋| 日韩久射综合| 97在线观看视频| 操老熟女AV| 亚洲黄色网址| 秋霞一区二区三区四区五区六区七区| 麻豆色约约| 亚洲成人久久美女| 99色热国产视频精品| 操逼逼一区视频| 亚洲一区二区在线观看91| 97超碰9| 78m成人视线| 超碰天天去日穴| 97久久久久久久久久| 人人爽夜夜玩视频| 少妇人妻激情四射| 亚洲色图 综合| 青青青艹在线视频| 欧美激情久| 亚洲电影91| 国产精品久久久久久夜夜夜夜| 欧美综合网1| 日本黄色天堂| 久久亚州大香蕉| 人妻喷水| 日韩精品午夜操呦呦不卡影院| 91精品导航| 97亚洲中文| 精品九九九九| 亚洲无码偷拍| 1769国内精品视频| 无码国产Av| 中国国国产一级特黄毛片| 亚洲一区二区精品福利| 熟女视频久久| 久久超碰久| 国产有码一区| 色天堂综合|