@@ -8,41 +8,71 @@ The changes are relative to the previous release, unless the baseline is specifi
8
8
9
9
## [ Unreleased]
10
10
11
+ ### Added since 1.2.0
12
+
13
+ * Add support for outputting all frames of an image sequence in ` avifdec ` .
14
+ ` avifdec --index all sequence.avif out.png ` creates files named
15
+ ` out-xxxxxxxxxx.png ` where xxxxxxxxxx are the zero-padded frame indices.
16
+
17
+ ### Changed since 1.2.0
18
+
19
+ * Fix local libargparse dependency patch step on macOS 10.15 and earlier.
20
+ * Patch local libyuv dependency for compatibility with gcc 10.
21
+ * Use stricter C99 syntax to avoid related compilation issues.
22
+ * Reject the conversion in avifenc from non-monochrome/monochrome to
23
+ monochrome/non-monochrome when an ICC profile is present and not explicitly
24
+ discarded.
25
+
26
+ ## [ 1.2.0] - 2025-02-25
27
+
11
28
### Added since 1.1.1
29
+ * Turn on the gain map API. Remove the AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP CMake
30
+ flag.
31
+ * Allow YCgCo_Re and YCgCo_Ro encoding/decoding and update the enum values to
32
+ the latest CICP specification. Remove the AVIF_ENABLE_EXPERIMENTAL_YCGCO_R
33
+ CMake flag.
12
34
* Add the properties and numProperties fields to avifImage. They are filled by
13
35
the avifDecoder instance with the properties unrecognized by libavif. They are
14
36
written by the avifEncoder.
15
37
* Add avif(Un)SignedFraction structs and avifDoubleTo(Un)SignedFraction
16
38
utility functions.
17
39
* Add 'avifgainmaputil' command line tool to installed apps.
18
40
* Add avifCropRectRequiresUpsampling().
41
+ * Add experimental support for PixelInformationProperty syntax from HEIF 3rd Ed.
42
+ Amd2 behind the compilation flag AVIF_ENABLE_EXPERIMENTAL_EXTENDED_PIXI.
43
+ * Add experimental Sample Transform recipe
44
+ BIT_DEPTH_EXTENSION_12B_8B_OVERLAP_4B.
19
45
20
46
### Changed since 1.1.1
21
47
* avifenc: Allow large images to be encoded.
22
48
* Fix empty CMAKE_CXX_FLAGS_RELEASE if -DAVIF_CODEC_AOM=LOCAL -DAVIF_LIBYUV=OFF
23
49
is specified. https://github.com/AOMediaCodec/libavif/issues/2365 .
24
- * Renamed AVIF_ENABLE_EXPERIMENTAL_METAV1 to AVIF_ENABLE_EXPERIMENTAL_MINI and
25
- updated the experimental reduced header feature to the latest specification
26
- draft.
50
+ * Rename AVIF_ENABLE_EXPERIMENTAL_METAV1 to AVIF_ENABLE_EXPERIMENTAL_MINI and
51
+ update the experimental reduced header feature to the latest specification
52
+ draft. Rename AVIF_HEADER_REDUCED to AVIF_HEADER_MINI.
53
+ * Update the experimental Sample Transform feature behind the
54
+ AVIF_ENABLE_EXPERIMENTAL_SAMPLE_TRANSFORM CMake flag to the latest
55
+ specification draft.
27
56
* Ignore gain maps with unsupported metadata. Handle gain maps with
28
57
writer_version > 0 correctly.
29
- Simplify gain map API: remove the enableParsingGainMapMetadata setting, now gain
30
- map metadata is always parsed if present and if this feature is compiled in.
31
- Replace enableDecodingGainMap and ignoreColorAndAlpha with a bit field to choose
32
- image content to decode. Remove gainMapPresent: users can check if
33
- decoder->image->gainMap != NULL instead.
58
+ * Simplify gain map API: remove the enableParsingGainMapMetadata setting, now
59
+ gain map metadata is always parsed if present and if this feature is compiled
60
+ in. Replace enableDecodingGainMap and ignoreColorAndAlpha with a bit field to
61
+ choose image content to decode. Remove gainMapPresent: users can check if
62
+ decoder->image->gainMap != NULL instead. Remove avifGainMapMetadata and
63
+ avifGainMapMetadataDouble structs.
34
64
* Write an empty HandlerBox name field instead of "libavif" (saves 7 bytes).
35
- * Update aom.cmd/LocalAom.cmake: v3.12.0
36
- * Update avm.cmd: research-v9.0.0
65
+ * Check for FileTypeBox precedence in avifParse().
66
+ * Do not write an alternative group with the same ID as an item.
67
+ * Update aom.cmd/LocalAom.cmake: v3.12.0. The new codec-specific option tune=iq
68
+ (image quality) is added in libaom v3.12.0.
69
+ * Update parseAV2SequenceHeader() and avm.cmd: research-v9.0.0
37
70
* Update dav1d.cmd/dav1d_android.sh/LocalDav1d.cmake: 1.5.1
38
71
* Update libjpeg.cmd/LocalJpeg.cmake: v3.0.4
39
72
* Update libxml2.cmd/LocalLibXml2.cmake: v2.13.5
40
73
* Update libyuv.cmd: ccdf87034 (1903)
41
- * Update svt.cmd/svt.sh/LocalSvt.cmake: v2.3.0
42
- * Change experimental gainmap API: remove avifGainMapMetadata and
43
- avifGainMapMetadataDouble structs.
44
- * Turn on the gain map API. Remove the
45
- AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP compile flag.
74
+ * Update svt.cmd/svt.sh/LocalSvt.cmake to v3.0.0. When available, use
75
+ EbSvtAv1EncConfiguration::lossless and ::level_of_parallelism in libavif.
46
76
* Remove AVIF_ENABLE_GTEST CMake option. It's now implied by
47
77
AVIF_GTEST=LOCAL/SYSTEM.
48
78
* Deprecate ` avifEncoder ` 's ` minQuantizer ` , ` maxQuantizer ` , ` minQuantizerAlpha ` ,
@@ -56,8 +86,20 @@ The changes are relative to the previous release, unless the baseline is specifi
56
86
* Deprecate avifCropRectConvertCleanApertureBox() and
57
87
avifCleanApertureBoxConvertCropRect(). Replace them with
58
88
avifCropRectFromCleanApertureBox() and avifCleanApertureBoxFromCropRect().
89
+ * Write descriptive properties before transformative properties.
59
90
* Reject non-essential transformative properties.
60
91
* Treat avifenc --stdin as a regular positional file path argument.
92
+ * Update man pages based on avifenc/dec's --help message.
93
+ * android_jni: Support 16kb page size
94
+ * android_jni: Set threads to 2 instead of CPU count
95
+ * Fix overflows when dealing with alpha during YUV/RGB conversions and in
96
+ avifRGBImageAllocatePixels().
97
+ * Make avifEncoder.headerFormat a flag combination for future features.
98
+ * Rename AVIF_HEADER_FULL to AVIF_HEADER_DEFAULT. Deprecate AVIF_HEADER_FULL.
99
+ * Fix decoding image sequences with non video tracks (such as audio or subtitles).
100
+ * Fix type checking of auxiliary tracks: previously any auxiliary track was
101
+ assumed to be alpha, even if it was a different type. If the aux type is absent,
102
+ it is assumed to be alpha.
61
103
62
104
## [ 1.1.1] - 2024-07-30
63
105
@@ -269,8 +311,6 @@ List of incompatible ABI changes in this release:
269
311
* Add avifenc --no-overwrite flag to avoid overwriting output file.
270
312
* Add avifenc --clli flag to set clli.
271
313
* Add support for all transfer functions when using libsharpyuv.
272
- * Add experimental support for PixelInformationProperty syntax from HEIF 3rd Ed.
273
- Amd2 behind the compilation flag AVIF_ENABLE_EXPERIMENTAL_EXTENDED_PIXI.
274
314
275
315
### Changed
276
316
* Enable the libaom AV1E_SET_SKIP_POSTPROC_FILTERING codec control by default.
@@ -1187,7 +1227,8 @@ code.
1187
1227
- Constants ` AVIF_VERSION ` , ` AVIF_VERSION_MAJOR ` , ` AVIF_VERSION_MINOR ` , ` AVIF_VERSION_PATCH `
1188
1228
- ` avifVersion() ` function
1189
1229
1190
- [ Unreleased ] : https://github.com/AOMediaCodec/libavif/compare/v1.1.1...HEAD
1230
+ [ Unreleased ] : https://github.com/AOMediaCodec/libavif/compare/v1.2.0...HEAD
1231
+ [ 1.2.0 ] : https://github.com/AOMediaCodec/libavif/compare/v1.1.1...v1.2.0
1191
1232
[ 1.1.1 ] : https://github.com/AOMediaCodec/libavif/compare/v1.1.0...v1.1.1
1192
1233
[ 1.1.0 ] : https://github.com/AOMediaCodec/libavif/compare/v1.0.0...v1.1.0
1193
1234
[ 1.0.4 ] : https://github.com/AOMediaCodec/libavif/compare/v1.0.3...v1.0.4
0 commit comments