Project

General

Profile

Graphics » History » Version 13

doak complex, 01/23/2020 08:03 PM
Restored and adapted: Gallery and Orbot are affected by 'SurfaceFlinger'.

1 1 Wolfgang Wiedmeyer
h1. Graphics
2
3 11 Fil Bergamo
By default, Replicant devices use the Android software renderer, which relies on the CPU for graphics rendering. Using the dedicated graphics processor (GPU) currently requires non-free software on all of the supported devices. As free-software replacements are not yet available, the GPU cannot be used with Replicant for the moment (see [[GraphicsResearch]]). The software rendering is the reason why Replicant devices appear slow at times and is responsible for a lot of crashes that can happen during usage.
4
5 2 Wolfgang Wiedmeyer
llvmpipe has more complete EGL support than the Android software renderer (see #705), so more apps work with it, like Firefox-based browsers or more recent webviews (see #1780). Unfortunately, llvmpipe is still too slow to be the default renderer, but it is possible to switch back and forth between llvmpipe and the Android software renderer.
6 1 Wolfgang Wiedmeyer
7 13 doak complex
h2. Enabling _llvmpipe_ as software renderer
8 1 Wolfgang Wiedmeyer
9
Make sure [[ADB]] is running as root and the system partition [[ADB#Modifying-the-system-partition|is mounted writable]].
10
11
The following command switches the software renderer implementation:
12
<pre>
13
adb shell "grep -q "ro.libagl=1" /system/build.prop && sed "s/ro.libagl=1/ro.libagl=0/" -i /system/build.prop || sed "s/ro.libagl=0/ro.libagl=1/" -i /system/build.prop" 
14
</pre>
15
16 13 doak complex
Then reboot the device. _llvmpipe_ should now be enabled. To switch back to the default Android software renderer, run the above command again and reboot the device.
17 6 Jeremy Rand
18 13 doak complex
There are also issues with certain apps when using _llvmpipe_, although crashes should be less frequent. Usually, the screen stays black if an app does not work with _llvmpipe_.
19
In case the screen compositor (_SurfaceFlinger_) is used with _llvmpipe_, this could have an effect to other apps. For instance with _Gallery_ and _Orbot_ it happens, that some GUI elements are visible, while the main screen is black. The GUI of _Simple File Manager_ works as long as no image is viewed in fullscreen. 
20 2 Wolfgang Wiedmeyer
21 3 Wolfgang Wiedmeyer
h2. Known issues with the Android software renderer
22 1 Wolfgang Wiedmeyer
23
* Selecting the third option besides photo and video will crash the camera app. This is the panorama mode.
24 2 Wolfgang Wiedmeyer
* Video playback in the browser does not work (issue #1533)
25
* Screenshots do not work (see [[Screenshots]] for a workaround)
26 1 Wolfgang Wiedmeyer
* Selecting wallpapers from storage does not work
27 7 Jeremy Rand
* Screen content is sometimes shortly visible before unlocking (issue #1275, happens with llvmpipe as well)
28 2 Wolfgang Wiedmeyer
* Previews of the windows in the tasks switcher are missing
29 4 Wolfgang Wiedmeyer
* Switching between apps, apps and the launcher or different views inside an app is sometimes slow and the device may seem unresponsive
30 2 Wolfgang Wiedmeyer
* There are issues with using folders with the Trebuchet launcher (issue #1790, happens with llvmpipe as well)
31 1 Wolfgang Wiedmeyer
32
h3. Popular apps from F-Droid that do not work
33 2 Wolfgang Wiedmeyer
34 5 Jeremy Rand
* all Firefox-based browsers like "IceCatMobile":https://f-droid.org/repository/browse/?fdfilter=icecat&fdid=org.gnu.icecat and Orfox
35 2 Wolfgang Wiedmeyer
* "Document Viewer":https://f-droid.org/repository/browse/?fdfilter=document+viewer&fdid=org.sufficientlysecure.viewer
36
* "LibreOffice Viewer":https://f-droid.org/repository/browse/?fdfilter=libreoffice&fdid=org.documentfoundation.libreoffice
37
* "RedReader":https://f-droid.org/repository/browse/?fdfilter=redreader&fdid=org.quantumbadger.redreader cannot display images ("upstream bug":https://github.com/QuantumBadger/RedReader/issues/279)
38 8 Denis 'GNUtoo' Carikli
39
h2. See also
40 9 Denis 'GNUtoo' Carikli
41 8 Denis 'GNUtoo' Carikli
* There is a page about [[GraphicsResearch]] that gather information to improve graphics support