unplugged-vendor/device/generic/vulkan-cereal/third-party/astc-codec
2025-10-06 13:59:42 +00:00
..
include/astc-codec Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
src Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
third_party Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
tools Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
Android.bp Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
BUILD.bazel Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
cmake-format.json Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
CMakeLists.txt Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
CONTRIBUTING.md Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
GoogleTest-CMakeLists.txt.in Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
LICENSE Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
README.md Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00
WORKSPACE Initial commit: AOSP 12 vendor with modifications for Unplugged OS 2025-10-06 13:59:42 +00:00

astc-codec

astc-codec is a software ASTC decoder implementation, which supports the ASTC LDR profile.

Example usage:

#include <astc-codec/astc-codec.h>

// ...

std::vector<uint8_t> astc = LoadMyASTCData();
const size_t width = 640;
const size_t height = 480;

std::vector<uint8_t> result;
result.resize(width * height * 4);

bool result = astc_codec::ASTCDecompressToRGBA(
    astc.data(), astc.size(), width, height, astc_codec::FootprintType::k4x4,
    result.data(), result.size(), /* stride */ width * 4);

Building

With bazel

Install Bazel, and then run:

bazel build :astc_codec -c opt

astc-codec has been tested on Mac and Linux.

Run Tests

bazel test //...

With CMake

Install CMake, and the run:

mkdir build && cd build && cmake .. && make

Or open the project in your favorite IDE and import CMakeLists.txt.

Run Tests

In the build directory, execute:

ctest

Contributing

See CONTRIBUTING.md for important contributing requirements.

License

astc-codec project is licensed under the Apache License Version 2.0. You can find a copy of it in LICENSE.

This is not an officially supported Google product.