package lilin.com.view;
|
|
import android.content.Context;
|
import android.opengl.GLSurfaceView;
|
import android.util.AttributeSet;
|
|
public class FFWlGLSurfaceView extends GLSurfaceView{
|
|
private FFWlRender wlRender;
|
|
public FFWlGLSurfaceView(Context context) {
|
this(context, null);
|
}
|
|
public FFWlGLSurfaceView(Context context, AttributeSet attrs) {
|
super(context, attrs);
|
setEGLContextClientVersion(2);
|
wlRender = new FFWlRender(context);
|
setRenderer(wlRender);
|
setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);
|
//mediacodec
|
wlRender.setOnRenderListener(new FFWlRender.OnRenderListener() {
|
@Override
|
public void onRender() {
|
requestRender();
|
}
|
});
|
}
|
|
//yuv
|
public void setYUVData(int width, int height, byte[] y, byte[] u, byte[] v)
|
{
|
if(wlRender != null)
|
{
|
wlRender.setYUVRenderData(width, height, y, u, v);
|
requestRender();
|
}
|
}
|
//mediacodec
|
public FFWlRender getWlRender() {
|
return wlRender;
|
}
|
|
|
}
|