如何在 Unity 中将 Agora.io 提要渲染到 WebCamtexture?

问题描述

我应该如何实现转换?

据我所知,VideoSurface.cs 包含所有渲染和纹理代码。从那里看来,Agora.io 中使用的纹理是 Texture2D,这是一个私有变量。

private variable

我找到的唯一解决方案是 Graphics.Blit 函数并使 Texture2D 变量公开以访问它,但我不知道它是否有效或不会,因为这意味着要进行大量的重写尝试,而且我想沿着最可能成功的路线前进。

最好的解决方案是甚至不使用这种 Agora.io 渲染,而是将传入的视频流直接渲染到 WebCamTexture,而无需复制纹理。

解决方法

我想知道为什么您需要将传入的视频流转换为 WebcamTexture。我对 WebcamTexture 的理解是保存本地相机的流,通常人们希望从中获取数据并发送出去,而不是相反。你会分享你的代码你打算如何在那里设置数据吗?

但是,要回答您的原始问题 - 如果您想呈现自己的纹理显示,请使用没有 VideoSurface 脚本的 VideoRawDataManager。