package com.example.datalibrary.deptrum;
|
|
public class GLDisplay {
|
private boolean mIsDisplayStarted;
|
private GLFrameRenderer render;
|
|
/**
|
* 预览渲染
|
*
|
* @param view 需要渲染的视图
|
* @param displayOrientation 预览方向
|
* @param displayMirror 预览镜像
|
* @param displayOrientation 预览方向
|
* @param data 预览的图像数据
|
* @param renderWidth 预览宽
|
* @param renderHeight 预览高
|
* @param dataType 图像数据类型 0:yuv420p 1:rgb24
|
* @return void
|
*/
|
public synchronized void render(
|
GLFrameSurface view,
|
int displayOrientation,
|
boolean displayMirror,
|
byte[] data,
|
int renderWidth,
|
int renderHeight,
|
int dataType) {
|
render = view.getCurrentRenderer();
|
render.setResolution(renderWidth, renderHeight);
|
if (view != null && render != null) {
|
if (!mIsDisplayStarted) {
|
render.update(renderWidth, renderHeight, dataType);
|
view.onResume();
|
mIsDisplayStarted = true;
|
}
|
render.setDisplayOrientation(displayOrientation);
|
render.displayMirror(displayMirror);
|
render.update(data, dataType);
|
}
|
}
|
|
/**
|
* 释放预览
|
*
|
* @return void
|
*/
|
public void release() {
|
if (render != null) {
|
render.release();
|
this.mIsDisplayStarted = false;
|
}
|
}
|
}
|