astc-encoder

astc-encoder

ASTC纹理压缩和解压缩命令行工具

astc-encoder是一款基于ASTC纹理压缩标准的命令行工具,支持低动态范围和高动态范围图像的压缩与解压缩。工具提供多种压缩质量预设,允许在压缩时间和质量间权衡。支持ASTC规范的全部配置文件和块大小,提供0.89至8位/像素的压缩比选择,适用于各种图像压缩需求。

ASTC纹理压缩图像编码OpenGLVulkanGithub开源项目

以下为英文原文的中文翻译:

关于

Arm® Adaptive Scalable Texture Compression (ASTC) Encoder, astcenc是一个命令行工具,用于使用ASTC纹理压缩标准压缩和解压缩图像。

ASTC 格式

ASTC压缩数据格式由Arm®和AMD开发,已被采纳为OpenGL®、OpenGL ES和Vulkan®图形API的官方扩展。它在图像质量和位率以及内容创作者可用的格式和位率灵活性方面取得了重大进展。这使更多资产可以使用压缩,通常位率比其他格式更低,从而减少了存储内存和带宽需求。

请阅读[ASTC格式概述][1]以快速了解该格式,或阅读完整的[Khronos数据格式规范][2]以获取所有详细信息。

许可证

该项目采用Apache 2.0许可证。下载此存储库中的任何组件,即表示您认可LICENSE.txt文件中规定的条款。

编码器功能支持

编码器支持压缩低动态范围(BMP、JPEG、PNG、TGA)和高动态范围(EXR、HDR)图像,以及包装在DDS和KTX容器格式中的部分图像数据,输出为ASTC或KTX格式图像。

解码器支持解压缩ASTC或KTX格式输入图像,输出为低动态范围(BMP、PNG、TGA)、高动态范围(EXR、HDR)或DDS和KTX包装图像。

编码器允许通过"exhaustive"、"verythorough"、"thorough"、"medium"、"fast"和"fastest"编码质量预设来控制压缩时间/质量权衡。

编码器通过报告压缩时间和输入图像与压缩输出之间的峰值信噪比(PSNR)来允许压缩时间和质量分析。

ASTC格式支持

astcenc压缩器支持生成ASTC规范允许的所有三个个人资料的图像:

  • 2D低动态范围(LDR profile)
  • 2D LDR和高动态范围(HDR profile)
  • 2D和3D,LDR和HDR(Full profile)

它还支持所有ASTC块大小和压缩模式,允许内容创作者使用从0.89比特/像素到8比特/像素的全范围质量-比特率选项。

预编译二进制文件

ASTCENC稳定版本的发布构建二进制文件位于[GitHub Releases page][3]。

提供适用于Windows、macOS和Linux的64位构建。

Windows和Linux

对于Windows和Linux,ASTCENC的构建提供了多个二进制文件,每个都针对特定的SIMD指令集进行了优化。

对于x86-64,我们按性能递增的顺序提供:

  • astcenc-sse2 - 使用SSE2
  • astcenc-sse4.1 - 使用SSE4.1和POPCNT
  • astcenc-avx2 - 使用AVX2、SSE4.2、POPCNT和F16C

x86-64 SSE2构建将在所有x86-64机器上运行,但它是最慢的。其他两个需要扩展的CPU指令集支持,这并非普遍可用,但每个步骤都会获得约15%的性能提升。

对于Arm,如果有可用的二进制文件,我们提供:

  • astcenc-neon - 使用NEON

macOS

对于macOS设备,我们提供一个单一的通用二进制文件astcenc,允许操作系统自动使用当前主机机器的正确二进制变体。支持三个架构slice:

  • x86_64 - 使用上述定义的astcenc-sse4.1构建。
  • x86_64h - 使用上述定义的astcenc-avx2构建。
  • arm64 - 使用上述定义的astcenc-neon构建。

存储库分支

main分支是压缩器的主动开发分支。它旨在成为最新主要发布系列的稳定分支,但由于它用于持续开发,因此预计会有一些不稳定性。我们建议使用最新的稳定发布标签进行生产开发。

3.x分支是3.x发布系列的稳定分支。它不再处于活跃开发状态,但它是一个受支持的分支,会继续获得反向移植的错误修复。

