首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在NvidiaCUDA5.0SDK的项目NV12中获取cudaDecodeGL文件?

如何在NvidiaCUDA5.0SDK的项目NV12中获取cudaDecodeGL文件?
EN

Stack Overflow用户
提问于 2013-08-16 13:56:03
回答 1查看 414关注 0票数 0

最近,我一直在阅读Nvidia cuda5.0 cudaDecodeGL项目的SDK.This项目,将MPEG2文件转换为NV12文件,然后在内核函数中将NV12文件转换为ARGB文件,最后将该ARGB文件呈现并显示在OpenGL窗口中。实际上,中间产生的NV12文件不是输出的,而我想要得到NV12文件。如果有人能告诉我该怎么做,我会非常感激的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-18 03:43:35

提到白纸

对框架的后处理是通过cudaPostProcessFrame()映射框架来完成的。这将返回指向经过NV12解码的帧的指针。

此函数包含(并使用)在源文件videoDecodeGL.cpp中,该源文件包含在样本工程中。

这个函数只有一个实际用途(函数调用)。它被从copyDecodedFrameToTexture函数中调用。这个函数中的解码帧就是您想要的。如果在调用cudaPostProcessFrame之前查看此函数,您将看到以下代码:

代码语言:javascript
复制
        // If streams are enabled, we can perform the readback to the host while the kernel is executing
        if (g_bReadback && g_ReadbackSID)
        {
            CUresult result = cuMemcpyDtoHAsync(g_bFrameData[active_field], pDecodedFrame[active_field], (nDecodedPitch * nHeight * 3 / 2), g_ReadbackSID);

这显示了如何/在何处/何时将解码后的帧抓取回主机,如果您愿意的话。此时,您将不得不排队帧,并保存到一个文件,如果这是您想要做的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18275037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档