如何在Android中正确地将YUV颜色转换为RGB?

如何在Android中正确地将YUV颜色转换为RGB?,android,android-mediacodec,renderscript,Android,Android Mediacodec,Renderscript,我正在使用MediaCodec从SD卡上的视频检索帧。 我正在使用ScriptIntrinsicYuvToRGB将MediaCodec的输出帧转换为RGB。然后我在TextureView中显示它们。 问题是,RGB颜色是错误的(例如草是绿色的,而不是紫灰色) 有人知道如何解决这个问题吗? 谢谢为什么不直接解码到TextureView?从TextureView获取SurfaceTexture,将其传递给曲面构造函数,将该曲面传递给MediaCodec解码器。注意MediaCodec使用不同于Ca

我正在使用MediaCodec从SD卡上的视频检索帧。

我正在使用ScriptIntrinsicYuvToRGB将MediaCodec的输出帧转换为RGB。然后我在TextureView中显示它们。
问题是,RGB颜色是错误的(例如草是绿色的,而不是紫灰色)
有人知道如何解决这个问题吗?

谢谢

为什么不直接解码到TextureView?从TextureView获取SurfaceTexture,将其传递给曲面构造函数,将该曲面传递给MediaCodec解码器。注意MediaCodec使用不同于Camera的YUV格式;另请参见@fadden谢谢您的回复。我之所以需要这样做,是因为我想使用RenderScript对每个帧应用效果。你能给我一些建议吗?谢谢