android - 相机 View 上的 opengl 叠加

标签 android camera opengl-es-2.0 android-camera

我仍然没有找到在相机预览顶部显示 opengl 覆盖的正确方法,

有一个黑客,你在哪里打电话

setContentView(GLSurfaceView)
addContentView(MyCameraSurfaceView)

但它无法正常工作 - 即当您切换到另一个 Activity 并返回时,opengl 层不会显示在相机预览中。

有很多使用上述方法的教程和示例,但它根本没有按预期工作

有谁知道在layar中是怎么做到的

最佳答案

看来我已经找到了问题的解决方案 - 它的 setZOrderMediaOverlay 函数,这是我的代码:

private void initViews()
{
    mFrame = new FrameLayout(this);
    initCameraView();
    initGLView();
    setContentView( mFrame );
}
private void initGLView()
{
    mRenderer = new MyGLRenderer( this );
    mGLView = new GLSurfaceView(this);
    mGLView.setZOrderMediaOverlay(true);
    mGLView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
    mGLView.setRenderer(mRenderer); 
    mGLView.getHolder().setFormat(PixelFormat.TRANSLUCENT);

    mFrame.addView( mGLView );      
}

private void initCameraView()
{
    mCameraSurfaceView = new CameraSurfaceView(this);
    mFrame.addView(mCameraSurfaceView);     
}

关于android - 相机 View 上的 opengl 叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8986437/

相关文章:

java - 从 com.google.android.gms.vision.CameraSource 访问相机并增加/减少预览亮度

android - 正确的顶点着色器代码? OpenGL ES 2.0

android - 使用 SharedPreferences 的简单示例

android - 将值从第一个 Activity 传递到android中的第二个 Activity

java - GET 方法调用两次,代码为 301 和 200

matrix - OpenGL ES2.0 模型 View 矩阵 2D

iphone - OpenGL-ES 2.0 VS OpenGL-ES 1.1,哪个更快?

android - 在 Bitbucket 上发布一个 android 库作为 maven Artifact 问题

android - 如何在 android 中使用 FaceDetector 的相机资源?

c++ - 如何使用 C/C++ 获取原始相机数据?