Online PKM Converter & Compressor - PNG/JPG to PKM / ETC1 Free
A trusted online PKM converter for you to encode PNG and JPG image formats into ETC1 powered .pkm assets. Delivering blazing fast rendering perfect for Android / OpenGL ES.
Related Searches
Step 1: Select Image
Drag and drop an image here
or
- Supported formats: PNG, JPG, WebP
- Dimensions must be multiples of 4 (e.g., 512×512, 1024×256)
HDR input note
HDR, EXR, and UltraHDR JPEG files can be used as inputs. Most current output paths still tone map into the RGBA8 encode pipeline; use DDS BC6H, KTX2 RGBA16F, or KTX2 RGBA32F when you need to preserve HDR source data as much as possible.
Key Features
100% Browser-Based
All encoding happens in your browser. No server upload, complete privacy.
Android Native ETC Compression
Produces standard PKM containers tailored for Android native games and OpenGL ES 2.0/3.0 mobile rendering.
Fast Encoding
WebAssembly-powered compression delivers near-native performance.
Mobile Hardware Compatibility
Strict 4×4 block-aligned ETC hardware compression, guaranteeing crash-free VRAM sampling on Android phones and emulators.
Batch Ready
Process multiple images quickly with drag-and-drop support.
Free & Open
No registration, no limits, no hidden costs. Use it freely.
How to Use PKM Encoder
Upload Your Image
Drag and drop a PNG, JPG, or WebP image. Make sure dimensions are multiples of 4 (e.g., 512×512, 1024×512).
Choose Compression Format
Select ETC1 for maximum compatibility or ETC2 for better quality. ETC2 is backward compatible with ETC1.
Encode
The tool automatically encodes your image to PKM format using ETC compression. Progress is shown in real-time.
Download PKM File
Download the compressed PKM file and use it in your Android game or OpenGL ES application.
Frequently Asked Questions
PKM is Ericsson's purpose-built texture container for ETC1/ETC2 compression. In Android native development and OpenGL ES 2.0/3.0 workflows, PKM textures load directly into mobile GPU VRAM, slashing memory bandwidth by up to 75% and eliminating runtime CPU decompression hitches.
ETC1 compression works on 4×4 pixel blocks. Images with dimensions that aren't multiples of 4 cannot be properly compressed.
ETC2 offers better quality and is backward compatible with ETC1. ETC1 is more widely supported on older devices, while ETC2 is the modern standard.
ETC1 is universally supported across 100% of Android devices and Android emulators (RGB only). ETC2 is standard on OpenGL ES 3.0+ devices with full alpha support. PKM remains the baseline container for legacy mobile gaming pipelines.
ETC1 provides approximately 6:1 compression ratio for RGB textures. A 512×512 RGB image (768KB uncompressed) becomes ~128KB when compressed.
No! All encoding happens entirely in your browser using WebAssembly. Your images never leave your device.