| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2015 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2015 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| 11 package org.webrtc; | 11 package org.webrtc; |
| 12 | 12 |
| 13 import android.opengl.GLES11Ext; | 13 import android.opengl.GLES11Ext; |
| 14 import android.opengl.GLES20; | 14 import android.opengl.GLES20; |
| 15 | |
| 16 import java.nio.FloatBuffer; | 15 import java.nio.FloatBuffer; |
| 17 import java.util.IdentityHashMap; | 16 import java.util.IdentityHashMap; |
| 18 import java.util.Map; | 17 import java.util.Map; |
| 19 | 18 |
| 20 /** | 19 /** |
| 21 * Helper class to draw an opaque quad on the target viewport location. Rotation
, mirror, and | 20 * Helper class to draw an opaque quad on the target viewport location. Rotation
, mirror, and |
| 22 * cropping is specified using a 4x4 texture coordinate transform matrix. The fr
ame input can either | 21 * cropping is specified using a 4x4 texture coordinate transform matrix. The fr
ame input can either |
| 23 * be an OES texture or YUV textures in I420 format. The GL state must be preser
ved between draw | 22 * be an OES texture or YUV textures in I420 format. The GL state must be preser
ved between draw |
| 24 * calls, this is intentional to maximize performance. The function release() mu
st be called | 23 * calls, this is intentional to maximize performance. The function release() mu
st be called |
| 25 * manually to free the resources held by this object. | 24 * manually to free the resources held by this object. |
| (...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 * Release all GLES resources. This needs to be done manually, otherwise the r
esources are leaked. | 201 * Release all GLES resources. This needs to be done manually, otherwise the r
esources are leaked. |
| 203 */ | 202 */ |
| 204 @Override | 203 @Override |
| 205 public void release() { | 204 public void release() { |
| 206 for (Shader shader : shaders.values()) { | 205 for (Shader shader : shaders.values()) { |
| 207 shader.glShader.release(); | 206 shader.glShader.release(); |
| 208 } | 207 } |
| 209 shaders.clear(); | 208 shaders.clear(); |
| 210 } | 209 } |
| 211 } | 210 } |
| OLD | NEW |