最近在做一個多屏組合的流媒體播放器,在使用directdrawYUV資料畫到各個螢屏時發現,畫面間的同步性很差,后來定位是因為顯示緩沖中資料越存越多,是繪制的效率跟不上視屏的幀率,以前的程式畫yuv資料時使用的是directdraw的blt介面,后來改成bltfast,效率稍微高了一點,但是仍然遠遠達不到要求,因為是要全屏顯示在各個螢屏,想要用全屏獨占模式,用Flip翻轉,這樣應該效率更高,但是更改之后,發現影像完全顯示不了,各位了解Flip使用方式的大神,求指導。
uj5u.com熱心網友回復:
百度搜相關關鍵字。uj5u.com熱心網友回復:
directdraw略懂一點,首先感覺出現這個問題應該不是directdraw的問題,因為它很快的。我理解你的意思是原始畫面YUV 3通道分解,而后分別顯示。
那么你將這些拆分、顯示的部分放在哪里控制的?你的執行緒結構是怎樣的?
問題可能是出現在這里,建議放更多的代碼。
此外。基于opencv和mfc的攝像頭采集代碼(GOMFCTemplate2)持續更新是基于directshow的,你看看有沒有用。
uj5u.com熱心網友回復:
vs里面有自帶的性能除錯器,分析一下究竟是哪里慢了轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/89650.html
標籤:圖形處理/算法
上一篇:多執行緒采集資料處理怎樣同步才能達到不漏采資料同時處理效率最優?
下一篇:C++ ransac直線擬合問題
