【问题标题】:Decoder D3D9 example and running in CUDA解码器 D3D9 示例并在 CUDA 中运行
【发布时间】:2013-07-08 02:07:13
【问题描述】:

我是 CUDA 解码器的新手,并试图弄清楚 CUDA 解码器 D3D9 示例的代码是如何工作的。我下载了示例代码并尝试使用g_bUseDisplay = true 运行带有示例视频的代码,但在运行此命令时出现堆栈调用错误

g_pD3DDevice->SetViewport(&oViewport);

有人可以帮我吗?我尝试用谷歌搜索它,但找不到太多并停留在这一点上。我想更改代码以运行 H.264 编解码器并保存输出文件或显示它但无法运行示例代码。另外,如果有人可以帮助我保存输出帧。谢谢。

【问题讨论】:

  • 示例代码不做任何改动可以运行吗?
  • 不,我仍然无法在没有任何更改的情况下运行它,但如果我让 g_bUseDisplay = false 则它运行正常,但没有任何视频输出
  • 示例代码默认有g_bUseDisplay = false,所以我想这意味着如果您不对其进行任何更改,您可以运行示例代码。您的机器详细信息是什么(GPU、驱动程序、操作系统)?哪个CUDA版本?你安装了directx sdk吗?
  • 在带有 Quadro1000M、CUDA 5、2010 年 6 月 DX SDK 和 Visual Studio 2008 的 windows 7 x64 笔记本电脑上(构建一个 win32“调试”项目)我加载了 cudaDecodeD3D9 示例项目,然后我更改了 @ 987654324@ 到 trueg_bUseInteroptrue,我能够成功编译和运行示例,并在打开的窗口中看到解码的视频。
  • 谢谢你我想通了。我遇到了标志问题。非常感谢您..如果您可以将您的最后评论作为答案,那么我可以接受。

标签: cuda decode h.264


【解决方案1】:

SDK sample 带有设置为解码但不显示解码帧的默认标志。

here 所示,应该可以只将-displayvideo 命令行参数传递给应用程序,并且您应该能够看到解码的帧。或者,我可以将g_bUseInteropg_bUseDisplay 这两个标志设置为true,并且还可以在不传递其他命令行参数的情况下查看解码的视频。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-30
    • 2012-02-28
    • 1970-01-01
    • 2012-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多