问题标签 [surfaceflinger]
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.
android - Android x86 平台上surfaceflinger 进程的内存增长
我正在使用虚拟显示器从 Android 模拟器中截取屏幕截图,我注意到surfaceflinger的内存无限增长(这可以在顶级程序中看到)并且模拟器在一段时间后停止工作。在真正的 Android 设备上一切正常:内存增加 5Mb,然后被清除。但是在 GenyMotion 和 LDPlayer 等模拟器上,surfaceflinger 工作异常。我尝试了两种不同的创建 VirtualDisplay 的方法:通过 1)ImageReader 或 2)GLES:
- 图像阅读器
- GLES
第二种解决方案有grafica类。
在 LDPlayer 的 logcat 中,我可以在两种情况下在屏幕截图程序启动后看到这样的消息:EGL adreno: eglMakeCurrent: 0xc77d6480: ver 3 1 (tinfo 0xc77cb700)
在使用 1Gb RAM 大约一个小时的应用程序工作后,就会出现这样的 Low Memory 日志:
我可以通过文件保存截取屏幕截图,但效果很糟糕。您能告诉我如何在不消耗内存的情况下制作屏幕截图吗?我之前的问题在这里被问到- 我不知道问题的原因。我也在谷歌安卓官方社区问过这个问题,但没有得到答案。
PS 我发现 Genymotion 中的 Android 10 运行良好,但我无法将任何用户友好的模拟器升级到这个版本
android - Surfaceflinger 和 HWC 上的辅助 DSI 显示
我连接了一个自定义板,它有两个连接到两个独立显示器的 DSI 端口。一个被宣布为主要的,另一个被宣布为次要的。然而,Surfaceflinger 仅在主显示器和任何插入的显示器(通过显示端口)中显示 android 桌面。有没有办法将第一个 DSI 的映像克隆到第二个 DSI 上?然后,在哪里进行操作以安排例如并排面板?
skia - 类似于skia中“丢弃”的API
在opengl(android R surfaceflinger)中,我可以使用“discard”来放弃特定的像素来达到透明的效果。Skia中有没有类似的api?谢谢!
android - 为什么 SurfaceFlinger 在其主函数中注册了 GraphicsAllocatorService 和 DisplayService?
这两个服务都有自己的进程,并且已经在自己的进程中注册。
android - 如何在surfaceflinger中写入文件?
我想将一些数据保存到文件中。
我将代码添加到SurfaceFlinger
. 并更改uid
为root。并添加sdcard_rw
组。
但它不能工作。
这是我的代码:
运行结果:
surfaceflinger的状态:
surfaceflinger.rc:
那么如何写文件呢?
graphics - android 12 移植:Surfaceflinger 死锁
我正在尝试在我的虚拟设置中移植 android 12。运行一段时间后,它进入了一些死锁。在进一步调试中,我发现“surfaceflinger”进程实际上被卡住了。使用 ps -e 命令我发现它卡在“futex_wait_queue_me”上。
请在下面找到详细信息:Android AOSP:android-12.0.0_r2
OpenGL ES:谷歌 swiftshader
内核版本:android12-5.10
Gralloc 分配:使用 ashmem
对此有任何想法吗?
android - Android 图形性能不佳
我在 RCAR-H3 MCU 上运行 Android 9.0。有时 GUI(所有应用程序)非常慢,我在 logcat 中看到如下日志:
问题是否来自图形驱动程序?