Here is an update to libavif 1.1.0.

## [1.1.0] - 2024-07-11

### Added since 1.0.0
* Add experimental API for reading and writing gain maps in AVIF files.
  If enabled at compile time, add `gainMap` field to `avifImage`,
  add `qualityGainMap` field to `avifEncoder`, add `gainMapPresent`,
  `enableDecodingGainMap`, `enableParsingGainMapMetadata` and
  `ignoreColorAndAlpha` to `avifDecoder`.
  Utility functions for working with gain maps are also added.
  Gain maps allow readers that support them to display HDR images that look
  good on both HDR and SDR displays.
  This feature is highly experimental. The API might change or be removed
  in the future. Files created now might not decode in a future version.
  This feature is off by default and must be enabled with the
  AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP compilation flag.
* Add experimental support for converting jpeg files with gain maps to AVIF
  files with gain maps. Requires libxml2, and the 
AVIF_ENABLE_EXPERIMENTAL_GAIN_MAP
  compilation flag.
  Add a --qgain-map flag to control the gain map quality in avifenc.
* Add the headerFormat member of new type avifHeaderFormat to avifEncoder.
* Add experimental API for reading and writing "mif3"-branded AVIF files
  behind the compilation flag AVIF_ENABLE_EXPERIMENTAL_METAV1.
* Implement avifImageScale() fallback when libyuv is not available.
* Partial import of libyuv to third_party/libyuv (new LICENSE).
* Add avifenc flag suffixes ":update" and ":u". Quality-relative,
  tiling-relative and codec-specific flags can now be positional, relative to
  input files.
* Add experimental support for layered AVIF encoding in avifenc.
  Use the --layered flag to enable layered AVIF encoding.
  Layered AVIF has multiple layers, which works like frame of animated AVIF,
  and layers can be rendered in progressive manner on supported viewers
  (e.g. Chrome 94 or newer).
  Only aom supports layered AVIF encoding at the time of writing.
  Add --scaling-mode flag to set scaling mode of each layer.
  This part of AV1 encoder is not as thoroughly tested, so there are higher
  possibility encoder may crash when given certain configuration or input.
* Add imageSequenceTrackPresent flag to the avifDecoder struct.
* avifImageScale() function was made part of the public ABI.
* Add avif_cxx.h as a C++ header with basic functionality.
* Add enum aliases AVIF_COLOR_PRIMARIES_SRGB, AVIF_COLOR_PRIMARIES_BT2100,
  AVIF_COLOR_PRIMARIES_DCI_P3, AVIF_TRANSFER_CHARACTERISTICS_PQ.
* Add avifResult enum entry AVIF_RESULT_INTERNAL_ERROR.
* Require libyuv by default (but it can still be disabled with
  -DAVIF_LIBYUV=OFF).
* Add avifdec --icc flag to override the output color profile.
* Add experimental API for reading and writing 16-bit AVIF files behind the
  compilation flag AVIF_ENABLE_EXPERIMENTAL_SAMPLE_TRANSFORM.
* Add AVIF_CHROMA_SAMPLE_POSITION_RESERVED to avifChromaSamplePosition enum.

### Changed since 1.0.0
* Update aom.cmd: v3.9.1
* Update avm.cmd: research-v7.0.1
* Update dav1d.cmd: 1.4.3
* Update libgav1.cmd: v0.19.0
* Update libjpeg.cmd: v3.0.3
* Update libxml2.cmd: v2.12.7
* Update libyuv.cmd: a6a2ec65
* Update mp4box.sh: v2.4.0
* Update rav1e.cmd: v0.7.1
* Update svt.cmd/svt.sh: v2.1.1
* Update zlibpng.cmd: zlib 1.3.1 and libpng 1.6.40
* AVIF sequences encoded by libavif will now also have the "avio" brand when
  there is at least one track made only of AV1 keyframes.
* Fix SVT-AV1 codec interface which was not setting video range at encoding.
* Any item ID being 0 in an "iref" box with version 0 or 1 is now treated as an
  error instead of being ignored.
* API calls now return AVIF_RESULT_OUT_OF_MEMORY instead of aborting on memory
  allocation failure.
* avifdec and avifenc: Change the default value of the --jobs option from 1 to
  "all".
* Update avifCropRectConvertCleanApertureBox() to the revised requirements in
  ISO/IEC 23000-22:2019/Amd. 2:2021 Section 7.3.6.7.
* AVIF files with an exif_tiff_header_offset pointing at another byte than the
  first II or MM tag in the Exif metadata payload will now fail to be decoded.
  Set decoder->ignoreExif to true to skip the issue and decode the image.
