看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VS2012 opencv3.0 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 利用擷取卡的程式來做即時影像擷取+處理,但擷取卡程式只能等我錄完才 可以讓我利用,我要如何邊擷取邊使用,或用其他方法來達到此功能。 我利用直接吃cam的程式也沒辦法,希望大家幫幫我。 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/0J6DAl 這是我用play video file 的code沒辦法動,可能有影片使用權限他到底會給 VS或擷取卡使用權限的問題。 補充說明(Supplement): http://imgur.com/a/6lcZt 第一張是我按record 會出現的檔案 第二張是我錄完出現的,我可以處理第張圖的檔案, 但第一張圖我該如何使用,還是就沒辦法了。 希望大家提供我方法,教教我如何解決這種權限問題。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.134.37.147 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1447769434.A.4EC.html
bdvstg: 檔案名稱就錯了? 另外給個擷取卡的型號之類的吧11/17 22:33
我現在方法在特定資料夾找.ts檔直接input 抱歉忽略名稱那部分 截取卡 為圓剛 GL310 ※ 編輯: leoloveivy (1.165.148.233), 11/17/2015 23:03:07
bdvstg: 官網沒看到SDK之類的11/17 23:28
bdvstg: 試試VideoCapture(0)看看可不可以抓到裝置11/17 23:29
bdvstg: 0可以替換 0是用預設裝置 1第一個 2第二個 依此類推11/17 23:29
bdvstg: 不行我就不知道還有甚麼方法了 (DSHOW那個好難)11/17 23:31
capture 試過了 也很不想用direct show
bdvstg: 另外我有看到官網展示可以live到YouTube11/17 23:31
摁 我就是想取他那一段但不知道從哪下手 ※ 編輯: leoloveivy (1.165.148.233), 11/17/2015 23:33:44
bdvstg: 我不確定細節 但如果是把你PC變串流伺服器的話11/17 23:32
bdvstg: 也許可以從串流抓影像進程式11/17 23:33
stupid0319: 對擷取卡的程式插入DLL外掛,偷資料到你的程式?11/17 23:33
ok 但通常這種在windows上難度太高 我會在找資料試試看 ※ 編輯: leoloveivy (1.165.148.233), 11/17/2015 23:35:17
bdvstg: 我印象中VideoCapture可以開串流11/17 23:35
bdvstg: 你可能可以查一下YouTube live怎麼運作的11/17 23:36
bdvstg: 如果真的是從你電腦串流(rtsp之類的)到YouTube11/17 23:36
bdvstg: 那你可能可以用wireshark看一下串流網址 然後用opencv開 11/17 23:37
stupid0319: winapi的CreateFile有個dwShareMode參數 11/17 23:47
stupid0319: 用ollydbg打開擷取程式,找到Call CreateFile的地方11/17 23:48
stupid0319: 把dwShareMode的參數改成1,你的程式就可以讀取了11/17 23:49
bdvstg: 我看了一下dwShareMode 設1像是ReadOnly 不佔住裝置11/18 06:12
ok 我待會試試看 不過ollydbg只用過一次 有什麼訣竅嗎? 找他中斷點之類的? ※ 編輯: leoloveivy (140.134.18.35), 11/18/2015 09:57:48
stupid0319: 訣竅就是耐心看組合語言..... 11/18 12:34
http://imgur.com/oiIencr 我找到的CreateFile 不知道是不是大大講的那個 ※ 編輯: leoloveivy (140.134.37.147), 11/19/2015 01:28:27 ※ 編輯: leoloveivy (140.134.37.147), 11/19/2015 01:43:20
stupid0319: 看起來不是,conout$是指代當前console 11/19 01:58
stupid0319: 你要找第一個參數是影片檔名的CreateFile 11/19 02:01