首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UWP统一插件中使用DirectX11的硬件加速译码

UWP统一插件中使用DirectX11的硬件加速译码
EN

Stack Overflow用户
提问于 2018-09-20 20:21:45
回答 1查看 1.6K关注 0票数 2

我已经为我的UWP应用程序构建了一个统一插件,它将原始的h264数据包转换为RGB数据,并将其呈现为纹理。我用了FFMPEG来做这件事,而且效果很好。

代码语言:javascript
复制
int framefinished = avcodec_send_packet(m_pCodecCtx, &packet);
framefinished = avcodec_receive_frame(m_pCodecCtx, m_pFrame);
// YUV to RGB conversion and render to texture after this

现在,我正在尝试使用DirectX11 DXVA2.0进行基于硬件的解码。

使用这个:https://learn.microsoft.com/en-us/windows/desktop/medfound/supporting-direct3d-11-video-decoding-in-media-foundation

我能够创建一个解码器(ID3D11VideoDecoder),但我不知道如何提供原始的H264数据包,并获得YUV或NV12数据作为输出。(如果可能的话,可以直接将输出呈现到纹理,因为我可以获得ID3D11Texture2D指针)

因此,我的问题是,您如何将原始的h264数据包发送到这个解码器并从中获得输出?

此外,这是为了实时操作,所以我试图实现最小的延迟。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-28 14:37:12

既然您已经使用FFMPEG完成了它,我建议您直接使用FFMPEG的dx11硬件解码。

有关详细信息,请查看HW解码程序FFMPEG示例:解码.‌​c

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

https://stackoverflow.com/questions/52432738

复制
相关文章

相似问题

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