Licences des bibliothèques livrées

Les bibliothèques listées ci-dessous sont embarquées dans l'application Infinite Media Player. Le texte intégral de chaque licence est reproduit ici, sans modification, et est également affiché dans l'application, dans son écran « Licences ».

Un texte de GPL est-il présent ?

Oui, et ce n'est pas contradictoire. La LGPL est une modification de la GPL, et elle exige que le texte de la GPL accompagne le sien : sans lui, l'utilisateur ne peut pas savoir à quoi la LGPL s'applique. La présence d'un texte de GPL ne dit rien de la licence du binaire, qui reste en LGPL — mpv est compilé avec -Dgpl=false, et FFmpeg sans --enable-gpl.

1. Les bibliothèques livrées

Bibliothèques natives embarquées, versions exactes et licence applicable.
ComposantVersionLicenceTexte
mpv (via libmpv) 0.36.0 LGPL v2.1+ mpv-LGPL-2.1.txt
FFmpeg (dans libmpv) 6.0 LGPL v3 ffmpeg-LGPLv3.txt
libass 0.17.1 ISC libass-ISC.txt
dav1d 1.2.1 BSD 2 clauses dav1d-BSD-2.txt
media_kit 1.2.6 MIT media_kit-MIT.txt

mpv 0.36.0 — LGPL v2.1 ou ultérieure

Le moteur de lecture. Il décode le MPEG-TS, le HLS et le MKV, y compris les codecs qu'AVFoundation ne sait pas lire (HEVC, DTS). Il est lié dynamiquement sous forme de bibliothèque partagée : Mpv.framework sur macOS et iOS, libmpv.so sur Android, libmpv-2.dll sur Windows. La compilation est faite avec -Dgpl=false : mpv est donc bien en LGPL, et non en GPL.

Texte de licence : GNU Lesser General Public License, version 2.1.

FFmpeg 6.0 — LGPL v3

Les décodeurs et les multiplexeurs, embarqués dans libmpv. La compilation est faite sans --enable-gpl et sans --enable-nonfree. La mention ci-dessous est obligatoire, et FFmpeg l'exige mot pour mot :

This software uses libraries from the FFmpeg project under the LGPLv2.1 and LGPLv3.

Texte de licence : GNU Lesser General Public License, version 3.

Une précision, pour éviter une confusion : le fichier LICENSE.md de FFmpeg dit « Most files in FFmpeg are under the GNU Lesser General Public License version 2.1 or later », et la balise du binaire dit « LGPL version 3 or later ». Les deux sont vrais : « v2.1 ou plus tard » inclut la v3. C'est la LGPL v3 qui est jointe, parce que c'est elle que la compilation utilise.

libass 0.17.1 — ISC

Le rendu des sous-titres.

Texte de licence : ISC License.

dav1d 1.2.1 — BSD 2 clauses

Le décodeur AV1.

Texte de licence : dav1d — BSD 2 clauses.

media_kit 1.2.6 — MIT

La couche Dart qui pilote libmpv.

Texte de licence : MIT License.

Une nuance à connaître : le fichier LICENSE.txt des dépôts de compilation de media_kit est en MIT, mais il couvre le script de packaging, pas mpv ni FFmpeg. C'est pourquoi la licence de mpv et de FFmpeg est donnée ci-dessus, et non celle de media_kit.

2. Les textes qui doivent les accompagner

Ces quatre textes ne sont pas la licence d'une bibliothèque en particulier : ils sont la condition de validité de celles qui le sont.

Textes joints par obligation de la LGPL.
TextePourquoi il est làFichier
GNU GPL v2 Le texte de la licence GPL v2, que la LGPL 2.1 reprend et modifie. La LGPL exige qu'il accompagne le sien. mpv-GPL-2.txt
Mentions de droit d'auteur de mpv Les mentions de droit d'auteur de mpv, et l'explication de pourquoi cette compilation est en LGPL et non en GPL. mpv-Copyright.txt
GNU GPL v3 Le texte de la licence GPL v3, que la LGPL v3 reprend et modifie. Même obligation que ci-dessus. ffmpeg-GPLv3.txt
Description de licence de FFmpeg La description de la licence de FFmpeg, telle que le projet la publie : quelles parties sont en GPL, et comment on l'évite. ffmpeg-LICENSE.md

3. Le code de l'application

Le code de l'application Infinite Media Player n'est pas sous licence libre, et il n'est pas distribué sous une licence libre. Il ne fait pas partie de cette liste, et son code n'est pas publié.

Ce qui doit l'être, c'est la source des bibliothèques ci-dessus : elle est

  • Conditions
  • publiée sur la page Source des bibliothèques livrées.