Ce projet regroupe les fonctions nécessaires à la compilation de FFMPEG pour les plateformes cibles suivantes MacOS Ventura, CentOS 7, Debian 12. Il n'est pas exclu que la compilation fonctionne sous d'autres plateformes/OS. Contributions bienvenues.
libmp3lame(codec pour MPEG 1 Layer III)libfdk_aac(Fraunhofer FDK AAC)libopuslibx264(codec pour vidéo H.264/AVC)libx265(codec pour vidéo H.265/HEVC)libass(génération sous-titrage)libfreetype(pour drawtext)libfontconfig(fallback font par défaut)libflite(WIP) (text 2 speech) darwin onlyopenssl(pour https)libzimg(filtre zscale)
Copier le fichier de configuration d'exemple et l'adapter (choix des versions et des modules à activer)
cp conf.ini.dist.sh conf.ini.shPrérequis homebrew trouvable ici : https://brew.sh/index_fr
puis
./run.shLes binaires statiques sont écrits dans ./bin.
Prérequis docker activé (sauf si compilation dans l'environnement cible).
Compilation dans un conteneur Docker. On récupère les binaires statiques dans ./bin sur le système hôte MacOS.
docker run --rm --mount type=bind,source=$(pwd),target=/app -w /app -it debian:12.8 ./run.shPrérequis docker activé (sauf si compilation dans l'environnement cible).
Compilation dans un conteneur Docker. On récupère les binaires statiques dans ./bin sur le système hôte MacOS.
docker run --rm --mount type=bind,source=$(pwd),target=/app -w /app -it almalinux:9.5 ./run.shEOL le 30/06/2024. Plus supporté, les dépôts ne répondent plus (il faudrait utiliser vault).
Prérequis docker activé (sauf si compilation dans l'environnement cible).
Compilation dans un conteneur Docker. On récupère les binaires statiques dans ./bin sur le système hôte MacOS.
docker run --rm --mount type=bind,source=$(pwd),target=/app -w /app -it centos:7.9.2009 ./run.sh