如何在SurfaceView / View中使用RenderScript

时间:2013-10-11 10:08:04

标签: android surfaceview renderscript

最新的Android SDK(R22)已删除android.renderscript.RSSurfaceViewandroid.renderscript.RenderScriptGL个类。我们如何在SurfaceView或常规Android View上直接使用RenderScript?

1 个答案:

答案 0 :(得分:0)

简短回答: 情况很复杂。

答案很长: https://github.com/googlesamples/android-HdrViewfinder

他们似乎进行了RGBA分配:

    Type.Builder rgbTypeBuilder = new Type.Builder(rs, Element.RGBA_8888(rs));
    rgbTypeBuilder.setX(dimensions.getWidth());
    rgbTypeBuilder.setY(dimensions.getHeight());
    mOutputAllocation = Allocation.createTyped(rs, rgbTypeBuilder.create(),
            Allocation.USAGE_IO_OUTPUT | Allocation.USAGE_SCRIPT);

然后从SurfaceView持有者获取一个曲面以传递给分配。然后他们在上面运行一些rs,然后调用:

mOutputAllocation.ioSend();

每帧... 检查代码,似乎有一些陷阱。