2017-02-21 35 views

回答

1

https://github.com/ARM-software/astc-encoder是参考压缩器(由ARM和AMD创建)。在iOS设备上运行源代码可能并不困难。它可能会非常慢,但它确实提供了各种速度选项,所以也许你会在质量和速度之间找到适当的平衡点。

+0

当用户不在应用程序中时,我正在考虑放入长时间运行的后台任务。随着时间的推移,它可以逐渐将未压缩的纹理交换到ASTC。 – Geri

+0

好吧,我似乎不能直接使用它:“此机密和专有软件只能在ARM Limited(C)版权所有2011-2012 ARM Limited授权协议中授权使用。”ALL RIGHTS RESERVED。“ – Geri

+0

我认为你的授权是在这里:https://github.com/ARM-software/astc-encoder/blob/master/license.txt。这不是一个标准的许可证,它看起来像我一眼就能看到,类似于zlib/mit,但IANAL所以请仔细阅读。 – Columbo

2

在iOS 10中,Apple为系统添加了ASTC编码。您可以通过/usr/include/AppleTextureEncoder.h,/usr/lib/libate.dylib或(简单)使用通过CG/ImageIO.framework提供的常用图像编码实用程序对ASTC进行编码来访问它。请参阅CGImageDestination和关联的对象。也可以通过Xcode中的图像资产目录压缩来实现。

系统ASTC编码器比ARM参考编码器快得多。支持块大小4x4和8x8。性能应该类似于JPEG或PNG编码。