On Android, it is usually possible to take a screenshot by pressing the Volume Down and Power buttons. A shortcut can also be added to the menu that pops up when long-pressing the Power button. These options only work on Replicant when llvmpipe is enabled as renderer. Furthermore, there doesn't seem to exist an app in F-Droid that makes it possible to take screenshots on Replicant when llvmpipe is not enabled.
Regardless of which graphics renderer is enabled, it is possible to take screenshots when the device is connected to a PC with a USB cable. The following steps explain the procedure.
Make sure ADB is running as root.
Download this script: screencap.sh
You need to have ffmpeg installed. If ffmpeg is not available on your GNU/Linux system but avconv is (e.g. as part of libav-tools), you will have to change the line
at the beginning of the script.
Taking a screenshot¶
Run the script to take a screenshot:
./screencap.sh -f OUTPUT.PNG
OUTPUT:PNG is the filename of the screenshot. The screenshot will be saved with this filename in the directory you are running the script in. The script only supports the PNG format for screenshots.
The display size in pixels is autodetected. If you want the script to take less time for a screenshot, you can add the screen size as another option, e.g.:
./screencap.sh -s 720x1280 -f OUTPUT.PNG
In recovery mode¶
It is possible to take screenshots in recovery mode with the script by running:
./screencap.sh -r -s SCREENSIZE -f OUTPUT.PNG
As screen size detection does not work in recovery mode, the screen size needs to be specified.