我正在通过 UDP 接收 H264 流。我想解码流,以便我可以将帧发送到 OpenCV 或其他任何东西。我在这里遇到了 Cisco 的开源 H264 解码器:https ://github.com/cisco/openh264 经过一番努力,我得到了在 Visual Studio 2019 中构建的解码器解决方案,并使用我从命令行创建的文件对其进行了测试原始 UDP 数据报。有用。
现在我想弄清楚如何在 C# 项目中使用解码器 DLL (welsdec.dll)。上一次我在 Windows 中用 C++ 做任何严肃的事情是在 DirectShow 和 Delphi 5 天,所以我完全迷失了。
使用 __declspec(dllexport) 显式导出 H264 项目中的任何内容。这正常吗?将 DLL 作为项目引用添加到 C# 项目不起作用(“引用无效或不受支持”)。
我猜DLL是非托管的。我可以直接在 C# 中使用它吗?我是否必须将 DLL 重写为,或者可能或将其包装在 C++ CX 库中才能使其正常工作?