[問題] DirechShow 畫線畫點

看板C_and_CPP作者 (Lucky)時間13年前 (2011/10/06 23:08), 編輯推噓0(006)
留言6則, 2人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) vc2005 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) DirectShow 問題(Question): 各位好,小弟因為project的需求,透過ds從攝影機讀入動態的資料,該攝影機 只成餵YUYV(YUV422)的影像串流,然後我已經接上一個Transform Filter可以 在Input Pin輸入之後改變影像資料在輸出至Ouput Pin上面呈現,但是因為接到 的Raw Data是YUV422格式的,因此很不容易直觀的畫線或畫點(標示用),上網 google好像是說要用DirectDraw的方式來畫線,不知道有沒有其他不要用到DirectDraw 的方法? 第二點方向~我是用VMR7把影像render到mfc中某個HWND上面的,不知道是不是有什 麼事件可以通知主程式directshow已經render一張frame到指定的hwnd上,這個時候 就可以在透過該HWND的GDI直接在把線畫上去。。。可是找了好久好像還是沒有相關的 方向,不知道有沒有人處理過的? 餵入的資料(Input): YUV的Raw Data 預期的正確結果(Expected Output): 畫面上有自己想要的線或點 錯誤結果(Wrong Output): 找不到可行的方向 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.34.91.219

10/06 23:15, , 1F
後來想到把yuv轉乘rgb直接打到gdi上,就不要用vmr7了
10/06 23:15, 1F

10/06 23:15, , 2F
不知道各位大大覺得這個方法好不好?
10/06 23:15, 2F

10/07 10:10, , 3F
如果要時間準確的話 就自已做一個render filter來畫
10/07 10:10, 3F

10/07 13:41, , 4F
謝謝 請問要用哪一種Render Filter
10/07 13:41, 4F

10/12 08:47, , 5F
最後是用TransInPlace Filter把抓到的IMediaSample
10/12 08:47, 5F

10/12 08:48, , 6F
中的YUV422資料直接2pixel做SetPixel了
10/12 08:48, 6F
文章代碼(AID): #1EZSHzd- (C_and_CPP)