Compressonator 4.1 – SNORM support for BC4/BC5, MIP map filter support, and more

Originally posted:
Navin Patel's avatar
Navin Patel

Compressonator

Version 4.1 of Compressonator was released in November 2020. Here we discuss the new features you will find in this version.

SNORM Support for BC4 and BC5

Signed channel component processing is available in the Compressonator SDK, Command-Line, and GUI applications.

This supports processing textures from 8-bit unsigned or signed channels to BC4 and BC5 formats.

MIP Map Filter Support Using either GPU or CPU

Use the GUI application’s Generate MIP Map option on a variety of image formats to produce MIP maps filtered for optimal GPU or CPU use.

Options for using a Compressonator Box filter or DirectX® based filters are provided.

Gamma correction can be applied to the image pixels after MIP map generation by changing the default 1.0 value higher (darken the image) or lower (brighten the image).

GPU-based compression and MIP map generation

Analyze the effects of GPU extensions to process images, which uses the GPU to generate BCn compressed images and MIP maps without the need for user shader code.

Just enable the GUI Application Settings options to set the encoding with GPU, and optionally set generating GPU-based MIP maps as shown:

Once the images are processed, users can view the quality of the resulting images with the application’s image view PSNR feature.

PSNR Display Feature for GUI Image Views

All Compressed image views in the GUI application display a PSNR value for each MIP level and cube face.

Users can log and compare the quality of the compressed images and the effects that various filter options have on MIP levels after processing.

KTX2 File Support

A KTX version 2 plugin has been added to the SDK, that supports saving and loading multichannel images, BCn, ETCn, and ASTC codecs.

Additional support for universal textures and streaming can be added upon request.

For specific KTX2 feature enablement, please file a request via Compressonator GitHub issues

CSV File Update to Support Automation

An error code field has been added to log the state of a processed image when using the command-line application option -logcsv .

The error code will be 0 for processed images, otherwise a value is set to indicate any errors encountered while the image was processed.

The screenshot above shows ruby_ATI2N_DXT5.ktx2 is not processed, while ruby_BC1.ktx2 was processed without any errors.

Navin Patel's avatar

Navin Patel

Navin Patel is a Senior Member of Technical Staff at AMD, with over 15 years of experience in the design and development of graphics and video software applications/tools and drivers. Currently, he is the chief technical lead of the GPU Open Compressonator tool. Before AMD his professional experience also includes design and development of LSI ASIC, full system integration of Video on Demand services, and industrial automated systems.

Related news and technical articles

Related videos