libavif Attribution Requirements for App Distribution
Distributing an application that uses libavif requires compliance with its open-source licensing terms, which primarily mandates providing proper attribution. Because libavif is released under a permissive BSD 2-Clause license, developers must include the original copyright notice, the license terms, and the standard disclaimer within the application or its accompanying documentation. Additionally, developers must satisfy the attribution requirements of any third-party dependencies compiled alongside libavif, such as underlying AV1 codecs.
The Core License: BSD 2-Clause
The libavif library is licensed under the BSD 2-Clause "Simplified" License. When you distribute an application in binary form (such as a compiled mobile app, desktop program, or embedded software) that incorporates libavif, the license states that you must reproduce:
- The original copyright notice: This credits the libavif contributors and the Alliance for Open Media (AOMedia).
- The full BSD 2-Clause license text: The two numbered conditions specifying the terms of redistribution.
- The disclaimer of warranty and liability: The standard uppercase clause disclaiming warranties and limiting liability for damages.
Where to Display the Attribution
The BSD 2-Clause license states that the notice must appear in the "documentation and/or other materials provided with the distribution." For modern distributed apps, standard ways to satisfy this requirement include:
- An In-App Legal/About Menu: A dedicated "Open Source Licenses," "Third-Party Notices," or "Legal" section in the app settings where the complete notice text is viewable by users.
- Accompanying Documentation: A plain text file (such
as
NOTICE.txt,LICENSES.txt, orTHIRD_PARTY_LICENSES) bundled in the application's root directory or installation folder. - Installer or Readme Files: Inclusion within end-user documentation or license agreements shown during app setup.
Accounting for libavif Dependencies
libavif does not decode or encode AV1 image sequences completely on its own; it relies on underlying codecs and helper libraries. If your application statically links or bundles these dependencies, their individual licenses also require attribution:
- dav1d: Licensed under the BSD 2-Clause license.
- libaom: Licensed under the AOMedia Software License 1.0 (similar to BSD 3-Clause) plus the Alliance for Open Media Patent License 1.0.
- libgav1: Licensed under the Apache License 2.0, which requires preserving copyright notices and providing a copy of the Apache 2.0 license.
- SVT-AV1: Licensed under the BSD 3-Clause Clear License.
- libyuv: Licensed under a BSD-style license.
To ensure complete compliance, audit which specific decoders and encoders your build utilizes and extract their corresponding license files into your app's attribution document.
Required Notice Format
A valid libavif attribution entry inside your app's notices should look like the following:
Copyright [Year], Alliance for Open Media. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Summary Checklist for App Creators
- Copy the exact copyright notice and BSD 2-Clause text from the libavif repository.
- Place the notice where end-users can access it (such as a settings page or a license bundle).
- Identify all underlying codec libraries linked to your libavif build and append their licenses.
- Ensure no warranty claims imply backing or endorsement by the original libavif authors.