#1 Update to 0.8.0
Merged 2 years ago by asn. Opened 2 years ago by eclipseo.
rpms/ eclipseo/libavif master  into  master

file modified
+1
@@ -2,3 +2,4 @@ 

  /libavif-0.7.1.tar.gz

  /libavif-0.7.2.tar.gz

  /libavif-0.7.3.tar.gz

+ /libavif-0.8.0.tar.gz

file modified
+41 -30
@@ -1,24 +1,30 @@ 

- %bcond_with aom

+ # Force out of source build

+ %undefine __cmake_in_source_build

  

- Name:           libavif

- Version:        0.7.3

- Release:        3%{?dist}

- Summary:        Library for encoding and decoding .avif files

- License:        BSD

- Url:            https://github.com/AOMediaCodec/libavif

+ %bcond_without aom

  

- Source0:        https://github.com/AOMediaCodec/libavif/archive/v%{version}/%{name}-%{version}.tar.gz

+ Name:       libavif

+ Version:    0.8.0

+ Release:    1%{?dist}

+ Summary:    Library for encoding and decoding .avif files

+ 

+ License:    BSD

+ URL:        https://github.com/AOMediaCodec/libavif

+ Source0:    %{url}/archive/v%{version}/%{name}-%{version}.tar.gz

+ # Patches to fix avif-pixbuf-loader bugs in latest release

+ Patch0:     https://github.com/AOMediaCodec/libavif/commit/9759bc7346802faa8ec96bb38456d8b8170580aa.patch#/0001-Fix-a-crash-in-the-gdk-pixbuf-loader-when-error-is-NULL.patch

+ Patch1:     https://github.com/AOMediaCodec/libavif/commit/61ec9835d0a0110e48346cb98ed095e29be19077.patch#/0002-Fix-a-crash-in-the-gdk-pixbuf-loader-removed-unnecessary-asserts.patch

  

  BuildRequires:  cmake

  BuildRequires:  gcc-c++

  BuildRequires:  nasm

- BuildRequires:  pkgconfig(dav1d)

  %if %{with aom}

  BuildRequires:  pkgconfig(aom)

  %endif

- BuildRequires:  pkgconfig(rav1e)

+ BuildRequires:  pkgconfig(dav1d)

  BuildRequires:  pkgconfig(libjpeg)

  BuildRequires:  pkgconfig(libpng)

+ BuildRequires:  pkgconfig(rav1e)

  BuildRequires:  pkgconfig(zlib)

  

  %description
@@ -28,14 +34,14 @@ 

  https://aomediacodec.github.io/av1-avif/

  

  %package devel

- Requires:       %{name} = %{version}-%{release}

  Summary:        Development files for libavif

+ Requires:       %{name}%{?_isa} = %{version}-%{release}

  

  %description devel

  This package holds the development files for libavif.

  

  %package tools

- Summary:        Tools for libavif

+ Summary:        Tools to encode and decode AVIF files

  

  %description tools

  This library aims to be a friendly, portable C implementation of the AV1 Image
@@ -43,35 +49,35 @@ 

  

  https://aomediacodec.github.io/av1-avif/

  

- This package holds the commandline tools for libavif.

+ This package holds the commandline tools to encode and decode AVIF files.

+ 

+ %package     -n avif-pixbuf-loader

+ Summary:        AVIF image loader for GTK+ applications

+ BuildRequires:  pkgconfig(gdk-pixbuf-2.0)

+ Requires:       gdk-pixbuf2

+ 

+ %description -n avif-pixbuf-loader

+ Avif-pixbuf-loader contains a plugin to load AVIF images in GTK+ applications.

  

  %prep

  %autosetup -p1

  

  %build

- mkdir -p obj

- pushd obj

- %cmake \

-     -DAVIF_CODEC_RAV1E:BOOL=ON \

-     -DAVIF_CODEC_DAV1D:BOOL=ON \

-     %if %{with aom}

-     -DAVIF_CODEC_AOM:BOOL=ON \

-     %endif

-     -DAVIF_BUILD_APPS:BOOL=ON \

-     -DAVIF_BUILD_EXAMPLES:BOOL=ON \

-     ..

- %make_build

- popd

+ %cmake  %{?with_aom:-DAVIF_CODEC_AOM=1} \

+         -DAVIF_CODEC_DAV1D=1 \

+         -DAVIF_CODEC_RAV1E=1 \

+         -DAVIF_BUILD_APPS=1 \

+         -DAVIF_BUILD_GDK_PIXBUF=1

+ %cmake_build

  

  %install

- %make_install -C obj

+ %cmake_install

  

  %files

  %license LICENSE

- %{_libdir}/libavif.so.*

+ %{_libdir}/libavif.so.5*

  

  %files devel

- %license LICENSE

  %{_libdir}/libavif.so

  %{_includedir}/avif/

  %{_libdir}/cmake/libavif/
@@ -79,11 +85,16 @@ 

  

  %files tools

  %doc CHANGELOG.md README.md

- %license LICENSE

  %{_bindir}/avifdec

  %{_bindir}/avifenc

  

+ %files -n avif-pixbuf-loader

+ %{_libdir}/gdk-pixbuf-2.0/*/loaders/libpixbufloader-avif.so

+ 

  %changelog

+ * Wed Aug 05 21:17:23 CEST 2020 Robert-André Mauchin <zebob.m@gmail.com> - 0.8.0-1

+ - Update to 0.8.0

+ 

  * Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.3-3

  - Second attempt - Rebuilt for

    https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (libavif-0.7.3.tar.gz) = b8928755ee39964fd9d9575fdb393ffee0ac3597c1d6f6048e049e6c328d1e82febdb32bfa0b22e16a2fb73ff6cd1ad4af7f63fc9baccea22716d941385c028d

+ SHA512 (libavif-0.8.0.tar.gz) = 362f3c3f8005ad0bce3026282722b26685ba09986def1f410aef25a8fb2b2035b91d1465a26cc1e9ad1cee0ee88b4110e7c92eddbe09a9e39c6ed05ab04d2b9e

Signed-off-by: Robert-André Mauchin zebob.m@gmail.com

Can I help you comaintaining this? I filed a Review Request but I didn't notice it was already packaged. I made a few changes while updating:
- used new cmake macros for oot building (https://fedoraproject.org/wiki/Changes/CMake_to_do_out-of-source_builds)
- added missing %{?_isa} for the devel package
- packaged the avif-pixbuf-loader for the GTK apps
- enabled AOM for Rawhide: I packaged aom v2.0.0 a couple of week ago to use with this
- devel and tools depend on the main library package so they don't need their own license
- unglobbed the soname to avoid unintentional bump

I'm happy to give you access. However I would prefer to only use one encoder and decoder. So I would prefer to stay with rav1e as it is fast and secure.

libaom didn't have a release for a very long time and libavif only supported the latest version. rav1e just worked fine and never had an issue with broken API.

May I respectfully disagree? The AOM encoder has significant better quality output than rav1e. I assume that AOM released version 2 because they thought it was stable enough. I don't expect them breaking their API, nor adopt a faster release process.
The codec is easy to switch with -c,--codec C. Is this a maintenance concern you have over AOM?

rebased onto c5b3b49

2 years ago

rebased onto d115e8b

2 years ago

rebased onto 625b0af

2 years ago

Could you please rebase?

rebased onto 05f1fe9

2 years ago

Rebased and Koji successful.

Pull-Request has been merged by asn

2 years ago

Merged. If you have time, please update to 0.8.1