久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

RK3588邊緣AI視覺:基于DMA-BUF的零拷貝跨進程通信實戰(zhàn)

RK3588邊緣AI視覺:基于DMA-BUF的零拷貝跨進程通信實戰(zhàn) 在RK3588上做邊緣AI視覺真正讓人頭疼的往往不是模型跑多快而是數(shù)據從攝像頭到NPU、再到硬編碼和RTSP推流這一路上究竟被memcpy搬了多少次。很多教程只教你怎么在板子上把YOLOv8的demo跑起來可真正做產品時采集、推理、編碼往往是三個進程幀數(shù)據如果隔著socket和共享內存來回拷貝4K分辨率下光是搬數(shù)據就能吃掉好幾個毫秒CPU占用也壓不下去。這篇文章想和你聊聊在RK3588架構下怎么做零拷貝跨進程通信把視頻幀的整個生命周期都留在DMA-BUF里讓多個進程和NPU、VPU、RGA這些硬件模塊直接引用同一塊物理內存而不是你搬給我、我搬給他。這套方法也是邊緣AI視覺工程化繞不開的一環(huán)。不管你是準備把采集、AI推理、硬編碼拆成獨立進程還是想優(yōu)化現(xiàn)有項目的幀率瓶頸下面這套基于DMA-BUF加SCM_RIGHTS的方案都能直接參考。我盡量把原理、代碼、踩坑細節(jié)都寫透。1. 為什么需要零拷貝跨進程通信先算清楚拷貝這筆賬1.1 邊緣AI視覺典型的數(shù)據流和它真正的開銷在哪先還原一個典型場景。一塊RK3588板卡上做實時視頻監(jiān)控或邊緣計算盒子通常會有這么幾個角色采集進程負責從MIPI CSI或USB攝像頭拿圖像走Rockchip的rockit或V4L2框架AI進程負責跑NPU推理常見的是YOLOv8或者各種檢測分類模型編碼進程負責把處理后的畫面交給MPP硬編碼成H.264/H.265再走RTSP推給客戶端另外可能還有一個業(yè)務進程負責疊加OSD、保存錄像之類。如果按照最樸素的做法采集進程拿到一幀圖像后先把數(shù)據從內核buffer拷到用戶態(tài)內存然后通過socket發(fā)給AI進程AI進程再拷到自己內存跑完模型后再拷一次發(fā)給編碼進程編碼進程為了把數(shù)據交給硬件編碼器可能還要再拷一次。這條路走下來一幀4K NV12圖像數(shù)據量大約12MB拷三到四次什么概念RK3588的A76大核跑memcpy理想情況能到4到6GB/s左右但實際受DDR頻率、cache狀態(tài)、內存是否對齊影響往往打折扣。一幀4K大約12MB單次memcpy耗時大概2到4毫秒。算上socket收發(fā)過程中內核緩沖區(qū)的那幾次搬運一幀畫面光是數(shù)據搬運就吃掉6到15毫秒。如果跑30fps幀預算33毫秒拷貝占了三分之一甚至接近一半這還沒算模型推理和編碼的時間。多路視頻時這個開銷還會成倍往上翻。1.2 多進程還是多線程怎么選更合理有人會問既然進程間傳數(shù)據這么麻煩為什么不把所有邏輯塞進一個進程用多線程加指針直接共享內存天然零拷貝這個問題的標準答案是看你做的是demo還是產品。demo當然可以全塞一個進程但真實產品里采集、AI、編碼往往來自不同的SDKRockchip的RKMPP、rockit和RKNN runtime對資源的管理方式不同錯誤處理和崩潰影響范圍也不一樣。多線程單一進程的好處是共享數(shù)據簡單壞處是一個模塊崩了整條流水線跟著崩權限也難隔離。采集進程可能需要訪問攝像頭設備節(jié)點AI進程其實沒必要拿那么高的權限拆開之后可以單獨降權、單獨重啟這對邊緣盒子的穩(wěn)定性和可維護性是很重要的。所以很多RK3588上的商業(yè)方案都會選擇多進程架構把攝像頭上層、AI業(yè)務、編碼推流分開部署。既然選了多進程跨進程傳輸大塊圖像數(shù)據就是一個必須解決的問題而且必須高效。1.3 “共享內存”不等于“零拷貝”別被概念騙了不少人在這一步會陷入一個誤區(qū)用POSIX共享內存shm_open加mmap兩個進程不就能直接讀寫同一塊內存了嗎這算不算零拷貝算也不完全算。shm_open拿到的是一塊普通匿名內存CPU可以直接訪問沒錯但NPU、VPU、RGA這些硬件模塊訪問內存需要內核驅動拿到這塊內存的物理地址信息把它映射進IOMMU或做DMA映射。普通共享內存沒有這個機制硬件不認。所以即便你用shm共享了一塊內存最后為了讓硬編碼器能讀這幀數(shù)據還是得把數(shù)據從shm內存拷貝到MPP分配的硬件可訪問buffer里白白多一次搬運。真正的方案是讓整條數(shù)據鏈路都建立在DMA-BUF之上。DMA-BUF導出的fd同時具備兩個能力用戶態(tài)可以mmap訪問硬件驅動也能通過它拿到物理內存的訪問權。RGA、VPU、NPU、ISP這些驅動全都認這個fd。這才是“零拷貝”跨進程通信的地基。2. 兩塊基石DMA-BUF 和 SCM_RIGHTS2.1 DMA-BUF 到底是什么為什么硬件都認它DMA-BUF是Linux內核里一個標準的buffer共享機制??梢赃@樣理解一個DMA-BUF對象代表一塊“能被硬件訪問的物理內存”。它由某個exporter設備創(chuàng)建然后通過fd的形式把這塊內存的訪問權分享給其他設備或進程。每個拿到fd的進程都能通過mmap把同一塊物理內存映射到自己的虛擬地址空間每個硬件驅動也能從fd那里拿到內核態(tài)的sg_table完成DMA映射。打個比方DMA-BUF fd就像一張圖書館的借書卡。大家拿著同一張卡借同一本書而不是每次有人要看就去復印一份再遞過去。書只有一本放在圖書館固定的書架上誰借誰來看。在RK3588平臺上最常用的分配接口是DMA-BUF heaps。內核啟動后一般能看到這樣的節(jié)點ls /dev/dma_heap/常見的有system、system-uncached、linux,cma等。不同開發(fā)板、不同內核版本節(jié)點名會有差異有些老SDK還是用的/dev/ion。如果你想確認當前平臺支持哪些堆直接看這個目錄最靠譜。正點原子、香橙派這類開發(fā)板廠商的內核配置不太一樣節(jié)點名和權限都要以實際為準。2.2 RK3588上常見buffer來源攝像頭、MPP、自分配具體到一條邊緣AI視覺鏈路DMA-BUF fd通常有三個來源。第一個來源是攝像頭采集。Rockchip的rockit框架或者V4L2配合rkcif/rkisp驅動導出的采集buffer本身就是DMA-BUF fd。比如你通過V4L2申請一組用于采集的bufferVIDIOC_REQBUFS之后用VIDIOC_QUERYBUF拿到的fd就是可以傳給下游的DMA-BUF fd。第二個來源是MPP的編解碼buffer。用MPP做硬編碼或硬解時通過mpp_buffer_get拿到的buffer本質上也是基于DMA-BUF分配的可以通過mpp_buffer_get_fd把fd取出來傳給其他進程。第三個來源是自分配。你想要一塊不屬于任何采集或編碼器、純粹用于進程間共享的buffer時可以直接懟dma-heap#include fcntl.h #include sys/ioctl.h #include sys/mman.h #include unistd.h #include linux/dma-heap.h int heap_fd open(/dev/dma_heap/system-uncached, O_RDWR); if (heap_fd 0) { perror(open dma_heap); return -1; } struct dma_heap_allocation_data data {0}; data.len size; // 建議按4096向上對齊 data.fd_flags O_CLOEXEC | O_RDWR; if (ioctl(heap_fd, DMA_HEAP_IOCTL_ALLOC, data) 0) { perror(DMA_HEAP_IOCTL_ALLOC); close(heap_fd); return -1; } close(heap_fd); int buffer_fd data.fd; void *ptr mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, buffer_fd, 0);這里有個點要提醒如果這塊內存主要是給硬件設備讀、CPU不經常碰優(yōu)先選uncached的堆如果進程本身要用CPU頻繁讀寫又希望硬件訪問時一致那就需要處理cache同步后面會單獨講。2.3 SCM_RIGHTS把fd“快遞”給另一個進程有了DMA-BUF fd下一個問題很直接fd只是一個整數(shù)這個整數(shù)在進程A里指向某塊buffer進程B里隨便傳一個數(shù)字過去內核可不會認為它有效因為每個進程的文件描述符表是獨立的。所以需要一種內核幫你“打開文件引用”的機制這就是Unix domain socket上的SCM_RIGHTS輔助消息。本質上是讓內核從發(fā)送進程的fd表里取出對應的struct file復制一份引用安裝到接收進程的fd表里然后返回一個新的fd整數(shù)給接收進程。發(fā)送方和接收方各自持有的fd指向同一個內核對象DMA-BUF引用計數(shù)會相應增加生命周期由雙方共同維護。發(fā)送端的核心代碼#include sys/socket.h #include sys/types.h void send_fd(int sockfd, int fd_to_send) { struct msghdr msg {0}; char buf[1] {F}; struct iovec io { .iov_base buf, .iov_len sizeof(buf), }; char cmsg_buf[CMSG_SPACE(sizeof(int))]; msg.msg_iov io; msg.msg_iovlen 1; msg.msg_control cmsg_buf; msg.msg_controllen sizeof(cmsg_buf); struct cmsghdr *cmsg CMSG_FIRSTHDR(msg); cmsg-cmsg_level SOL_SOCKET; cmsg-cmsg_type SCM_RIGHTS; cmsg-cmsg_len CMSG_LEN(sizeof(int)); memcpy(CMSG_DATA(cmsg), fd_to_send, sizeof(int)); if (sendmsg(sockfd, msg, 0) 0) { perror(sendmsg); } }接收端的核心代碼int recv_fd(int sockfd) { struct msghdr msg {0}; char buf[1]; struct iovec io { .iov_base buf, .iov_len sizeof(buf), }; char cmsg_buf[CMSG_SPACE(sizeof(int))]; msg.msg_iov io; msg.msg_iovlen 1; msg.msg_control cmsg_buf; msg.msg_controllen sizeof(cmsg_buf); if (recvmsg(sockfd, msg, 0) 0) { perror(recvmsg); return -1; } struct cmsghdr *cmsg CMSG_FIRSTHDR(msg); if (!cmsg || cmsg-cmsg_type ! SCM_RIGHTS) { return -1; } int received_fd; memcpy(received_fd, CMSG_DATA(cmsg), sizeof(int)); return received_fd; }注意SCM_RIGHTS要求socket必須是Unix domain socket也就是AF_UNIX本地回環(huán)TCP可不行。還有一點輔助數(shù)據必須伴隨著至少一個字節(jié)的普通數(shù)據一起發(fā)送也就是說msg_iov里不能真的為空。3. 動手實現(xiàn)一套可復用的零拷貝幀傳輸模塊3.1 總體設計預分配緩沖區(qū)池控制通道到了實際操作層面我并不建議誰需要哪個buffer就現(xiàn)場分配一個那會帶來兩個問題一是運行期頻繁分配和釋放DMA-BUF容易產生碎片二是在多進程、多路視頻并發(fā)時內存使用不可控。更穩(wěn)妥的做法是預分配一個緩沖區(qū)池。啟動階段一次性分配N塊固定大小的DMA-BUF整條生命周期內都別釋放等系統(tǒng)退出時統(tǒng)一清理。進程間傳輸?shù)钠鋵嵅皇恰皵?shù)據”而是一個“token”這個token里有buffer索引、frame_id、寬高、時間戳這些元信息再加上對應的DMA-BUF fd。緩沖區(qū)池的狀態(tài)管理可以設計成這樣的結構#define MAX_FRAME_BUFFERS 8 struct frame_buffer_desc { int fd; // 生產者持有的fd size_t size; // 緩沖區(qū)大小 uint64_t frame_id; // 幀序號 uint32_t width; uint32_t height; uint32_t stride; uint32_t format; int state; // 0空閑 1已填充待消費 2消費中 3可回收 uint64_t timestamp; };這個狀態(tài)數(shù)組可以放在一塊單獨的共享內存頁里進程之間通過原子變量或者簡單的一個自旋鎖來修改。實際項目中我用過兩種狀態(tài)同步方式。一種是“生產者不等消費者”的丟幀策略。生產者每幀都去找空閑buffer找不到就直接丟幀用最新幀覆蓋策略或跳過這一幀。這種方式采集進程永遠不會被阻塞適合對實時性要求高的場景代價是極端情況下會丟幀。另一種是“消費完成通知”的回收策略。消費者處理完一幀后通過socket或者共享狀態(tài)把buffer標記為空閑。生產者只有拿到空閑標記才能復用這塊內存。這樣能保證每幀都被完整處理代價是如果消費者處理太慢生產者會被拖住。我的建議是如果是視頻監(jiān)控這類流水線任務選丟幀策略更合理。寧可偶發(fā)丟幀也別讓采集線程卡死。3.2 生產者端分配、填充、發(fā)布生產者進程的任務是把采集到的一幀數(shù)據灌進DMA-BUF然后把fd和幀描述信息發(fā)出去。整套流程大概是啟動階段通過dma-heap分配一大塊buffer池按幀大小切分成N塊每塊對應一個fd然后mmap到自己的用戶態(tài)虛擬地址空間。每來一幀攝像頭數(shù)據從buffer池里挑一個空閑buffer。把圖像數(shù)據填進去。這里有個關鍵選擇如果采集buffer本身就是DMA-BUF fd最好的辦法是直接把采集buffer的fd發(fā)給下游連獨立buffer池都不需要。但實際工程中采集和AI往往需要解耦AI進程可能還要做格式轉換、多路幀緩存所以獨立pool更常見。填充動作可以用CPU memcpy也可以用RGA做硬件搬運。后者不占CPU是更“零拷貝”的做法。更新幀描述信息包括frame_id、寬高、時間戳。通過Unix domain socket把frame_id作為普通數(shù)據、fd作為輔助數(shù)據一起發(fā)送。發(fā)送消息時可以打包一個小的協(xié)議頭struct frame_msg { uint32_t buffer_index; uint32_t format; uint32_t width; uint32_t height; uint32_t stride; uint64_t frame_id; uint64_t timestamp; };然后發(fā)送時普通數(shù)據就是frame_msg輔助數(shù)據要附帶的fd就是當前buffer的fd。接收方拿到的fd和發(fā)送方的fd指向同一個DMA-BUF對象。3.3 消費者端接收、映射、使用、歸還消費者進程這邊的流程是在socket上recvmsg同時拿到frame_msg和繼承來的fd。檢查這個fd是否已經mmap過。如果進程里維護一個“fd到虛擬地址”的映射表發(fā)現(xiàn)同一個DMA-BUF已經映射過就直接復用地址不用反復mmap/munmap。這一步能省不少系統(tǒng)調用。拿到指針之后交給后續(xù)模塊。如果是AI進程就喂給RKNN如果是編碼進程就導入給MPP。處理完畢把buffer狀態(tài)標記為可回收或者通過socket回一個ack給生產者。消費者mmap的邏輯很簡單int received_fd recv_fd(sockfd); // 假設已經有buffer元信息 void *mapped mmap(NULL, frame_size, PROT_READ | PROT_WRITE, MAP_SHARED, received_fd, 0); if (mapped MAP_FAILED) { perror(mmap dma-buf in consumer); } // 使用 mapped 指向的圖像數(shù)據這里有個經驗如果buffer池是預分配的消費者最好也按“buffer索引”來緩存mmap結果。第一次收到某個索引的fd時map一次之后同一索引復用。這樣既省了mmap/munmap的開銷也避免了fd反復打開關閉帶來的引用計數(shù)管理混亂。3.4 與RKNN、RGA、MPP對接的關鍵接口零拷貝的價值只有在和硬件模塊對接時才真正體現(xiàn)出來。否則你就算用DMA-BUF傳了半天fd最后在AI進程里還是把數(shù)據memcpy到普通內存再喂給RKNN那就沒意義了。對接RKNN時核心思路是讓NPU直接訪問這塊DMA-BUF而不是經過用戶態(tài)指針中轉。RKNN SDK通常提供從外部fd創(chuàng)建內存的方法類似#include rknn_api.h rknn_tensor_mem *external_mem NULL; // fd 就是我們從socket里收到的DMA-BUF fd // virt_addr 是mmap后的虛擬地址size 是buffer大小 rknn_create_mem_from_fd(ctx, fd, virt_addr, size, external_mem);然后推理時把external_mem塞進輸入tensor的內存指針。這樣NPU做DMA讀取時直接訪問的是物理內存不需要CPU先把數(shù)據從某個用戶態(tài)地址拷貝到NPU可達的buffer。具體函數(shù)簽名會隨SDK版本略有差異但大方向就是這樣。對接RGA時RK的RGA庫librga或im2d支持直接導入fd做格式轉換和縮放。比如AI進程要把NV12轉成RGB同時縮放到模型輸入尺寸可以走RGA硬件#include im2d.h #include rga.h rga_buffer_t src wrapbuffer_fd_t(fd, width, height, RK_FORMAT_NV12); rga_buffer_t dst wrapbuffer_fd_t(dst_fd, dst_w, dst_h, RK_FORMAT_RGB888); imresize(src, dst);wrapbuffer_fd_t這種接口就是讓RGA驅動通過fd訪問源和目標內存整個過程CPU不參與像素搬運。對接MPP硬編碼時MPP也支持從外部fd導入buffer#include mpp_buffer.h MppBuffer enc_buf NULL; // fd 是共享的DMA-BUF fd mpp_buffer_import(NULL, enc_buf, fd);導入之后就能把這份buffer當普通MppBuffer喂給編碼通道。編碼出的H.264/H.265碼流拿去做RTSP推流這就是我們常說的“基于RK3588硬編碼的實時視頻監(jiān)控系統(tǒng)”。所以完整鏈路可以是這樣的采集進程輸出DMA-BUF fdNV12→ 零拷貝IPC傳給AI進程 → 通過rknn_create_mem_from_fd交給NPU跑YOLOv8 → 推理結果通過RGA畫框/轉格式 → 再把fd傳給編碼進程 →mpp_buffer_import導入MPP硬編碼 → 碼流走RTSP推出去。整個過程里CPU沒有參與任何一幀像素數(shù)據的搬移。4. 真實項目中的坑RK3588上最常踩的五個問題4.1 花屏、亂幀的深層原因cache一致性和對齊很多人第一次把跨進程零拷貝鏈路跑通后會看到畫面時而正常、時而花屏或者模型推理結果偶爾不對又查不出代碼邏輯漏洞。這種情況十有八九是cache一致性問題。如果生產者用CPU往一塊cached的DMA-BUF里寫數(shù)據寫完直接發(fā)給NPU或VPU硬件DMA讀取時可能拿到的是還沒寫回內存的臟cache數(shù)據。解決辦法有這么幾條一是分配buffer時直接用uncached堆例如/dev/dma_heap/system-uncached。代價是CPU訪問這塊內存的性能會明顯下降所以只適合“CPU不怎么碰數(shù)據”的鏈路。二是保留cached堆但在關鍵位置主動做sync。用戶態(tài)可以通過DMA_BUF_IOCTL_SYNC告訴內核在硬件訪問前把cache刷回內存struct dma_buf_sync sync {0}; sync.flags DMA_BUF_SYNC_START | DMA_BUF_SYNC_RW; ioctl(buffer_fd, DMA_BUF_IOCTL_SYNC, sync); // CPU 讀寫這塊 buffer sync.flags DMA_BUF_SYNC_END | DMA_BUF_SYNC_RW; ioctl(buffer_fd, DMA_BUF_IOCTL_SYNC, sync);三是讓整條鏈路盡量使用采集或MPP導出的buffer因為這些buffer在驅動層已經把同步處理好了用戶態(tài)不太需要操心。只有自己分配、自己用CPU填充時才需要注意這個坑。還有一類花屏和cache無關純粹是對齊問題。RGA、VPU、NPU對buffer的起始地址和大小都有對齊要求一般建議按2MB或1MB對齊至少也要按64字節(jié)對齊。分配時可以讓size ALIGN(frame_size, 4096)再用一個ALIGN_UP宏把所有寬高參數(shù)按硬件要求的stride對齊。4.2 幀串號和丟幀緩沖區(qū)復用管理另一個高頻問題是幀號錯亂?,F(xiàn)象是消費者收到的frame_id順序不對或者畫面內容是上一幀的時間戳卻是這一幀的。這多半是因為生產者把同一塊buffer發(fā)出去兩次或者消費者還在讀某塊buffer生產者就把它重新填充并再次發(fā)布了。解決思路很直接buffer狀態(tài)機必須嚴格??臻ebuffer只能被生產者拿到消費者處理完必須顯式標記為可回收中間不能跳狀態(tài)。我踩過的一個坑是為了省事生產者發(fā)完fd就立刻把buffer狀態(tài)改成空閑結果消費者還沒讀完下一幀數(shù)據已經覆寫進來了。后來改成消費者處理完通過共享內存標記回收生產者只從“已回收”狀態(tài)的buffer里挑問題就消失了。4.3 fd生命周期和內存泄漏fd生命周期問題是零拷貝鏈路里隱藏最深的一類bug。SCM_RIGHTS傳遞fd后發(fā)送端和接收端各自都有一個fd指向同一個DMA-BUF。如果發(fā)送端在sendmsg之后直接close沒有別的影響因為接收端持有的fd已經增加了引用計數(shù)。但如果你兩邊都close了而mmap還在DMA-BUF仍然不會釋放因為mmap本身也持有引用。反過來說如果接收端用完fd直接close又忘了munmap就會內存泄漏。長時間運行的邊緣設備這種泄漏積累到最后會致命。我的建議是每個進程維護一張“buffer索引到虛擬地址”的映射表mmap一次后不隨便munmapfd在mmap成功后也可以立即close掉因為mmap已經持有引用。等整個會話結束統(tǒng)一munmap所有映射再統(tǒng)一close所有殘留fd。這樣管理起來清爽得多。4.4 內核沒有DMA-BUF節(jié)點或者權限被限制新版RK3588 SDK基本都支持/dev/dma_heap但有些老SDK或者定制內核只有/dev/ion或者兩個節(jié)點都沒有。拿到新板子第一件事就是檢查這些節(jié)點ls -l /dev/dma_heap/ 2/dev/null || ls -l /dev/ion 2/dev/null如果節(jié)點不存在大概率是內核配置里沒開CONFIG_DMABUF_HEAPS或者DTS里沒有使能對應的heap。這時候要么改內核配置重新編譯要么就只能退回MPP的mpp_buffer_get這類封裝接口。如果改完內核發(fā)現(xiàn)系統(tǒng)起不來也別糾結RK3588開發(fā)板刷機很快recovery或maskrom模式下用USB Type-C連電腦就能裝回來。還有權限問題。容器化部署邊緣盒子時/dev/dma_heap下的節(jié)點不會自動映射進容器必須在docker run時手動加--device /dev/dma_heap:/dev/dma_heap否則容器里open必然失敗。4.5 常見錯誤速查表現(xiàn)象可能原因排查方向另一進程mmap返回EPERM或ENOMEMfd不是真實DMA-BUF fd或權限不夠檢查SCM_RIGHTS是否真正傳成功確認socket是AF_UNIX檢查容器device映射RGA調用返回錯誤碼buffer地址或stride未對齊格式不支持分配時按64字節(jié)或更大對齊確認RGA版本支持目標格式VPU編碼畫面花屏cache未同步或stride設置和buffer實際寬度不一致加DMA_BUF_IOCTL_SYNC核對stride和width關系RKNN輸入無效或推理異常外部fd創(chuàng)建內存失敗或buffer是cached且未同步用rknn_create_mem_from_fd前確認fd可用uncached優(yōu)先幀號亂序、畫面內容錯幀buffer被過早復用狀態(tài)機不嚴嚴格“空閑→填充→發(fā)布→消費→回收”流程內存持續(xù)上漲mmap或fd未釋放用cat /proc/pid/smaps檢查映射區(qū)間清點每個buffer的映射生命周期8K或4K多路時分配失敗內存池過大或heap碎片化減小緩沖池深度或改用CMA堆5. 效果評估和性能對比這套方案到底值不值得上最后說點實際的。零拷貝跨進程通信聽起來很酷但它不是銀彈它解決的是“大塊圖像數(shù)據在進程間頻繁傳輸”這個特定問題。如果你的應用只是偶爾傳一些小的結構化數(shù)據用它反而復雜了。我整理了兩種方案的粗略對比數(shù)據來自我們RK3588板卡上的實測不同板卡、不同內存頻率會有差異思路比數(shù)值更重要。項目傳統(tǒng)socket傳整幀DMA-BUF零拷貝傳fd一幀1080p NV12傳輸額外耗時2至4ms左右含內核拷貝和用戶態(tài)拷貝小于0.1ms只傳元信息和fdCPU占用每次拷貝都會占用A76核心幾乎為零硬件DMA直讀是否適合多路視頻4路以上CPU占用吃緊多路時依然能保持低CPU負載實現(xiàn)復雜度簡單但低效需要設計buffer池和狀態(tài)機和RKNN/MPP/RGA對接需要額外拷貝到硬件可訪問buffer直接導fd無縫對接如果你跑的是單路1080p30fps的簡單demo傳統(tǒng)socket方式也許夠用CPU多花幾個點沒什么感覺。但一旦跨到4路1080p或者4K60fps拷貝開銷會成倍放大這時零拷貝就不是優(yōu)化項而是剛需。就算自身業(yè)務暫時用不到多進程我個人也建議在RK3588上做視覺方案時一開始就把幀傳輸通路設計成基于DMA-BUF的形式。后面無論是想把AI推理獨立成進程、還是加一路硬編碼推流改動都會小很多不至于推倒重來。這也是我在RK3588架構上做邊緣AI視覺項目后期體會最深的一點數(shù)據通路的設計比一開始用的模型大小、算力預算更值得花時間提前規(guī)劃。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产精品网址| 青娱乐91| 9久综合网| 四虎国产精品永久在线囯在线 | 国产9熟妇视频网站| 婷婷五月天伊人| 日韩精品中文字幕人妻| 99精品九九九九九九| 亚洲综合春色| 欧美 亚洲 偷拍自拍| 亚洲成人激情小说视频| 91亚洲最新在线| 欧美激情片一区二区| 久草视频分类在线| 国模吧 一区二区三区| 中文字幕丰满子伦无码专区在线视频最新 | 久久艹逼视频| 大香蕉专区| 97超碰人妻| 蜜臀无码一区二区| 欧美大干日韩| 欧美97日韩| 探花激情视频| 日韩一级特黄av毛片| av中亚| 欧美第二页午夜| 日本免费不卡二区| 成人黑料社久久| 中国少妇XXXX做受| 自拍偷拍第26| 91久久青青草原精品| 色香网| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 欧美精品三区| 蜜桃色色网站视频三区| 天美麻花大全视频| 亚欧国产无码精品在线| 欧美亚洲第一页| 富女玩鸭子一级毛片| 久久婷婷成人综合色怡春院| 97中文综合| 99热亚洲天堂| 久久欧美按摩999| AA丁香综合激情| 欧美成人性爱视频大全| 国产这里只有精品| 97精品国产97久久久久久免费| 精品少妇一区二区三区在线视频| 免费人成?大片在线播放| 亚洲成人在线高清| 欧美日韩电影成人在线| 欧美午夜视频免费观看| 久操凹凸视频| 欧美18 在线观看| 国产一区二区三区视频在线看| 亚洲色图 欧美热图 清纯唯美 另类自拍| 1024人妻| 日本一区二区不卡精品| 国产传媒午夜理伦精品| 亚欧性爱无码| 久操操| 97在线精品| 欧美精品99久久久**| www.亚洲成人一区| 久久性爱大全| 欧美永久激情一区二区| 九九热超碰97亚洲最新香蕉| 色偷综合| 鸥美中出| 亚洲砖码砖专无区2023| 久久久久久久久久久999| 黄色高清久久无码依人| 91宗合网| 中文字幕一区二区三区字幕| 久热这里| 神马九九九| 玖玖爱一区在线| 亚洲综合伊人| 亚欧免费| 亚洲AV小说| 欧美日韩国产电影| 人妻激情视频| 无码精品久久| 丁香五月天堂网| 不卡九肏| 极品少妇久久久久| 国产精品人妻熟女aⅴ| 欧美特大黄一级片片免费| 99精品久久久久久久婷婷蜜桃| 亚欧操逼片在线观看| 亚洲 欧美 手机在线观看| 日本一级性爱| 性爱视频久久| 亚洲AV在线资源| 亚洲在线a| 视频一区二区三区精品| 青青操少妇| 农村女一级毛卡片| 蜜乳AV免费观看| 日本精品网站在线中文| 日韩一级片| 欧美专区第一页| 欧美日韩资源在线| 少妇淫妇久久久久久久| 99re热有精品视频国产| 国产亚洲综合欧美一区| 四虎影库国产精品免费| 日韩综合色网| 国产精品亚洲天堂网址| 暖暖精品二区三区观看| 91五十路| 免费一级欧美片片线观看| 嗯嗯嗯啊啊啊操的我好爽 | 欧美亚洲激情一二三| 久久伊人影院| 国产成人免费观看在线视频| 国产视频一区二区三区久久亚洲天堂| 好属操| 欧美人妻一区| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 久久人妻精品| 成人区人妻精品一| 啊啊啊啊嗯嗯嗯用力好爽| 91影视亚洲| 久久精品人人做人人看| 艳美熟妇先锋一二三区| 亚洲欧美黄| 久久久爆乳翘臀一线天伦理视频| 午夜爽爽爽| 狠狠狠狠狠狠| www久久国产精品| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 伊人五月天| 任你干在线视频| 麻花豆传媒剧国产MV出差| 91女在线观看| 久久成年片色大黄全免费网站| 大香蕉婷婷| 亚洲 欧美 日本 国内 首页| 亚洲激情在线| 不卡在线观看视频| 金典av| 天堂俺去俺来也www久久婷婷| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 色色色色网站| 蜜臀va69| 91青视频| 日韩无码黄色片| 超碰免费欧美7| 国产黄片在线免费观看| 欧美激情精品| 3p国产色噜噜一区| 色婷婷日韩精品一区二区三区| 亚洲1区2区三区高清中文字幕| 天天摸,夜夜摸| 超碰97精品| 久精品无码av一区二免费国产在线观看| 天天摸天天舔天天操| 国产一区二区精品久久99| 加勒比东京热五月天天堂网| 亚洲激情网一二三四区| 自拍内地三级在线观看| 99精品无码| 中国AV美女| 无码操逼天堂| 艳美熟妇先锋一二三区| 欧美呦呦性爱| 懂色av中文字幕| 国产伦精品一区二区三区在线观 | 国产在线精品电影观看| 再深点灬舒服灬太大了添视频| 青青草成人视频在线观看二区| 欧美三级中文字幕hd| 热热色91| 九热超碰| 国产精品视频麻豆入口| 91亚洲欧美综合高清在线 | 第四色色综合91| 日本韩欧美在线播放a| 久久东京热久久| 精品一区二区久久| 小骚逼被操的爽不爽| 大香蕉久操| 国产精品久久久久久亚洲色欲| 99爱爱| 国语人妻精彩刺激| 成人av动漫在线观看| 五月天日日操夜夜操| 中国东北熟女老太婆内谢| 97欧美色综合| 无码人妻丰满熟妇奶水区毛片| 国产一区二区在线电影| 思思热免费在线视频| 亚洲熟女综合一区二区| 97中文字幕一区| 一本一首道人妻少妇免费久久| 中文字幕日韩人妻视频一区二区三区 | 久久无码电影| 三级激情网站| 日本不卡高清视频| A V视频日本| 亚洲福利影院一区久久| 9久精品| 久操国产在线| 欧美精品一二三| 亚洲第二页| 天天综合网合集91| 欧美日韩亚洲国产中文永久天天看| 啊啊啊啊视频免费| 精品国产少妇高潮视频| 五月激情小说| 久久的网站啊啊啊啊啊| 男人久久精品| 加勒比海成人视频网| 99啪| 超碰碰97| 999 久久久| 熟女天天干| 97操97色| 中文字幕国产精品1区| 精品一区二区三区蜜桃臀赵总 | 玖玖综合视频| 亚洲色图20p| 热的中文 热的有码 热的国产| 密臀在线免费观看| 亚洲国产精品久久久男人的天堂| 老鸭窝黄色视频网站| 欧美熟爽综合| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 猛猛干| 色综合一区二区三区| 亚洲国产成人综合碰碰三级经典| 玖玖爱影院| 999综合网| 国产精品懂色tv影视免费观看| 国产精品96久久久久久| 亚洲欧美国产va在线播放频| 激情小说日韩无码| 999亚洲国产视频| 久久久久久久久成人av解说| 久久久久免费少妇| 91丝袜美女| 久久鲁夜| 九九九九热只有精品| 日韩精品午夜操呦呦不卡影院| 大香蕉日韩| 国产深喉视频一区二区| 丰满人妻一区二区三区四区| 国产精品老师| 不卡人妻少妇精品毛片一区23区视频| 日产成人久久| 国产a片操逼| 可以看的av| 精品国产网站| 97在线公开视频| 日韩一级二级三级在线不卡观看完整| 中文字幕一区二区免费在线| 精品-91人妻子系列| 国产原创自拍| 亚洲熟妇熟在线电影视频| 被窝影院午夜看片无码| 香蕉精品二区二区 | 亚洲啪啪综合?v一区综合精品区| 国产一区在线观看无码AV| 青娱乐国产精品| 精品妇女一区二区三区| 中文熟女五十乱码在线| 桃花色综合影院| 亚洲偷拍自拍在线视频| 青青草精玖玖69精品| 嗯~啊~快点 死我视频免费看网站| 超碰导航97| 欧美成年人性爱视频免费观看| 中文字幕亚洲永久精品| 日韩情色AV| 日本二三四区| 久久久久日本视| 精国久久一区二区三区98| 操逼视频国产无套| 精品久久視頻在线| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 啊啊啊啊啊啊啊啊视频| 国产超碰| 自拍亚洲综合| 国产成人无码a| 婷婷色色五月天| 国产高清1234区| 99操逼| 国产三区免费在线观看| 中文字暮97| 理论久久婷婷网8| 亚洲精品天堂久久A∨51成人漫| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 亚洲精品97中文字幕| 中文字幕国产在线天堂| 五月天激情网站| 日日骚av| 亚洲国产欧美中日韩成人综合视频| 久久AV无码1区2区3区| 青青草公开在线免费不卡视频| 国产精品久久久无码AV网站| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 99婷婷一区二区| 亚洲高清无码在线桃色| 久久大黄片| 蜜臀一二三区| 欧美A√综合网| 另类综合另类| 欧美色91| 香蕉欧美| 屌妞视频久久久久久久| 国产视频一区二区三区在线免费观看| 欧亚第一综合网| 少妇综合| 欧美性,亚州色| 家庭乱伦国产精品| 亚洲97P| 综合久久久久久久久91| 六月丁香婷| 欧美日韩人妻精品一区二区三区| 操逼啊啊啊91| 人妻精品一区二区三区| 精产国品一区二三产品| 国产亚洲性生活视频播放| 久久有码| 综合欧美日韩在线观看| 日本二三四区| 小泽玛利亚一二三| 亚洲一区二区三区中文字幕| 婷婷五月天色网| 婷婷亚洲天堂| 人人人摸人人| 久久9精品网站| 狠狠爱综合| 中文字幕乱亚洲美女精品一区| 麻豆亚洲Av成人无码一区精品| 日日AV加勒比| 91干熟女| av中亚| 天综合网欧美| 2020视频1区2区3区| 黑人综合网| 成人在线永久| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴| 久久久久久久免费A片国产成a人亚洲精∨品无码| 青青草视频在线观看一区二区| AV天堂国产| 熟妇激情| 九九成人精品| 日韩啪啪啪啪啪| 偷拍三区| 超碰97中文| 国产少妇高潮| 96精品在线| 狠狠操夜夜| 亚洲文学偷乱拍啪啪啪啪 | 色爱综合网| 素人一区二区三区日韩| 91中文字幕| 日日天天久久啊啊aaa| 国产精品久久久三级无码| 青青青国产手线观看视频2| 长久操视频| 丁香九月激情啪| 久久亚洲国产成人| 国产精品美女| 亚洲高清色综合| 无码久| 欧美AB在线观看| 5278欧美一区二区三区| 视频国产精品未满十八禁止在线观看| 中文字幕一区二区视频在线观看| 欧亚 另类 久| 日日干夜夜欢| 后入式视频国产自| 少妇99| 五月丁香六月激情综合| 久久高清欧美国产| 日本东京热久久久电影| 亚洲97综| 亚洲图片欧美| 欧美97爱| 婷婷超| 另类图片综合| 亚洲影院无码在线| 国产精品96| 酒色综合网| 熟妇女伦乱视频| 插插综合网天天影视网| 熟女久久| 91天天综合日韩欧美| 欧美激情在线观看视频| 一本一首道人妻少妇免费久久| 亚洲丝袜在线观看| 亚洲欧美综合网站| 99re6在线视频精品免费完整版安卓版| 人妻日日夜夜精品| 欧美老熟另类| 97操操| 欧美激情综合| 9/A片| 九九英色视频| 国产白丝在线| 偷拍综合亚洲| 国产9熟妇视频网站| 91欧美经典| 亚洲色人阁| 亚洲欧美首页| 综合久久久久久久久91| 天天操天天干一区二区| 亚洲性爱无码乱伦av| 无码乱人伦中文视频| 久久久亚洲高清不打码| 欧美在线播放aaaa| 亚洲天堂综合AV| 久久久影院| 日韩在线视频1234| 伊人网在线观看| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 亚州欧美色图| 美女啊啊啊啊啊啊| J?P?NESEHD熟女熟妇伦| 日韩中文字幕精品一区在线| 青娱乐国产精品| 亚洲中文一区二区三区视频| 五月丁香社区婷婷日韩欧美精品影院 | 97精品久久久久中文字幕| 后入式视频国产自| 亚洲色图A| 狠狠色伊人亚洲综合网站色| 日本肉体xxxx裸交| 大稥蕉免费视频这里只有精品| 欧美制服网站美腿丝袜| 天天情欲宗合网| 91情色在线| 欧洲欧美视频一区二区| 自拍内地三级在线观看| 激情五月丁香五月| 久久97| 日韩午夜国产| 国产精品久久久久久久久久久久久久| 熟妇xxxxx性春色| 久精品无码av一区二免费国产在线观看 | 人妻密肉在线观看| 精品一区二区麻豆| 91日韩国产欧美亚洲另类精盘州至城都| 国产美女高潮| 艳美熟妇先锋一二三区| 夜夜夜久久| 日韩欧美资源| 一区二区三区免费岛国片| 欧美色91| 99久久婷婷丁香| 老女人爆菊| 亚洲精品97中文字幕| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 一区二区影视| 国产色呦呦| 91麻豆天美传媒HD| 99re这里只有精品9| 无码人妻系列少妇| 老熟妇一区二区三区啪啪| 亚洲骚女一区二区三区| 97一区二区三区视频| 777超碰| 久久久久国产一区二| 夜夜操av亚洲一区二区| 国产精品国产精品国产| 国产AV超爽| 97一本大道亚洲一区| 九九九九精品九九九九| 天天干天天插| 久久九九97| 亚洲无码视频免费在线观看网址!| 99热在线播放| 久9精品| 大香蕉啪啪啪| 搡老女人老91二区| 丁香六月婷婷久久综合| 亚洲天堂资源在线| 91久久久久久久久18| 久久人妻一区二区三区高清| 白丝被操91| 怡红院怡春院| 性天堂| 亚洲人成色9999精品久久| 99在线精品观看视频中文| 日本欧美亚洲高清在线看| 操B久久| 美女尤物人人操| 九区国产| 国产热RE99久久6国产精品首| 美女骚尻视频| 五月婷婷综合激情| 日本精品999| 欧美日韩黄色片一区二区三区四区人与兽做爱| 欧美日韩插逼视频| 久久綜合很很很| 丰满岳乱妇一区二区三区| 国产一区二区久久| 人妻av在线| 亚洲综合20p| 欧美九九99久久精品| 2024年最新色情网站在线观看| 91网18| 在线无码操| 国产精品另类一区大香蕉| 99热9| 91色人妻| 亚州欧美综合| 97视频网站在线观看| 香蕉99秘 一区精品蜜桃臀| 99ri视频| 国产对白刺激视频| 国产高清精品福利| 女同在线视频一区| 一区二区三区四区免费视频| 亚洲综合色网| 深喉吞精| 欧美熟妇精品黑人巨大一二三区| 国产乱色国产精品免费视| 色综合99999| 亚洲国产一级精品毛一级精品看免费视频 | 久操凹凸视频| 97天天插| 熟女自慰久久久| 无码人妻精品一区二区中文| 99热在线播放| 97中文综合| 亚洲色图加勒比| 色婷婷综合网站| 麻豆av一区二区| 日韩草久视频| 99日精品欧美国产| 五十路六十路素人熟女| 在线二区不卡| 免费超碰97久久| 天天影视综合网欧美精品| 九九九九九九视频免费| 亚洲色图欧美色图在线播放| 亚洲熟妇自偷自拍另欧美| 国产亚洲日韩在线三区黑人| 97资源站国产精品| 久久国语| 夜色五月天| 成人七区| 青青草在线视频播放器| 国产乱子伦一区二区三区免看| 最近的最新的中文字幕视频| 欧美十八禁导航成人| 97久久超碰| 人妻熟女一区二区三区视频| 亚洲国产精品久久久久婷婷老年| 好吊色一区| 亚洲国产一区二区三区在线| 98色网| 超碰av在线| 九九无码视频| 日韩精品视频在线观看一卡二卡| 国产 日韩 欧美高清| 中文字幕乱妇免费视频| 大香交| 精品999一区二区| 亚洲欧美色图小说| 综合久久9| 丁香7月婷婷| 青青伊人久久| 天美传媒av在线| 天天日天天屌天天操| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 97精品国产精品免费观看| 一本久道久久综合狠狠爱| 草草影院日本第一页| 亚洲国产精品99久久久| 国产传媒午夜理伦精品| 涩涩涩综合| 人人 操人人 操人人| 亚洲小电影免费涩涩成人在线高清 | 制服少妇欧美| 中文字幕人乱码中文字的预防方法| 亚洲色欲一区二区三区| 91欧美成人色站| www.av在线视频| 性爱视频无打码在线观看| 午夜九九九九九九| 日本韩高清无砖码22o| 日韩成人小视频| 97久久超碰日韩精品| 中日韓欧美高清| 2017av无码免费无线播| 国产操逼视频在线观看| 日本五十路熟女一区二区| 亚洲精品久久久久久久蜜桃臀| 丁香五月性| 色色色色色色色色色色色色色色综合| 欧美日韩性爱视屏免费看了| 天天综合网国产| 日本一天色道久久久精品视频| 97精品在线| 亚洲欧美激情小说| 在线日韩日本亚洲国产| 老熟女乱子伦中文字幕一区二区| 成年人性爱日韩| 加勒比大香蕉视频在线| 午夜精品久久久久| 久久啊啊啊视频| 亚洲一区二区中文字幕| 999久久久免费精品国产牛牛| 国产高清成人免费视频| 国产精品原创巨作?v网站| 国产99久久99热这里只有精品15| 五月色综合| 久插综合| 日韩一级二级三级在线不卡观看完整| 99老司机精品视频在线观看| 亚洲黄色a级片| 婷婷久草一区二区三区| se,,,亚洲欧美| 色悠久| 91操人| 狠狠色丁香| 粉嫩小泬久久久一区二区| 欧美宗合色| 亚洲1区2区三区高清中文字幕| 夜夜爽33333| 精吧天堂| 综合国产影视三级| 久久怡红院| 操淫穴亚洲五月丁香 | 中文字幕人妻色偷偷久久皮 | 欧美综合网1| 国产女人视频三四五区| 免費黃色視頻觀看一| 超碰精品| 男人天堂网址| 精品色色| 夜夜嗨一区二区三区直播内容| 日本精品无码三级网站| 日本天堂网| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 91xingse| 97在线视频免费看| 欧美性巨大╳╳╳╳╳高跟鞋| 欧美不卡在线美女| 日韩欧美女求操每天更新| 美女写真| 熟妇视频一区二区三区在线观看| 九九九久久久W精品| 91丨熟女丨丰满熟女| 传媒免费一区二区三区| 欧美十八禁视频| 国产精品视频精品一二| 国产AV人人夜夜澡人人爽麻豆| 欧美日韩插逼视频| 亚洲AO在线| 国产在线观看一区二区三区| 97香焦色区| 91东北熟女| 综合影院亚洲| 欧成人精品H无码| 翘臀vidoes| 精品无码人妻一区二区免费蜜桃| 先锋激情∨在线视频播放| 亚洲妇色| 欧美一区二区福利在线| 极品久久久久久久久久久久久久| 不卡中文字幕aⅴ在线| 蜜桃视频一区二区三区在线观看| 国产精品女aA片爽爽视频| 亚洲男人的天堂一区二区| 肏逼视频日本| 强奸少妇AV导航网| 天天躁日日躁狠狠狠躁| 920日本午夜免费| 国产精品久久蜜乳av| 天美av在线观看| 99久久久无码国产精品性啊聊 | 久久精品熟女亚洲AV麻豆软件| 97中文超碰| 操b在线观看| 久久精品免费| 国产精品久久久无码aV去| 人人超碰在线观看黄| www.91逼逼.com| 99re在线视频这里只有精品| 久热这里| 一级AV性爱| 9热9热综合网| 亚洲色图亚洲无码强奸乱伦 | 97自拍视频在线| 欧美色图亚洲激情| 国产精品久久久久久久久久久久久久久久久久 | 成年女人18级毛片毛片免费观看| 日日摸日日碰夜夜爽视频| 97国产色综合| 奇米四色影视777久久久| 任我爽在线视频免费观看| 欧美一级色| 2018天天日天天日| 夜夜爽夜夜摸夜夜操免费视频| 另类天堂| 日韩欧美tv一区二区在线观看| 国产一区二区在线看| 97色干| 老外又粗又长一晚做五次| 久久久96精品| 欧美亚洲丝袜美女电影| 国产亚洲日本精品在线| 成人毛片免费| 色综九九九一区| 欧美爆操91| 欧美在线干| 国产最新小视频在线播放下载 | 99最新日韩偷拍视频| 91亚洲青青草原精品1区| 国产精品一二三在线看| 狠狠干91| 日韩在线观看AV| 日韩午夜国产| 97超级久久强资源| 日本午夜久久电影| 亚洲精品一区二区日本| 99少妇| 嗯嗯啊啊日韩精品| 欧美亚洲影视| 玖玖视频在线资源一区二区三区| 强奸乱伦αv片| 日韩性爱视频在线免费观看| 色妇综合网| 97在线青| 日韩国产十八禁| 欧美成人一级免费电影| 久久久久久国产成人| …亚洲黄色厕厕女女在线播…| 职场同事知名国产国产精品久久欧美日韩| 99.色网| 肉嘟嘟www视频在线观看高清| 国产a片操逼| 天天激清| 五月亭亭六月丁香| 精品国产三级av韩国在线| 澳门人妻久久| 久色网| 日本性爱网址| 中文字幕精品一区二区精| 国产无码精品成人| 日本媚薬中文字幕在线| 人妻丰满熟妇av无码区蜜桃| 天天日熟妇| 亚洲综合伊人| 亚洲好看强奸乱伦| 欧美亚洲首页| 9美女超碰在线免费观看| 丝袜色综合| 国产女主播视频在线观看| 国产视频第2页| 国产诱惑| 香港久久久| 在线天堂资源亚洲| 97欧美资源| 亚州黄站| 久久精品人体AV| 99色日| 欧美资源| 偷拍亚洲视频一区二区三区四区| 91精品国产91久久福利| 在线小说视频一区| 97伪v| 午夜欧美精品久久久| 免费成人自拍视频在线| 欧美少妇高潮久久91| 天天天操天天天爱| 欧美色一二三| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 欧美色图片91| 伊人亚洲国产一成人久久精品,久久| 91精品啪在线观看国产城中村| 欧美72网页| 美女久久久| 欧美一二三区四五区| 欧美在线播放aaaa| 97视频620| 4tube欧美女厕所| 国产高清成人免费视频| 婷婷丁香九月| 成人短视频在线观看| 超碰这里只有精品| 蜜色网色哟哟| 亚洲中文字幕有码视频一区二区三区| 一级啊性爱在线视频| 国产亚洲精品第一最新| 亚洲欧洲另类| 日韩AV色图| 91视频综合在线| 加勒比海人人操超碰在线| 亚洲欧美人妻| 伊人一区二区在线播放| 91操人| 九色 人妻 大香蕉| 日日做夜狠狠爱欧美黑人| 激情婷婷黑人91| 国产亚洲精品一区二区三区| 久久久人妻| 久久人爽| 亚洲人综合| 亚洲另类春色| 性色生活片久久毛片婬片免费放女人一级毛片 | 天天肏夜夜肏| 韩国久久97| 亚洲日韩久久精品一区| 超碰久在线天天做| 黑人娇小av在线播放| 熟女精品va中文字幕| 欧美极品女人的天堂| 97网址97| 一级二级三级黑人无码| 成人看片网站| 夜夜夜夜爽| 国产成人91一区二区三区| 91在线精品| 色婷婷婷五月天激情四射| 久久久精精精| 天堂v无码免费视频| 日本韩欧美在线播放a| 思思热在线| 蜜臀久久精品久久久久视频| 精品三级在线专区| 男人的天堂2010| 国产后入清纯| 亚洲三区视频| 东京热一区二区三区四区五区六区| 蜜桃天美传媒AV一区二区三区| 69少妇一区二区| 欧美亚洲国产自久久| 日本媚薬中文字幕在线| 亚洲欧洲网站免费观看| 999 久久久| 超碰免费人妻在线| 五月天偷拍| 90后后入| 乱老女人一区二区视频| 伊人少妇久久久| 久久国产热视频97电影| 亚洲欧美一区二区不卡视频播放| 亚洲阿v天堂在线| 婷婷丁香五月激情啪啪| 欧美后入式| 亚洲黄色网址视频| 人妻少妇精品久久久| 永久免费av无码网站国产app| 欧美熟爽综合| 一起草高清无码| 天天欧美欧美亚洲网| 精品一区二区三区麻豆| 伊人久久88国产女| 男人久久天堂| 亚洲熟妇自偷自拍另欧美| 夜夜欧美| 日本精品高清一二区一本到| 无码操逼天堂| WWW黄片COM| 风间由美日韩欧美久久| 国产精品久久久鸭无码的功能| 香蕉国产97| 五月婷婷AV| 欧美高清在线| 婷婷五月色| 九九九九九精品视频| 97超级久久强资源| 粉嫩av平台| 久久m| 日韩,欧美,中文在线| baiduhicn.com。| 国产视频第2页| 自拍啪啪视频| 欧美体内射精| 日韩欧美久久婷婷网站| 青青草吊丝| 国产这里只有精品| 蜜臀在线免费观看在线免费观看| 九九九九精| 又黄又粗又硬又长又大| 亚洲导航深夜福利| 色97欧美| 久久大香蕉手机高清视频| 人妻无一区二区三区| 日日夜夜模| 色色五月天婷婷| 91五十路| 另类专区加勒比| 超踫中文字幕| 天天草夜夜草高潮片| 日韩精品一二三| 狠插 制服 自拍| av资源在线观看少妇| 亚洲?V高清一区二区三区尤物| 男女激情中文字幕| 五月天激情婷婷| 日本一区二区中文字幕久久| 9999亚洲精品| 口爆综合网| 欧美性爱视频免费一区一A| 97在线视频观看| 久久精品女同亚洲女同13| 九九热免费国产视频婷婷伊人五月| 国产久久成人| 伊人网高清| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 丁香五月电影| 日本欧美韩国国产在线| 日日爱99| 色69大色97香蕉| 人妻人人澡人人爽人人| 67914亚洲精品| 亚洲欧洲激情卡通另类文学四射小说网站 | 国产毛片久久久久久久| 蜜桃久久一区二区| 九热超碰| 91网站视频在线观看| 亚洲少妇综合在线播放| 久久久久久99AV无码免费网站| 久久风骚城市人| 欧美亚洲厕所精品偷拍91 | 久热这里只有精品9| 熟女露脸激情自拍视频| 国产亚卅97| 日韩丝袜人妻AV| 五月天色五月| 欧美国产日韩高清在线| 亚洲AV秘 精品久久老牛影视| 老熟女区| 大香蕉在线视频15| 激情综合五月天| 天堂8在线新版官网| 人人操人人搞人人草| 中文字幕美女91| 麻豆天美91| 亚洲国产精品无石码久久 | 色综合天天| 操逼日韩无码| 92人人操人人| 在线v中文字幕一区二区三区| 91在线免费精品视频| 99999精品| 999999精品| 亚洲天堂2020| 蜜臀AV午夜精品久| www.91视频网| 懂色Av一区二区三区| 狠狠干2020| 伊人国产AV| 日日骚精品视频| 国产精品密臀网在线观看| 天堂伊人久久| 亚洲无限观看| 天天日熟妇| 97国产|免费| 搡老女人老91二区| 97久久网| 在线毛片片免费观看| 免费视频在线一区二区不卡| 国产亚洲精品一区二区三区| 2017天天拍大香蕉| 天天综合网91| a男人的天堂久久一级A毛片| 97在线观看免费视频| 五月丁香黄色网| 欧美呦呦性爱| 亚洲 日韩 丝袜 熟女 变态| 国产精品麻豆免费视频| 日韩久久.一级黄色片| 久草免费福利在线播放| 人妻精品视频一区二区| 99在线精品观看99| 小草三级久久观看| 日韩紧密久久| 久久久成人精品| 一本大道久| 97在线免费观看| 欧美日产国产在线成人第一区| 亚洲精品天堂久久A∨51成人漫 | 午夜综合在线| 国内精品99999| 97啪啪| 亚洲一级特黄大片在线播放91| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 日韩性爱人人爱人人操| 青青操轻轻| 五月丁香综合激情| 情色五月天久久久| 97超碰久| 亚洲精品人体| 超碰在线观看av不卡| 免费看日产一区二区三区| 99在线精品观看99| 亚洲欧美setu| 久久精品区| 2017人人操,人人摸| 97干在线| 91性高| 日本高清视频在线观看黄已三辽| 人人爱人人乐人人操| 精品然女一区二区| 狠狠干妹子| 欧美极品| 日韩久久.一级黄色片| 99热在线播放| 亚州 综合 色图| 风韵犹存大大大大香蕉 | 久久AV无码网址| 中文色综合| 久久不卡一区二区| 久久中久文96| 18禁无码永久免费无限制| 久久婷婷六月综合| 男生女生啊啊啊啊| 久草综合网| 国产小黄片在线免费观看| 人人澡人人爽人人精品| 久啪视频| 婷婷去俺也去六月色| 啪啪91| 国产蜜臀在线| 亚州免费啪啪视频| 淫色网综合| 天天综合色图| 色青青久久影视| 区二区亚洲婷| 91东北熟女| 日韩啪啪啪啪啪| 久久精品无码不卡| 欧美日本成人一区二区| 2024人人操人人摸| 久久久久久久六六| 久久9久久| 一个人免费HD91视频| 无码久| 国内外内射高清视频| 国产精品成人在线| 人妻少妇精品无码专区二区密桃 | 天天干干天天干干| 五月天综合网| 久操91视频| 麻豆天美国美国产| 欧美九九九| 99精品久久久久久久婷婷蜜桃| 欧洲精品人妻| 在线看的av| 美熟女逼导航AV操逼| 中国国产精品一区视频| 久久精品视频28| 一级片视频啪啪| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 九九九九九九九九九国产精品| 激情久久久| 97伦乱| a一区二区三区乱码在线| 91精品婷婷国产综合久久竹菊| 国产精品永久免费10000| 国产农村妇女精品一| 欧美大香蕉久| 精品小视频在线| 国产黄色影片在线观看| 美女让帅哥通她小鸡鸡| 午夜福利视频在线一区| 日韩欧美久久婷婷网站| 亚洲AV无码国产成人| 少妇的嫩逼图片| 99久久婷婷丁香| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 殴美大黄片| 黑人精品久久97| 99久在线精品99re8热| 伊香蕉综合久久久久久久噜噜噜 | 亚洲成成熟女人综合一区二区| 超碰人人在线| 啊啊啊好多水| 大香蕉国产中文自拍| blacked精品一区国产| 天天色踪合| 草草网站影院白丝内射| 久久99干一本高清| 成人综合色网| 综合激情二| 另类老少妇| 可以免费观看的av| 日本国产亚洲一区在线观看| 亚洲www91| 亚洲最大无码中文字幕网站| 色妺妺AⅤ| 骚熟女吞| 日韩AV电影网站| 91在线秘 男同| 另类图片天天影视| 超碰色大香蕉| 亚州 综合 色图| 欧美综合传媒| 人妻精品一区二区三区| 加勒比大香蕉视频在线| 日本久久网| 久草色悠悠在线视频| 一区二区三区在线日韩影院观看| 一区二区三区色综合| 久久东京热久久| 夜夜骑夜夜操| 东京热一区二区中文字幕| 免费αⅴ在线观看| 色牛牛AV| 神马久久久久久久| 黄色av网站在线播放| 99久久久无码国产精品性男| 欧洲免费一区二| 老熟乱一区二区三区四区| 岛国片在线视频网站| 伊人AAA| 久久天天躁日日躁狠狠躁| 色约约一区=区三区| 国产精品干干干| 久久久噜噜噜久久久| 熟妇视频一区二区三区在线| 国产尤物AV尤物在线观看不卡| 麻豆福利视频导航| 日韩在线国产字幕| 色综合网1| 欧洲一区二区三区四区在线观看| 天天摸夜夜添无码小视频| 亚洲AV成人无码一区二区三区在线观看| 精久久久91| 操www| 大香蕉伊然在亚洲91| 少妇一区二区三区精选| 久久大线蕉一区| 亚洲国产婷婷在线播放| 今日头条成人一区二区三区四虎精品| 1769成人国产精品视频| 欧美极品女人的天堂| 尤物网站91| 午夜精品久久久99| h无码动漫在线观看| 日本日日色视频| 97视频在线免费播放| 99日韩| 国产精品高潮久久久无码| 97看操| 丁香五月天激情| 操www| 亚洲高清在线se| 人妻天天操天天爽视频免费| 人人干黄色| 日韩特一级久久| 久久久久亚洲Av无码专区老牛影视| 午夜操逼不卡| 国产伊人自拍| 操逼1区| 都市激情人妻一区二区青青操视频| 国产精品美女在线一区| 伊人伊人LD| 精品毛片久久久精品毛片| 日韩精品一区二区人人人| 十八禁黄色成人网站观看|