小编Rou*_*ltx的帖子

Android org.webrtc.VideoRenderer.I420Frame 数组到 PreviewCallback.onPreviewFrame byte[]

我一直希望一些代码会出现在互联网上,但一无所获;)

WebRTC传入的I420Frame对象似乎有3个yuvPlanes数组

典型的 Android 相机应用程序将 PreviewCallback.onPreviewFrame byte[] 作为单个字节数组获取。

有人可以帮助我如何将 I420Frames yuvPlanes 转换为单个 byte[] 数组,如 PreviewCallback.onPreviewFrame byte[] YCbCr_420_SP (NV21)?

作为参考,VideoStreamsView.java 有此代码可以渲染到 OpenGL - 但我只想像相机预览一样;)来自: https: //code.google.com/p/libjingle/source/browse/trunk/talk/examples/ android/src/org/appspot/apprtc/VideoStreamsView.java?r=286

// Upload the YUV planes from |frame| to |textures|.
private void texImage2D(I420Frame frame, int[] textures) {
for (int i = 0; i < 3; ++i) {
  ByteBuffer plane = frame.yuvPlanes[i];
  GLES20.glActiveTexture(GLES20.GL_TEXTURE0 + i);
  GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textures[i]);
  int w = i == 0 ? frame.width : frame.width / 2;
  int h = i == 0 ? …
Run Code Online (Sandbox Code Playgroud)

android yuv android-image android-camera webrtc

6
推荐指数
1
解决办法
6418
查看次数

标签 统计

android ×1

android-camera ×1

android-image ×1

webrtc ×1

yuv ×1