Jim*_*Ren 5 android allocation opengl-es renderscript
我在Android 4.2版上使用RenderScript.我试图使用"Allocation.USAGE_IO_INPUT"标志创建RenderScript分配.根据该文档,如果设置了"Allocation.USAGE_IO_INPUT",则Allocation将用作SurfaceTexture使用者,并且成员函数"getSurface()"也将变为有效.但是,当我调用getSurface()函数时,我总是收到以下错误消息.
E/libEGL(31656): call to OpenGL ES API with no current context (logged once per thread)
Run Code Online (Sandbox Code Playgroud)
我google了一下,发现大多数人都说这样的错误信息是由GL线程外部调用OpenGL ES API引起的.所以我尝试使用我发现的以下两种方式.
然而,两次尝试都失败了.
虽然该程序没有崩溃与此错误提示,并确实返回一些表面.我遇到了与调用Allocation.ioReceive()函数时使用由Camera预览填充的SurfaceTexture作为Jelly Bean中的Renderscript输入分配相同的问题.我在调用ioReceive()时得到的错误信息是
E/SurfaceTexture(32208): [unnamed-32208-2] updateTexImage: invalid current EGLDisplay
Run Code Online (Sandbox Code Playgroud)
那么,我想知道在RenderScript中使用USAGE_IO_INPUT Allocation的正确方法是什么?非常感谢你提前.
| 归档时间: |
|
| 查看次数: |
766 次 |
| 最近记录: |