草庐IT

GLSURFACEVIEW

全部标签

Android OpenGL表面视频录制(GLSURFACEVIEW)

我正在做一个项目,我们需要记录渲染的OpenGL表面。(例如,如果我们使用GLsurfaceView,我们需要记录表面以及来自MIC的音频)目前我通过将视频源设置为VIDEO_SOURCE_GRALLOC_BUFFER使用MediaRecorderAPI。我正在使用以下sample作为基础代码我想知道....这是正确的方法吗?.有没有更好的选择?链接中给出的示例测试正在录制EGLSURFACE的音频和视频,但无法正常显示。可能是什么原因?非常感谢任何帮助/指点。谢谢,萨蒂什 最佳答案 您引用的代码不是示例,而是使用非公共(publi

java - 混合 Android View 和 GLSurfaceView

我目前正在开发一款游戏,我不希望进行到一半时发现我正在做的事情会导致错误/降低性能。这就是我考虑的设置方式。首先想要一个LinearLayout,一个LinearLayout包含一个HUD,然后是一个GLSurfaceView。然而,我可能会在某些时候“暂停”游戏View并切换到包含库存或装备等的不同线性布局。我认为这种方式最好,因为我可以利用android附带的所有优秀组件,而不是使用OpenGL自己制作。但是我担心混合两种类型的View可能会出现一些问题。任何见解或建议将不胜感激。谢谢。 最佳答案 我一直在使用以GLSurfac

android - 如何将 View 放在具有透明背景的 glSurfaceView 之上?

我的应用程序由(从后到前)图像背景组成,然后是包含3D对象的glSurfaceView以及位于顶部的2个按钮。我希望GLSurfaceView的背景是透明的,并且可以看到后面的图像。我尝试了两种解决方案,但都不令人满意:mGLSurfaceView=newGLSurfaceView(mContext);mGLSurfaceView.setEGLContextClientVersion(2);mGLSurfaceView.setEGLConfigChooser(8,8,8,8,16,0);mGLSurfaceView.getHolder().setFormat(PixelFormat.T

android - GLSurfaceView - 如何制作半透明背景

我尝试使用GLSurfaceView进行渲染,并通过docs我设置格式:getHolder().setFormat(PixelFormat.TRANSLUCENT);我使用的是GLSurfaceView.Renderer,它在onDrawFrame中绘制:GLES20.glClearColor(0,0,1,.5f);GLES20.glClear(GLES20.GL_DEPTH_BUFFER_BIT|GLES20.GL_COLOR_BUFFER_BIT);但是GLSurfaceView中的GL渲染不是半透明的,全是蓝色。如果我省略glClear调用,那么它是全黑的。如何使GL渲染具有透明

Android:将 OpenGL 效果应用于相机

在Android中有什么方法可以使用GLSurfaceView来显示相机预览,同时在该表面上使用OpenGL效果?特别是加法混合效果。我知道OpenGL可以使用这些效果,我知道相机可以放在SurfaceView上,但是相机可以放在GLSurfaceView中并在该相机预览中应用OpenGL混合效果吗? 最佳答案 您可以使用相机预览获取相机帧的原始像素,然后将其上传到纹理,然后您可以做任何您想要的效果。试着看看这个:AndroidCameraOpenGLESTutorial(虽然android相机支持有很多问题,但以这种方式使用时几乎

android - createWindowSurface 失败 : EGL_BAD_MATCH?

android版本是2.2.1设备是三星galaxyII完整的崩溃日志是:java.lang.RuntimeException:createWindowSurfacefailed:EGL_BAD_MATCHatandroid.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1077)atandroid.opengl.GLSurfaceView$EglHelper.createSurface(GLSurfaceView.java:981)atandroid.opengl.GLSurfaceView$G

android - 在后台运行 Android OpenGL 作为应用程序的渲染资源?

我想在我的应用程序后台运行一个AndroidOpenGL-ES界面,为应用程序提供动态图形资源(位图等)。OpenGlGLSurfaceView不是我的应用程序的可见屏幕;它仅用作渲染工厂来制造供主要Activity使用的图形。有谁知道如何让AndroidGLSurfaceView在非ActivityView时运行?GoogleAndroid文档清楚地表明,当GLSurfaceView失去其作为主视图的状态时,表面及其所有资源都会被销毁。有什么方法可以让GLSurfaceView及其关联的GLSurfaceView.Renderer在不是(而且从来不是)应用程序的主视图时正常运行?

android - GLSurfaceView EGL_BAD_ALLOC

我的程序在两个Activity之间切换,每个Activity都会膨胀一个使用VBO的派生GLSurfaceView。在两个Activity之间来回切换几次后,程序崩溃并抛出如下异常:Java.lang.RuntimeException:createContextfailed:EGL_BAD_ALLOCatandroid.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1079)atandroid.opengl.GLSurfaceView$EglHelper.throwEglException(GLS

android - Android 中 SurfaceView 和 GLSurfaceView 的区别

谁能告诉我SurfaceView和GLSurfaceView之间的基本区别是什么?什么时候用SurfaceView,什么时候用GLSurfaceView?我在StackOverflow上阅读了一些已经回答的问题,但它们不能满足我的疑问。如有任何帮助,我们将不胜感激。 最佳答案 GLSurfaceView是可以使用OpenGL渲染的SurfaceView。在它们之间进行选择很简单:如果您熟悉OpenGL并需要它提供的功能,请使用GLSurfaceView。否则,使用SurfaceView。OpenGL是低级的。如果您还不熟悉它,那么学

使用 Grafika CameraCapture 代码拉伸(stretch)的 Android 相机预览

我正在寻求帮助解决我在使用Grafika'sCameraCaptureActivity时遇到的问题代码。我想构建一个可以记录相机并显示预览的应用程序,所以这个示例和代码看起来正是我想要的,到目前为止一切都很好,这个问题的应用程序。我遇到的问题是,当相机预览大小与我用来显示预览的GLSurfaceView的确切大小不匹配时,它会显示拉伸(stretch)的预览。这是它的样子:正如您所见,它被水平拉伸(stretch)了,因为笔记纸是一个完美的正方形。对于三星GalaxyS4上的这个精确示例,相机预览尺寸为1280x720(使用Camera2API从可用预览尺寸中提取),GLSurface