Who is this for?
Software developers of Android applications and mobile games who are interested in learning how to enable Arm Fixed Rate Compression (AFRC) to improve performance.
What will you learn?
Upon completion of this Learning Path, you will be able to:
- Query for fixed-rate compression support.
- Specify what compression to use.
- Verify that compression is applied.
Prerequisites
Before starting, you will need the following:
- An appropriate Android device (e.g., Google Pixel 8) supporting the required Vulkan extensions.
- Knowledge of the Vulkan API.
- A Vulkan application that creates and uses images. This Learning Path shows how to use an API Sample in the Khronos Vulkan Samples repository as an example.
Summary
This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
pNext structure. Then, you’ll inspect the compression state to validate the setting for your images, including swapchain-specific extension requirements.Frequently asked questions
These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
vkEnumerateDeviceExtensionProperties and look for VK_EXT_image_compression_control. If present, add it to VkDeviceCreateInfo.ppEnabledExtensionNames before vkCreateDevice.VK_EXT_image_compression_control_swapchain. Enable this extension in addition to VK_EXT_image_compression_control if you want fixed-rate compression on swapchain images.VkImageCreateInfo with your format, image type, tiling, and usage, then use these properties to query support before creating the image. If supported, proceed to request fixed-rate compression.VkImageCompressionControlEXT with VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT in the pNext chain of VkImageCreateInfo when creating the image. Use VK_EXT_image_compression_control to inspect the compression state and confirm that fixed-rate compression is active.