【问题标题】:WebRTC Video RendererWebRTC 视频渲染器
【发布时间】:2015-01-29 12:09:03
【问题描述】:

我们正忙于渲染从 WebRTC 获得的帧,但无法正确显示视频。

有没有人有这方面的经验,或者是否有在线指南显示如何在 win32 中从 WebRTC 渲染帧?

我们正在 Visual Studio 2013 中构建应用程序。我们之前尝试使用 OpenGL,现在使用 Direct3D,任何一个指南都适合我们。

【问题讨论】:

    标签: c++ winapi webrtc


    【解决方案1】:

    到底是什么问题?就是一块I420格式的像素数据。

    使用任何 YUV -> RGB 转换方法(甚至 WebRTC 库都提供了一种),剩下的工作就是将 RGB 位图绘制到窗口。

    根据我的个人经验,转换非常快,并且绘制到缓冲区(内存 DC、后缓冲区)也足够快。唯一的问题是实际的屏幕演示。为此,Direct2D 是最方便的。

    【讨论】:

    • 问题不在于渲染,而在于实际的转换。我们尝试使用 convertToRgbBuffer(),但最终进入缓冲区的数据是垃圾。
    • 我知道这有点晚了,但您可以使用 OpenCV 进行转换。它提供了一种在色彩空间之间转换图像的方法,以及用于处理图像的一堆其他东西,这取决于你打算用它做什么,这可能很有用。你要的方法是cv::cvtColor(inputImage, outputImage, CV_YUV420p2RGB, 0);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-17
    • 1970-01-01
    • 2014-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多