* Fix memory errors reported in crbug.com/1501766, crbug.com/1501770, and
  crbug.com/1504792 by [Fudan University](https://secsys.fudan.edu.cn/).
* For codecs, AVIF_CODEC_* and AVIF_LOCAL_* are now merged into AVIF_CODEC_*
  that can only take the values: OFF, LOCAL or SYSTEM.
* For the gtest, jpeg, libsharpyuv, libxml2, libyuv and zlibpng dependencies,
  AVIF_LOCAL_* is now replaced by flags AVIF_* that can take the values:
  OFF, LOCAL or SYSTEM.
* src/reformat.c: Allocate the threadData array directly.
* AVIF_ENABLE_WERROR is set to OFF by default.
* Fix wrong alpha plane deallocation when decoded tile pixel format does not
  match reconstructed output image pixel format (b/320234262).
* Fix identical chunk skipping optimization when writing animation data
  (b/321189607).
* Fix ID selection for artificial grid alpha item when decoding a grid of tiles
  which each have an associated auxiliary alpha image item
  (https://crbug.com/oss-fuzz/65657).
* ext/libjpeg.cmd now pulls libjpeg-turbo instead of libjpeg and AVIF_JPEG=LOCAL
  now expects the library dependency in ext/libjpeg-turbo/build.libavif.
* Fix 'iloc' box parsing bugs that may have wrongly accepted, rejected or parsed
  some files with rare values of offset_size, length_size, base_offset_size and
  index_size.
* 'infe' boxes with an item_type different from 'mime' and without a
  null-terminated item_name are now considered invalid as per ISO/IEC 14496-12.


Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/libavif/Makefile,v
retrieving revision 1.22
diff -u -p -u -p -r1.22 Makefile
--- Makefile    3 Apr 2024 12:13:14 -0000       1.22
+++ Makefile    19 Jul 2024 22:35:41 -0000
@@ -2,10 +2,10 @@ COMMENT=      library for encoding and decodi
 
 GH_ACCOUNT=    AOMediaCodec
 GH_PROJECT=    libavif
-GH_TAGNAME=    v1.0.4
+GH_TAGNAME=    v1.1.0
 CATEGORIES=    graphics
 
-SHARED_LIBS=   avif    7.0
+SHARED_LIBS=   avif    7.1
 
 HOMEPAGE=      https://github.com/AOMediaCodec/libavif
 
@@ -14,12 +14,14 @@ MAINTAINER= Brad Smith <b...@comstyle.co
 # BSD
 PERMIT_PACKAGE=        Yes
 
-WANTLIB=       aom c dav1d jpeg m png pthread sharpyuv z
+WANTLIB=       ${COMPILER_LIBCXX} aom c dav1d jpeg m png pthread sharpyuv z
 
 COMPILER=      base-clang ports-gcc
 
 MODULES=       devel/cmake
 
+BUILD_DEPENDS+=        sysutils/ggrep
+
 LIB_DEPENDS=   graphics/jpeg \
                graphics/png \
                graphics/libwebp \
@@ -28,11 +30,15 @@ LIB_DEPENDS=        graphics/jpeg \
 
 CONFIGURE_ARGS+=-DAVIF_BUILD_APPS=ON \
                -DAVIF_BUILD_TESTS=ON \
-               -DAVIF_CODEC_AOM=ON \
+               -DAVIF_CODEC_AOM=SYSTEM \
                -DAVIF_CODEC_AOM_DECODE=OFF \
-               -DAVIF_CODEC_DAV1D=ON \
+               -DAVIF_CODEC_DAV1D=SYSTEM \
                -DAVIF_ENABLE_GTEST=OFF \
-               -DCMAKE_DISABLE_FIND_PACKAGE_libyuv=ON
+               -DAVIF_LIBSHARPYUV=SYSTEM \
+               -DAVIF_LIBYUV=LOCAL
+
+post-extract:
+       ln -sf ${LOCALBASE}/bin/ggrep ${WRKDIR}/bin/grep
 
 do-test:
        ${WRKBUILD}/tests/aviftest ${WRKSRC}/tests/data
Index: distinfo
===================================================================
RCS file: /cvs/ports/graphics/libavif/distinfo,v
retrieving revision 1.16
diff -u -p -u -p -r1.16 distinfo
--- distinfo    3 Apr 2024 12:13:14 -0000       1.16
+++ distinfo    19 Jul 2024 22:35:41 -0000
@@ -1,2 +1,2 @@
-SHA256 (libavif-1.0.4.tar.gz) = 3FZwjIOkuTSoryt49n+Ga6L7VoYFx8+UMSrPUe5X0UY=
-SIZE (libavif-1.0.4.tar.gz) = 10575992
+SHA256 (libavif-1.1.0.tar.gz) = 7bMZUQBdehQ74XJPJIJYCVmaSDIHOt1Q6vmHcz3vtcg=
+SIZE (libavif-1.1.0.tar.gz) = 13642536
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/graphics/libavif/pkg/PLIST,v
retrieving revision 1.5
diff -u -p -u -p -r1.5 PLIST
--- pkg/PLIST   11 Mar 2022 19:22:40 -0000      1.5
+++ pkg/PLIST   19 Jul 2024 22:35:41 -0000
@@ -2,6 +2,7 @@
 @bin bin/avifenc
 include/avif/
 include/avif/avif.h
+include/avif/avif_cxx.h
 lib/cmake/libavif/
 lib/cmake/libavif/libavif-config${MODCMAKE_BUILD_SUFFIX}
 lib/cmake/libavif/libavif-config-version.cmake

Reply via email to