草庐IT

RenderScript

全部标签

android - Allocation.copyTo(Bitmap) 破坏像素值

我是Renderscript的新手,在我的第一个脚本中遇到了一些问题。据我所知(从我插入的调试语句中)我的代码工作正常,但是当计算值被Allocation.copyTo(Bitmap)方法复制回Bitmap时,它们被破坏了。我得到了奇怪的颜色,所以最终将我的脚本剥离到这个显示问题的示例:voidroot(constuchar4*v_in,uchar4*v_out,constvoid*usrData,uint32_tx,uint32_ty){*v_out=rsPackColorTo8888(1.f,0.f,0.f,1.f);if(x==0&&y==0){rsDebug("v_out",v

android - RenderScript 未正确渲染 ScriptIntrinsicBlur,导致 ScriptIntrinsicBlur 渲染彩虹色

使用glideandroid库,我将图像作为位图(seeglidedocumentation)获取,然后我尝试使用renderscript和ScriptIntrinsicBlur模糊位图,这是一种高斯模糊。(Takenfromthisstackoverflowpost)Glide.with(getApplicationContext()).load(ImageUrl).asBitmap().into(newSimpleTarget(300,200){@OverridepublicvoidonResourceReady(Bitmapresource,GlideAnimationglide

android - RenderScript 支持库在 x86 设备上崩溃

我在x86设备Razori上运行android.support.v8.renderscript.*时遇到致命异常。如果我使用android.renderscript.*问题就会消失,而且ARM设备也没有问题。这是异常(exception)情况:03-0318:35:26.00925011-25011/com.example.appE/AndroidRuntime﹕FATALEXCEPTION:mainjava.lang.RuntimeException:UnabletostartactivityComponentInfo{com.example.app/com.example.app.

android - 加载 RS jni 库时出错 : UnsatisfiedLinkError: Couldn't load RSSupport: findLibrary returned null

将RenderScript与支持库一起使用时,我在MotorolaiRazr(Android4.1.2)上遇到此错误ErrorloadingRSjnilibrary:java.lang.UnsatisfiedLinkError:Couldn'tloadRSSupport:findLibraryreturnednull在SamsungGalaxyS3上一切正常。BitmapoutputBitmap=Bitmap.createBitmap(inputBitmap);RenderScriptrs=RenderScript.create(ctx);ScriptIntrinsicBlurtheI

android - RenderScript 错误地操作内核的输出

我正在尝试使用Android的RenderScript在图像后面渲染一个半透明的圆圈,但是当从RenderScript内核返回一个值时,事情变得非常错误。这是我的内核:#pragmaversion(1)#pragmarsjava_package_name(be.abyx.aurora)//Wedon'tneedveryhighprecisionfloatingpoints#pragmars_fp_relaxed//CenterpositionofthecircleintcenterX=0;intcenterY=0;//Radiusofthecircleintradius=0;//Des

android - 使用 renderscript 进行处理,使用 mediacodec 进行编码

我正在尝试开发一个相机应用程序,在录制视频之前进行一些视频处理。我决定使用Rendrscript进行处理,因为它提供了许多我想使用的操作。我想使用MediaCodec进行编码。我找到了一些展示如何使用GLES进行处理的示例(包括Grafika),但我还没有找到展示如何使用RenderScript进行处理的示例。尝试用Renderscript替换GLES我有以下问题:我从编码器输入表面创建RenderScript输出Allocation。在Grafika示例中,EGLswapbuffer()用于将缓冲区发送到编码器。Allocation.ioSend()做同样的事情吗?在EGL中,set

android - Samsung Galaxy S9+ 渲染脚本错误

我正在使用Camera2API并使用Renderscript执行一些图像处理。除S9+外,在一系列设备(Nexus5/5x、Pixel、Pixel2、S8+、Note8)上一切正常。基本上我正在做的是创建一个Allocation来接收相机数据和另一个Allocation将使用相机数据,应用转换并将结果显示在Surface将充当相机预览。在S9+上出现黑屏(无预览)并且LogCat显示以下错误:我阅读了有关此类错误的其他帖子,它们不适用于我的情况,因为该代码在其他设备上按预期工作!我设法将错误追踪到native库加载问题:这只发生在S9上,其他三星设备可以正常工作。S8+在Android

android - 如何让 Android Render Script Group 工作?

我可以让两个独立的内部函数工作,但不能在一个ScriptGroup中一起工作。我发现关于如何使用ScriptGroup的文档非常稀少。这是我的代码:mRS=RenderScript.create(getActivity());mInAllocation=Allocation.createFromBitmap(mRS,mBitmapIn,Allocation.MipmapControl.MIPMAP_NONE,Allocation.USAGE_SCRIPT|Allocation.USAGE_GRAPHICS_TEXTURE|Allocation.USAGE_SHARED);mOutAll

android - 如何在 Nvidia Shield 上正确计时 Android RenderScript 代码

我已经在RenderScript中实现了一个小型CNN,并且想分析不同硬件上的性能。在我的Nexus7上,时间有意义,但在NVIDIAShield上却没有。CNN(LeNet)在队列中的9层中实现,计算按顺序执行。每层单独计时。这是一个例子:conv1pool1conv2pool2resh1ip1relu1ip2softmaxnexus711.1777.81313.3578.3678.0972.10.3261.5572.667shield13.2191.0241.5671.0810.98814.58813.32314.31840.347时间的分布对于nexus来说是正确的,conv1和

android - 如何在 Android 中与 OpenGL 共享 Renderscript 分配

我有一个Renderscript,它处理输出给分配的图像。我想在我的OpenGL程序中将此分配用作纹理,但我不知道如何从分配中获取纹理ID。另一方面,我知道我可以使用图形Renderscript,但由于它已被弃用,我想一定有其他方法可以实现相同的结果。 最佳答案 创建分配时指定USAGE_IO_OUTPUT。假设您在脚本中生成纹理数据,您还可以添加USAGE_SCRIPT。然后你可以调用Allocation.setSurface(theGLSurface)将分配链接到纹理。每次您想使用需要调用的脚本内容更新纹理。Allocation