用于数字视频渲染的 Direct2D 与 Direct3D

Direct2D versus Direct3D for digital video rendering

我需要将来自多个 IP 摄像机的视频渲染到客户端应用程序中的多个控件中。 在视频之上,我应该可以添加一些 OSD,例如时间戳和摄像机名称。 我正在尝试做的事情与 3D 无关,因为我们谈论的是带有一些文本的数字视频。

哪个API更适合这个目的? Direct3D 还是 Direct2D? 性能也应该是这里的一个考虑因素。

过去,Direct2D 是 Windows Phone(如果您关心该系统)的一个糟糕选择,因为它不受支持,但 Win Phone 8.1 有现在,问题不大了。 我对 D2D 的体验是它提供了快速、高质量的 2D 渲染,我认为这是一个不错的选择。 您可能想看看 this article on Code Project。这看起来适合您的目的。 如果您确定您只需要 MS 系统支持,那么您已经准备就绪。 另一种方法是像 nanovg 这样的跨平台系统,它提供了很好的 2D 渲染并且可以在 Mac 上运行。当然,您需要了解如何在非 windows 系统上制作视频部分。

关于 D3D,您当然可以那样做,但我猜这会使一些事情变得更棘手。别忘了您也可以将两者结合起来...