2013-07-08 30 views
0

我是CUDA解碼器的新手,試圖弄清楚CUDA解碼器D3D9示例的代碼如何工作。我下載的樣本代碼,並嘗試以g_bUseDisplay = true運行與樣品視頻的代碼,但我在這個命令的運行得到一個堆棧調用錯誤解碼器D3D9示例並在CUDA中運行

g_pD3DDevice->SetViewport(&oViewport); 

誰能幫助我在這裏嗎?我試圖谷歌它,但無法找到很多,並堅持在這一點上。我想更改代碼以運行H.264編解碼器並保存輸出文件或顯示它,但無法運行示例代碼。另外如果有人可以幫助我保存輸出幀。謝謝。

+0

如果您不做任何更改,您可以運行示例代碼嗎? –

+0

都能跟得上我仍然無法不作任何改變運行它,但如果我做g_bUseDisplay = false,那麼它運行不錯,但無任何視頻輸出 – Hadi

+0

默認的示例代碼有'g_bUseDisplay = FALSE',所以我想這意味着你可以* *如果您沒有對其進行任何更改,請運行示例代碼。你的機器細節是什麼(GPU,驅動程序,操作系統)?哪個CUDA版本?你有沒有安裝directx sdk? –

回答

2

SDK sample附帶了被設置爲解碼,但不顯示解碼幀默認標誌。

如圖所示here應該可以將-displayvideo命令行參數傳遞給應用程序,並且您應該能夠看到已解碼的幀。或者,我能夠將g_bUseInteropg_bUseDisplay這兩個標誌設置爲true,並且還可以看到解碼的視頻,同時不會傳遞額外的命令行參數。