Faites une note pour ne pas l'oublier.
Je vais le construire avec le sentiment qu'il est OK si cela fonctionne pour le moment, donc j'ignorerai les avertissements et ainsi de suite. ** Je ne suis pas responsable des problèmes que vous pourriez rencontrer lors de la création des étapes de cet article. Veuillez prendre la responsabilité de vos actions. ** **
C'est très simple car un outil dédié est préparé.
Cette fois, j'ai utilisé Ubuntu 20.4 ja. Le logiciel de virtualisation utilisait VMware Workstation 15 Player. Cela fonctionne également avec WSL.
Le répertoire peut être n'importe où dans le répertoire de base.
git clone https://github.com/rdp/ffmpeg-windows-build-helpers.git
cd ffmpeg-windows-build-helpers
Je vais l'exécuter pour le moment.
./cross_compile_ffmpeg.sh
Ensuite, une commande comme sudo apt install 〇〇 apparaîtra dans le journal, alors copiez-la et exécutez-la.
sudo apt-get install subversion ragel curl texinfo g++ bison flex cvs yasm automake libtool autoconf gcc cmake git make pkg-config zlib1g-dev mercurial unzip pax nasm gperf autogen bzip2 autoconf-archive p7zip-full clang python3 python3-pip python3-setuptools python3-wheel ninja-build -y
Pour Ubuntu 18.04
sudo apt install python3-distutils -y
Pour Ubuntu 20.04
sudo apt install python-is-python3 -y
Est requis.
Ensuite, installez les autres éléments dont vous avez besoin.
sudo apt install python3-pip -y
sudo pip3 install ninja meson
./cross_compile_ffmpeg.sh --build-ffmpeg-shared=y --build-intel-qsv=y --build-amd-amf=y --ffmpeg-git-checkout-version=n4.3.1 --enable-gpl=n
Je l'ai couru comme ça. Cela prendra plusieurs heures. Construisez 32 bits et 64 bits ensemble comme cible, ou choisissez-en une seule.
Je voulais une dll, alors je l'ai fait générer une dll avec --build-ffmpeg-shared = y. Si vous n'en avez pas besoin, utilisez --build-ffmpeg-static = y.
--build-intel-qsv=y --build-amd-amf=y Activez maintenant Intel QSV, AMD amf en option. NVENC et NVDEC semblent être activés automatiquement.
--enable-gpl = n désactive la libx264. --enable-gpl = y installera libx264. Apparemment, OpenH264 est utilisé en standard.
Spécifiez la version de ffmpeg avec --ffmpeg-git-checkout-version = n4.3.1. Si vous ne le spécifiez pas, le dernier fichier sera supprimé. Cet outil semble être conçu pour la dernière version, donc si vous ne spécifiez pas la dernière version, vous pouvez obtenir une erreur.
Pour d'autres paramètres détaillés, vous pouvez consulter le fichier sh. Si vous souhaitez le modifier en détail, vous devez le réécrire directement.
Done! You will find 32-bit shared binaries in /home/kusaanko/ffmpeg-windows-build-helpers/sandbox/win32/ffmpeg_git_lgpl_n4.3.1_shared/bin
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=ja_JP.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz (906E9),ASM,AES-NI)
Scanning the drive:
9 folders, 145 files, 82126029 bytes (79 MiB)
Creating archive: /home/kusaanko/ffmpeg-windows-build-helpers/sandbox/redist/ffmpeg-N-98189-g6b6b9e593d-win32-shared.7z
Items to compress: 154
Files read from disk: 145
Archive size: 27850375 bytes (27 MiB)
Everything is Ok
Dans mon cas, c'était ici. ffmpeg-windows-build-helpers/sandbox/win64/ffmpeg_git_lgpl_n4.3.1_shared/bin/ Vous pouvez le voir en le lisant car il apparaît dans le dernier journal.
ERROR: libaribb24 requires version higher than 1.0.3 or --enable-gpl. La dernière version de libaribb24 est 1.0.3, mais une version plus récente que 1.0.3 est demandée. Abandonnez la construction sur LGPL ou abandonnez le regroupement. Cliquez ici pour la commande pour abandonner le paquet
sed -i -e 's/--enable-libaribb24 //' ./cross_compile_ffmpeg.sh
sed -i -e 's/--enable-libx264 --enable-libx265/--enable-libx264 --enable-libx265 --enable-libaribb24/' ./cross_compile_ffmpeg.sh
Soyez prudent avec votre licence lorsque vous utilisez ffmpeg. Vous devez penser aux frais de licence et ainsi de suite.
Recommended Posts