我正在使用 cuvidCreateVideoParser 创建一个视频解析器,并从VLC提供一个H264 UDP流,并执行它应该执行的所有操作。它调用所有处理程序,而这些处理程序又调用解码器,而解码器又将帧呈现为Direct3D( ID3D10Texture2D * )纹理。唯一的问题是纹理只是随机噪音。如果我从文件发送解析器数据,那就完全没问题了。只有我流了它。我甚至使用了live555并将解析器从rtsp发送的数据运气更少, CUvideoparser 甚至不承认它的视频数据。我知道我必须在这里找不到简单的东西,我就是看不到它。
基本上问题是:如何从流中填充 CUVIDSOURCEDATAPACKET ,而不是使用只能获取文件的 cuvidCreateVideoSource
答案 0 :(得分:1)
看看这里:fill CUVIDSOURCEDATAPACKET
此外,您需要从rtsp Stream中提取h264 Stream数据,然后再将其发送到Cuda解析器。你不能将rtsp stream has is发送给cuda解析器。