1# astc-encoder 2 3ASTC(Adaptive Scalable Texture Compression)是由ARM和AMD联合开发的一种先进的纹理压缩技术。它已经被采纳为OpenGL和OpenGL ES API的官方Khronos扩展,并作为Vulkan API的一个标准可选功能。 4ASTC Encoder(Adaptive Scalable Texture Compression Encoder)是ARM推出的一款使用ASTC纹理压缩标准对图像进行压缩和解压的参考代码。 5 6OpenHarmony上引入ASTC主要用于图库缩略图和其他应用预置图的压缩。ASTC码流可以直接由GPU解码显示,降低传输数据量和CPU解码耗时。 7 8## 目录结构 9 10``` 11Docs #文档 12Source #源代码 13Test #测试代码 14Utils #特定场景配置测试代码 15jenkins #构建脚本 16CMakeLists.txt #编译描述文件 17LICENSE.txt #版权声明 18README.md #软件说明 19``` 20 21 22## OpenHarmony对于astc-encoder的适配 23 24astc-encoder引入openharmony的thirdparty目录下, 25使用OpenHarmony中依赖部件的方式进行编译。 261. 主干代码下载 27 ``` 28 repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify 29 repo sync -c 30 repo forall -c 'git lfs pull' 31 ``` 322. 在使用的模块进行依赖 33 ``` 34 deps = [ "//third_party/astc-encoder:astc_encoder_shared" ] 35 ``` 363. 预处理 37 ``` 38 ./build/prebuilts_download.sh 39 ``` 404. 编译 41 ``` 42 ./build.sh --product-name rk3568 --ccache 43 ``` 44编译生成物对应路径:`out/rk3568/thirdparty/astc-encoder/libastc_encoder_shared.so`。 45 46## 许可证<a name="section126611612164217"></a> 47 48本项目遵从[LICENCE](https://gitee.com/openharmony-sig/third_party_astc-encoder/blob/4e7db2eda5ac3a43496451ce26a347559715051b/LICENSE)中所描述的许可证。 49 50## 相关仓 51[astc-encoder](https://gitee.com/openharmony-sig/third_party_astc-encoder) 52