问题标签 [android-gpuimageview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1150 浏览

android - 对图像应用多个过滤器

我正在尝试将 3 个滤镜应用于图像。

一个rgbFilter,它的值是常数,一个亮度过滤器和一个饱和度过滤器

0 投票
2 回答
948 浏览

android - 在ListView Android中滚动后GPUImageView呈现空白

我正在使用android-gpuimage库中的GPUImageView组件在我的.ListView

图像第一次完美地加载了过滤器,ListView但是当我向下滚动时ListView,所有滚动的单元格都显示为空白。

这是getView(...)我的自定义方法的代码BaseAdapter

请告诉我我在这里做错了什么?
非常感谢任何帮助。

0 投票
2 回答
2642 浏览

android - 保存在 sdcard 中的图像在 android 中使用 GPUImageView 仅显示黑屏

我正在开发一个项目,用于对将从图库中选择或通过相机捕获的图像应用一些效果。

我使用GPUImageView库对图像应用不同的效果,还实现了搜索栏来增加和减少效果。一切正常。

问题是现在我想将该效果应用图像保存到 sdcard 中。我已经为它编写了代码并且它工作成功,但是保存的图像仍然是黑色的。每当我从 sdcard 检查图像时,除了黑屏外,它不会显示修改后的图像。

我不知道为什么它显示黑色图像。

这是我将GPUImageViewas drawingcachedenabled 设置为 true 并将其保存为图像的代码。

请帮我解决问题。

0 投票
1 回答
1101 浏览

opengl-es - glUniform1i(int, Bool) 与 glUniform1i(int, int)

我正在尝试将一些 OpenGLES 代码从 iOS 移植到 Android。

在 iOS 我有这个代码:

其中 glUniform1i() 方法将整数作为统一位置和布尔值。

在 Android 中,我能得到的最接近的是:

其中 glUniform1i() 方法将 Integer 作为统一位置和另一个 Integer,我认为作为纹理 ID ...

我翻遍了 Kronos 文档,但似乎找不到合适的翻译...

想法?

0 投票
2 回答
4412 浏览

android - 在 Android 上录制视频时添加叠加层

我想在我的 Android 设备中通过相机录制视频。我需要在录制的电影上添加叠加图像。在 iOS 中,我会使用GPUImage。在 Android 中,我找到了Android GPUImage。我尝试使用它,但我没有找到任何方法在视频录制时添加任何过滤器。在提供的示例中,我可以添加仅用于拍照的过滤器。有什么方法可以用Android GPUImage的过滤器录制视频吗?有没有其他方法可以在实时录制视频上添加图像叠加?如果没有,有没有办法在后期处理中添加覆盖在录制视频上的图像?

0 投票
1 回答
793 浏览

android - 调整 Grafika RecordFBOActivity 以使用 Android GPUImage

我有一个应用程序使用GPUImage 的 Android 端口作为 OpenGL 渲染器和几个过滤器的管理器。

它目前没有视频实现,因此我正在尝试调整Google grafika 存储库中的 RecordFBOActivity 以与 GPUImage 架构一起使用。

基础 GPUImage 类管理 GLContext 和 GLSurfaceView,GPUImageRenderer 类实现 Renderer 类。

这是我试图从 grafika 的 RecordFBOActivity 改编 RenderThread 的类。有几个问题。

首先,在preparegl()方法中,我传递的是SurfaceTexture而不是Surface,因为GPUImage根本不使用SurfaceHolder(我想我可以实现它,但我尽量不要过多地更改基本代码,因为我想将我的实施推迟到上述回购)。我知道WindowSurface.java具有从SurfaceTexture和 Surface 构造WindowSurface的重载方法,但如果我这样做,mSurface iVar 始终为空,因为我从来没有要传递给它的表面,这会导致 NPE在makeCurrent()记录方法中。

其次GPUImage将自己附加到GLSurfaceView,而不是像 grafika 示例使用的SurfaceView,所以我有点不确定是否有任何可能导致冲突的低级不一致...

第三,我认为这是主要问题,至少目前,我似乎无法将 GPUImage 的相机预览与grafikaWindowSurface相协调。如果我注释掉prepareGl()方法,则GPUImage的setUpSurfaceTexture()从由glGenTextures()创建的SurfaceTexture设置相机的预览纹理,并且预览工作正常......以及附加到过滤器渲染链. 但是,如果我尝试调用prepareGL()方法,并将完全相同的SurfaceTexture传递给mWindowSurface的构造函数,相机服务停止,我收到EGL_BAD_SURFACE错误。

很长的问题,有一些移动的部分,我知道......将尝试编辑/更新,因为我可以澄清自己的问题和方法。但是如果有人有任何想法/审讯,我会很高兴......特别是@fadden:D

0 投票
0 回答
456 浏览

android - Android GPUImageView 倒置

我正在使用适用于 Android 的GPUImage 库进行图像处理。我有一个主 GPUImageView 和一个 ListView(和 RecyclerView),它显示与主 GPUImageView 相同的图像,但具有所有不同的过滤器。ListView/RecyclerView 中的图像都翻转了 180 度(倒置),我不知道为什么。我尝试在 XML 中的 GPUImageView 上设置 XML 旋转 (android:rotation="180"),但这会导致 GPUImageView 为空白。这是我的 XML 格式的 GPUImageView:

0 投票
1 回答
1777 浏览

android - Android. Couldn't load gpuimage-library

I just downloaded GPUImageLibrary 1.2.3 snapshot and import the library and the sample project. In the sample app, when i pick image from gallery, everything works fine. But everytime i try to pick image from camera, the app crashes.

Here is the stacktrace

01-20 17:11:25.226: E/AndroidRuntime(15839): FATAL EXCEPTION: GLThread 3277 01-20 17:11:25.226: E/AndroidRuntime(15839): Process: jp.co.cyberagent.android.gpuimage.sample, PID: 15839 01-20 17:11:25.226: E/AndroidRuntime(15839): java.lang.UnsatisfiedLinkError: Couldn't load gpuimage-library from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/jp.co.cyberagent.android.gpuimage.sample-1.apk"],nativeLibraryDirectories=[/data/app-lib/jp.co.cyberagent.android.gpuimage.sample-1, /vendor/lib, /system/lib, /system/lib/arm]]]: findLibrary returned null 01-20 17:11:25.226: E/AndroidRuntime(15839): at java.lang.Runtime.loadLibrary(Runtime.java:358) 01-20 17:11:25.226: E/AndroidRuntime(15839): at java.lang.System.loadLibrary(System.java:526) 01-20 17:11:25.226: E/AndroidRuntime(15839): at jp.co.cyberagent.android.gpuimage.GPUImageNativeLibrary.(GPUImageNativeLibrary.java:21) 01-20 17:11:25.226: E/AndroidRuntime(15839): at jp.co.cyberagent.android.gpuimage.GPUImageRenderer$1.run(GPUImageRenderer.java:141) 01-20 17:11:25.226: E/AndroidRuntime(15839): at jp.co.cyberagent.android.gpuimage.GPUImageRenderer.runAll(GPUImageRenderer.java:126) 01-20 17:11:25.226: E/AndroidRuntime(15839): at jp.co.cyberagent.android.gpuimage.GPUImageRenderer.onDrawFrame(GPUImageRenderer.java:115) 01-20 17:11:25.226: E/AndroidRuntime(15839): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1533) 01-20 17:11:25.226: E/AndroidRuntime(15839): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1247)

I don't know what to do about this error. I think that this error is not code-related. Please give me some direction.

Sorry for my terrible english.

0 投票
1 回答
427 浏览

java - 如何在同一个gpuimageview上设置多个效果

我正在尝试在 gpuimageview 上贴一个贴纸并首先通过 gpuimagefilter 对其应用效果,当我尝试对 gpuimage 的先前效果应用新效果时,它会忽略以前的效果并应用当前效果,但我想要这个效果应用于之前的效果。

第二个是当我尝试通过 capture() 从 gpuimageview 捕获位图时;方法并将其保存到 sd 卡它只显示 gpuimageview 但我也想捕获 gpuimageview 上的贴纸。贴纸是图像视图类型的对象,请帮帮我。对不起我的英语不好

0 投票
1 回答
814 浏览

android - GPUImageToneCurveFilter 在多个摄像头捕获后返回黑色图像

当相机处于实时状态时,我让用户通过屏幕内的水平列表选择任何过滤器。

这是我的初始设置,hsv_camera_filters 是一个org.lucasr.twowayview.TwoWayView可以显示选项的实例。

这就是我在用户选择过滤器时调用曲线文件的方式

用于此的 xml:

我像这样启动我的相机捕捉:


因此,使用滤镜以 1:10 或 1:12 的图像捕获比例出现问题,之后仅以 1:4、1:3 或 1:2 的图像捕获比例出现问题。它在某种程度上就像一个模式,但很明显它并不那么准确。我只用一个曲线文件尝试了这个实验。

我怎样才能让它工作?这是对图书馆的误判吗?或者它只是一个变量操作错误?或者也许是设置?