Most Android devices with HDMI out only display the user interface at HD/1080p/1920x1080 even when configured in Android settings to display at a higher resolution such as 4K/2160p/3840x2160.
This is usually done for performance and compatibility reasons.
The following display components will not render above 1920x1080.
- Images
- Web pages
- Applications that use OpenGL
The standard Android player will play videos at the resolution configured in Android settings on most modern devices. Images and web pages will be limited to 1920x1080 and upscaled.
The SignageNode player uses OpenGL for compositing images, videos and web pages and so the final output is limited to 1920x1080.
Additional problems are caused by applications that query the window size. The window size is reported as 1920x1080 even when the display is set to 3840x2160. This will affect the automatic selection of videos when there are both 3840x2160 and 1920x1080 in an item in the stacks admin interface. (1920x1080 will be selected unless disabled)
There is a window manager command to change the resolution as outlined below. Unfortunately, many devices still render at 1920x1080 internally then perform an upscale to 3840x2160 resulting in no quality improvement.
Android TV boxes known to support a resolution higher than 1920x1080:
- Nvidia Shield
- Khadas Edge2
Change window manager resolution/size
- Access the Android shell (instructions below)
- Run the following commands in the Android shell:
wm size 3840x2160
wm density 480 - Verify that the Android desktop now displays at a higher resolution.
Connecting to the Android shell
- Enable developer tools:
- Open Settings.
- Click About.
- Click Build 10 times.
- Enable debugging:
- Open Settings.
- Click Developer options.
- Click USB debugging to enable and/or Network debugging to enable.
Connecting over USB
- Connect a USB cable to the device (port usually labelled OTG).
- Open a command prompt / terminal window.
- Navigate to the location where the Android platform tools are installed.
- Execute the following command:
adb shell
- Approve the debugging request that appears on the Android device.
Connecting over network
- Open a command prompt / terminal window.
- Navigate to the location where the Android platform tools are installed.
- Execute the following commands replacing the IP address with that of the device. (Can be found in System, About, Status).
adb connect 192.168.2.188:5555
adb shell - Approve the debugging request that appears on the Android device.
More useful Android shell commands
View information about what Android is displaying including rendering resolutions:
dumpsys SurfaceFlinger
View a live view of the logs:
logcat
Install DS Loader (exit android shell first):
Download ds-loader.apk to the local PC then issue the following command:
adb install ds-loader.apk
Uninstalling DS Loader:
adb uninstall net.targetr.stacks.central
Comments
0 comments
Please sign in to leave a comment.