Project

General

Profile

Graphics » History » Revision 12

Revision 11 (Fil Bergamo, 07/30/2019 08:40 PM) → Revision 12/46 (doak complex, 01/23/2020 07:03 PM)

h1. Graphics 

 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. 

 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. 

 

 h2. Enabling llvmpipe as software renderer 

 Make sure [[ADB]] is running as root and the system partition [[ADB#Modifying-the-system-partition|is mounted writable]]. 

 The following command switches the software renderer implementation: 
 <pre> 
 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"  
 </pre> 

 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. 

 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. 

 Apps where this happens include the gallery app and Orbot. 

 h2. Known issues with the Android software renderer 

 * Selecting the third option besides photo and video will crash the camera app. This is the panorama mode. 
 * Video playback in the browser does not work (issue #1533) 
 * Screenshots do not work (see [[Screenshots]] for a workaround) 
 * Selecting wallpapers from storage does not work 
 * Screen content is sometimes shortly visible before unlocking (issue #1275, happens with llvmpipe as well) 
 * Previews of the windows in the tasks switcher are missing 
 * Switching between apps, apps and the launcher or different views inside an app is sometimes slow and the device may seem unresponsive 
 * There are issues with using folders with the Trebuchet launcher (issue #1790, happens with llvmpipe as well) 

 h3. Popular apps from F-Droid that do not work 

 * all Firefox-based browsers like "IceCatMobile":https://f-droid.org/repository/browse/?fdfilter=icecat&fdid=org.gnu.icecat and Orfox 
 * "Document Viewer":https://f-droid.org/repository/browse/?fdfilter=document+viewer&fdid=org.sufficientlysecure.viewer 
 * "LibreOffice Viewer":https://f-droid.org/repository/browse/?fdfilter=libreoffice&fdid=org.documentfoundation.libreoffice 
 * "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) 

 h2. See also 

 * There is a page about [[GraphicsResearch]] that gather information to improve graphics support