Skip to content

Commit 3e75b6a

Browse files
committed
git subrepo pull (merge) lib/astc-encoder
subrepo: subdir: "lib/astc-encoder" merged: "d38c8c85" upstream: origin: "https://github.com/ARM-software/astc-encoder.git" branch: "main" commit: "2f9362c1" git-subrepo: version: "0.4.3" origin: "https://github.com/MarkCallow/git-subrepo.git" commit: "c1f1132"
1 parent 360d10b commit 3e75b6a

32 files changed

Lines changed: 3436 additions & 3022 deletions

lib/astc-encoder/.gitrepo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
[subrepo]
77
remote = https://github.com/ARM-software/astc-encoder.git
88
branch = main
9-
commit = 36070fff1c2435f6d9f547bab3456aee06bce7da
9+
commit = 2f9362c16e71cb6da1ae48bc23ca7e9243ba8f99
1010
parent = 90c01d4fe24470b1065d99cecff49e9514e5fad3
1111
method = merge
1212
cmdver = 0.4.3
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ releases. Please update and rebuild your client-side code using the updated
3232
library users targeting older 32-bit Android and iOS devices.
3333
* **Feature:** A compressor mode for encoding HDR textures that have been
3434
encoded into LDR RGBM wrapper format is now supported. Note that this
35-
encoding has some strong recomendations for how the RGBM encoding is
35+
encoding has some strong recommendations for how the RGBM encoding is
3636
implemented to avoid block artifacts in the compressed image.
3737
* **Core API:**
3838
* **API Change:** The core API has been changed to be a pure C API, making it
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# 3.x series change log
2+
3+
This page summarizes the major functional and performance changes in each
4+
release of the 3.x series.
5+
6+
All performance data on this page is measured on an Intel Core i5-9600K
7+
clocked at 4.2 GHz, running astcenc using AVX2 and 6 threads.
8+
9+
<!-- ---------------------------------------------------------------------- -->
10+
## 3.0
11+
12+
**Status:** ETA, August 2021
13+
14+
The 3.0 alpha release is a preview release for the 3.x series. This series is
15+
aiming to provide a major update to the codec with more experimental changes
16+
than we could make with the 2.x series.
17+
18+
Reminder for users of the library interface - the API is not designed to be
19+
binary compatible across versions, and this release is not compatible with
20+
earlier releases. Please update and rebuild your client-side code using the
21+
updated `astcenc.h` header.
22+
23+
* **General:**
24+
* **Feature:** The code has been significantly cleaned up, with improved
25+
API documentation, function and variable naming conventions, and comments.
26+
* **Core API:**
27+
* **Feature:** New heuristics have been added for controlling when to search
28+
beyond 2 partitions and 1 plane, and when to search beyond 3 partitions and
29+
1 plane. The previous `tune_partition_early_out_limit` config option has
30+
been removed, and replaced with two new options
31+
`tune_2_partition_early_out_limit_factor` and
32+
`tune_3_partition_early_out_limit_factor`. See command line help for more
33+
detailed documentation.
34+
* **Feature:** New heuristics have been added for controlling when to use
35+
2 planes. The previous `tune_two_plane_early_out_limit` has been renamed to
36+
`tune_2_plane_early_out_limit_correlation` and a new heuristic
37+
`tune_2_plane_early_out_limit_factor` has been added. See command line help
38+
for more detailed documentation.
39+
* **API Change:** The core APIs for `astcenc_compress_image()` and for
40+
`astcenc_decompress_image()` now accept swizzle structures by `const`
41+
pointer, instead of pass-by-value.
42+
* **API Change:** Calling the `astcenc_compress_reset()` and the
43+
`astcenc_decompress_reset()` functions between images is no longer required
44+
if the context was created for use by a single thread.
45+
46+
### Performance:
47+
48+
The current performance and image quality for the 3.0 development build vs the
49+
stable 2.5 release is shown below.
50+
51+
* Color = block size (see legend).
52+
* Letter = image format (N = normal map, G = greyscale, L = LDR, H = HDR).
53+
54+
**Relative performance vs 2.5 release:**
55+
56+
![Relative scores 3.0-develop vs 2.5](./ChangeLogImg/relative-main-to-2.5.png)
123 KB
Loading

lib/astc-encoder/Docs/Roadmap.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ significantly slower than color LDR textures, and it feels like we should be
4040
able to come up with a criteria to exit "easy blocks" faster. Simple linear
4141
PSNR may not be a good choice, but _something_ should be possible.
4242

43-
4443
## Command line front-end implementation
4544

4645
The current command line front-end is very similar to the version in the 1.x
@@ -61,10 +60,3 @@ be selected at runtime.
6160

6261
Last time we tried this using a dynamically loaded shared object was 8% slower
6362
than a static build, which we need to investigate and reduce.
64-
65-
## Code cleanup
66-
67-
We've been doing this piecemeal, but we want to have a push on improving the
68-
quality of the source code style and documentation for the codec. This includes
69-
module-level documentation of the core algorithms, adding Doxygen API
70-
documentation for the codec, and generally apply some code cleanup.

lib/astc-encoder/README.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,12 @@ from 0.89 bits/pixel up to 8 bits/pixel.
5858
Release build binaries for the `astcenc` stable releases are provided in the
5959
[GitHub Releases page][3].
6060

61-
* Latest stable release: 2.5
62-
* Change log: [2.x series](./Docs/ChangeLog.md)
63-
* Roadmap: [2.x series and beyond](./Docs/Roadmap.md)
61+
**Latest stable release:** 2.5
62+
* Change log: [2.x series](./Docs/ChangeLog-2x.md)
63+
64+
**Latest development release:** 3.0-develop
65+
* Change log: [3.x series](./Docs/ChangeLog-3x.md)
66+
* Roadmap: [3.0 and beyond](./Docs/Roadmap.md)
6467

6568
Binaries are provided for 64-bit builds on Windows, macOS, and Linux. The
6669
builds of the astcenc are provided as multiple binaries, each tuned for a

0 commit comments

Comments
 (0)