我最近在跑样例里面的两个例子,一个是cudaDecodeD3D9,发现没法弹出播放窗口,应该是这段没有执行:
if (!g_bQAReadback && !bTCC)
{
ShowWindow(hWnd, SW_SHOWDEFAULT);
UpdateWindow(hWnd);
}
但是程序正常解码了。请问这是为什么?
另外一个例子是cudaDecodeGL,这个里面的播放窗口是白色的,没有视频内容。
请各位大神指教,谢谢了!
我最近在跑样例里面的两个例子,一个是cudaDecodeD3D9,发现没法弹出播放窗口,应该是这段没有执行:
if (!g_bQAReadback && !bTCC)
{
ShowWindow(hWnd, SW_SHOWDEFAULT);
UpdateWindow(hWnd);
}
但是程序正常解码了。请问这是为什么?
另外一个例子是cudaDecodeGL,这个里面的播放窗口是白色的,没有视频内容。
请各位大神指教,谢谢了!
LZ您好,方便提供下您的软硬件环境么?
我估计您有可能是telsa卡并运行在TCC驱动模式下,而TCC驱动是不支持CUDA和D3D/OPENGL互操作的,所以如果您使用TCC驱动的话,这里可能有问题。不过我这里没有telsa卡,所以无法试验,仅作推断如此。
此外,您的第一个例子,该程序按照说明需要添加命令行参数“-displayvideo”才能显示视频。如果您已经添加,请无视本条建议。
除此而外,也可能是其他问题,请您继续反馈,也请更为熟悉此问题的网友/版主补充。
祝您编码顺利~
我的显卡是GT240M,很老的卡了。我是在VS里面做的啊?怎么添加那个命令呢?
您好,如果您是GT240M的卡的话,请无需考虑TCC驱动模式的问题,因为那个是telsa卡专有的。
关于“-displayvideo”参数的问题,您可以在用命令行模式执行您的exe的时候,手工打上去。
如果需要在VS里面调试的时候也添加上的话,那么可以在工程名称上右键——属性——配置属性——调试——命令参数 ,在这里添加。如此一来在调试的时候就会自动输入该参数了。
关于CUDA例子的其他问题,我尚不清楚,有待其他人补充。
祝您调试顺利~
太感谢了,没有弹出框的那个已经成功显示了。
有关cudaDecodeGL窗口没有视频内容的问题我再去读读代码和说明。
谢谢您了。
LZ您好,很荣幸能为您解决一个问题。
第二个问题还请其他人继续补充。如果您有任何新的发现,欢迎及时反馈。
祝您编码顺利~
您好,我的第二个问题也解决了。
我仔细看了下视频框的显示和源码,发现是g_bUseDisplay参数的问题。
只要在void computeFPS(int bUseInterop)中,将其设置成true就可以正常显示了。
谢谢您的支持。
恭喜LZ解决问题,感谢您的反馈!
祝您编码愉快~
您好,我想请教一下,哪里可以找到SDK里面例子的程序说明呢?除了SDK自带的pdf文档以外的。
如果有的话可以给出网络链接么?万分感谢。!
您好,这个好像没有进一步说明的,除了自带的pdf以外,似乎就只能读代码看注释了。
嗯好的,谢谢了。我去阅读源码。
不客气,祝您一切顺利~
嗯好的,我在阅读源码。
现在有一个问题:这个cudaDecodeD3D9为何无法解码mkv格式的文件呢?需要用什么参数么?
LZ您好,我不清楚这个问题,但是考虑到mkv其实是一种“容器格式”。您可以查询下该容器格式是否被支持,以及是否需要其他操作先从容器中分离出所需的数据,再进一步处理。
无责任推测如上,祝您好运~
注释中说了支持mkv的。。但是老是出错。。唉 = =
mkv据我所知是不行的,CUVideoSource貌似不支持这个容器。
实在要解你可以用ffmpeg的demuxer,但是替换掉CUVideoSource的过程有点繁琐。