1.x2.x分支是较旧版本的稳定分支。它们不再处于活跃开发状态或获得错误修复。

您可能会发现的任何其他分支都是新功能或优化的开发分支,因此可能很有趣,但应被视为临时和不稳定的。

开始

打开终端,切换到适用于您系统的适当目录,然后运行ASTCENC编码器程序,如下所示:

在Linux或macOS上:

./astcenc

在Windows上:

astcenc

调用astcenc -help会给出一个详细的帮助信息,包括使用说明和所有可用命令行选项的详细信息。下面总结了主要的编码器选项。

压缩图像

使用 -cl \ -cs \ -ch \ -cH模式压缩图像。例如:

astcenc -cl example.png example.astc 6x6 -medium

这使用LDR颜色配置文件和6x6块尺寸(3.56比特/像素)压缩example.png-medium质量预设提供了合理的图像质量和相对较快的压缩速度,因此是压缩的良好起点。输出存储为线性颜色空间压缩图像example.astc

可用的模式有:

  • -cl : 使用线性 LDR 色彩配置文件。
  • -cs : 使用 sRGB LDR 色彩配置文件。
  • -ch : 使用针对 HDR RGB 和 LDR A 调整的 HDR 色彩配置文件。
  • -cH : 使用针对 HDR RGBA 调整的 HDR 色彩配置文件。

如果您打算将生成的图像与解码模式扩展一起使用,以将解压缩精度限制为 UNORM8,建议您也指定 -decode_unorm8 标志。这将确保压缩器在选择编码时使用正确的舍入规则。

解压缩图像

使用 -dl-ds-dh-dH 模式解压缩图像。例如:

astcenc -dh example.astc example.tga

这将使用完全 HDR 功能配置文件解压缩 example.astc,并将解压缩的输出存储到 example.tga

可用模式与用于压缩的选项相同,但使用 d 前缀。请注意,对于解压缩,两种 HDR 模式之间没有区别,它们都是为了保持操作的对称性而提供的。

测量图像质量

使用 -tl-ts-th-tH 模式评估压缩质量。例如:

astcenc -tl example.png example.tga 5x5 -thorough

这等同于使用 LDR 色彩配置文件和 5x5 块大小对图像进行压缩,使用 -thorough 质量预设,然后立即解压缩图像并保存结果。这可用于对压缩图像质量进行可视化检查。此外,此模式还会将一些图像质量指标打印到控制台。

可用模式与用于压缩的选项相同,但使用 t 前缀。

实验

高效的实时图形需要尽量减小压缩纹理的大小,因为这可以减少内存占用、减少内存带宽、节省能源,并可提高纹理缓存的效率。然而,像任何有损压缩格式一样,总会存在压缩图像质量无法接受的情况,因为无法用足够的位数来表示所需的输出精度。我们建议您通过实验块占用空间来找到尺寸和质量之间的最佳平衡,因为可微调的压缩比是 ASTC 格式的主要优势之一。

可以通过 -fastest-fast-medium-thorough-exhaustive 来控制压缩速度。一般来说,编码器花费的时间越多,结果就越好,但这种改进幅度会越来越小。

还有许多其他命令行选项可用于调整编码器参数,以微调压缩算法。有关更多详细信息,请参见命令行帮助消息。

编辑推荐精选

音述AI

音述AI

全球首个AI音乐社区

音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。

QoderWork

QoderWork

阿里Qoder团队推出的桌面端AI智能体

QoderWork 是阿里推出的本地优先桌面 AI 智能体,适配 macOS14+/Windows10+,以自然语言交互实现文件管理、数据分析、AI 视觉生成、浏览器自动化等办公任务,自主拆解执行复杂工作流,数据本地运行零上传,技能市场可无限扩展,是高效的 Agentic 生产力办公助手。

lynote.ai

lynote.ai

一站式搞定所有学习需求

不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。

AniShort

AniShort

为AI短剧协作而生

专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。

seedancetwo2.0

seedancetwo2.0

能听懂你表达的视频模型

Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。

nano-banana纳米香蕉中文站

nano-banana纳米香蕉中文站

国内直接访问,限时3折

输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成AI工具AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机AI图像热门
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

下拉加载更多