NIMSDK-AOS  9.16.0
AVChatTextureBuffer.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.avchat.video;
2 
3 import android.graphics.Matrix;
4 import android.opengl.GLES11Ext;
5 import android.opengl.GLES20;
6 
7 import com.netease.nrtc.sdk.video.VideoFrame;
8 
9 public class AVChatTextureBuffer extends AVChatBuffer {
10 
11  private final VideoFrame.TextureBuffer buffer;
12 
13  enum Type {
14  OES(GLES11Ext.GL_TEXTURE_EXTERNAL_OES),
15  RGB(GLES20.GL_TEXTURE_2D);
16 
17  private final int glTarget;
18 
19  Type(final int glTarget) {
20  this.glTarget = glTarget;
21  }
22 
23  public int getGlTarget() {
24  return glTarget;
25  }
26  }
27 
28  AVChatTextureBuffer(VideoFrame.TextureBuffer buffer) {
29  super(buffer);
30  this.buffer = buffer;
31  }
32 
33  public Type getType() {
34  switch (buffer.getType()) {
35  case OES:
36  return Type.OES;
37  case RGB:
38  return Type.RGB;
39  }
40  return Type.OES;
41  }
42 
43  public int getTextureId() {
44  return buffer.getTextureId();
45  }
46 
47  public Matrix getTransformMatrix() {
48  return buffer.getTransformMatrix();
49  }
50 }