android - 如何以类似于相机为 SurfaceTexture 生成帧的方式生成 YUVI420 帧到 SurfaceTexture?

标签 android opengl-es yuv

我可以渲染 YUVI420框架上 GLSurfaceView使用 openGL,但我的要求是在 SurfaceTexture 上渲染帧.
基本上我想为 SurfaceTexture 制作框架不像渲染到 TextureView等等,我有来自 WebRTC 的 YUV 数据流,我希望这个流位于 SurfaceTexture以便稍后我可以在 EXTERNAL_TEXTURE_OES 中访问它在消费者层面。
我找不到任何关于在 SurfaceTexture 上生成帧的来源。是否可以将 YUV 帧生成到 SurfaceTexure?

最佳答案

可以将YUVI420帧转成byteArray,画在canvas上,放到TextureView上

val canvas: Canvas = textureView.lockCanvas()
canvas.drawBitmap(sourceBitmap, 200f, 100f, Paint())
textureView.unlockCanvasAndPost(canvas)

关于android - 如何以类似于相机为 SurfaceTexture 生成帧的方式生成 YUVI420 帧到 SurfaceTexture?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58723859/

相关文章:

android - 使按钮自动在屏幕上移动

android - 在失败时处理 AdWhirl

android - 使用 NDK 在 C/C++ 中将 YUV 解码为 RGB

android - Android TextView 支持的 html 标签

iphone - OpenGL 3D 碰撞检测

java - 如何在 Vuforia SDK 中使用 jPCT?

ios - iOS 2D 游戏的图形

opengl-es - OpenGL ES 中 YUV420 到 RGB 转换的纹理

embedded-linux - v4l2 视频捕获示例

android - 当我在线程运行时将 View 添加到其他 View 时强制关闭