Basis Universal .KTX2 Supercompressed GPU Texture Encoding/Transcoding Testbed v2.01

This simple demo uses the Basis Universal C++ transcoder (compiled to WebAssembly using Emscripten) to transcode a .ktx2 file to:
FORMAT

The viewer is implemented in WebGL and renders a single textured quad. It also supports encoding .PNG, .JPG, .EXR or .HDR files to LDR or HDR .KTX2 files. Thanks to Evan Parker for providing webgl-texture-utils and this test bed. Go back. Notes: Enable your browser debug console (F12 on Chrome/Firefox) to see debug output. The largest image resolution that can be compressed in the browser with this library is limited to either 12 megapixels or 4 megapixels (depending on format and WASM64/WASM32) to avoid running out of WASM memory.

Supported WebGL formats:

Test


Use Multithreading (if available)
Additional Worker Threads (Max 18):


.ktx2 file:

.png/.jpg/.exr/.hdr file:


Drag and drop a .KTX2 or image file here, or click to select a file.



KTX2 Texture Format to Encode:

Primary compression quality/effort options:
Use unified quality/effort options (overrides below low-level options):
2

80

Transcoder Options (Decode Flags):
ETC1S: No BC7 Chroma Artifact Filtering (faster transcoding):
XUASTC/ASTC LDR: Disable deblocking filtering (faster):
XUASTC/ASTC LDR: Stronger deblocking filtering:
XUASTC/ASTC LDR: Use deblocking on all block sizes (slower):
XUASTC LDR 4x4/6x6/8x6: No direct BC7 transcoding (slower/higher quality):
Prefer higher quality transcoding when supported (slower):

Display/Visualization Options:


Disabled
1

Low-level ETC1S LDR Options:
ETC1S Quality: 255
1
Low-level UASTC LDR 4x4 Options:
UASTC LDR RDO: 1.0
1

Low-level UASTC HDR 4x4 Options:
0

Low-level ASTC/UASTC HDR 6x6 Options:
0
RDO Quality (Lambda, 0-50k, try 0-5k, higher=smaller):
REC 2020 Colorspace:
LDR->HDR Upconversion Options:
Convert LDR images to linear light:
LDR to HDR Upconversion Nit Multiplier:

Low-level XUASTC/ASTC LDR 4x4-12x12 Options:
XUASTC LDR Syntax:
3
80
Bounded/windowed RDO lossy supercompression:
No RGB dual plane (lower quality, faster encoding/BC7 transcoding):
No 2-3 subset usage (lower quality, faster encoding/BC7 transcoding):

ASTC/XUASTC LDR Bounded/Windowed RDO Params:
Opaque:




Alpha:




Other Options:
Use sRGB/perceptual metrics:
Generate mipmap levels:
Y flip source image:

Debug Output (See Dev Console): Compute Stats (slower encoding):
Log Output: