Last active
January 17, 2022 22:07
-
-
Save seydx/1de76187a846f2281997de72866c3f6c to your computer and use it in GitHub Desktop.
install_ffmpeg_with_all_codes.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# On "error while loading shared libraries: libz.so.1: cannot open shared object file" | |
# sudo apt-get install zlib1g lib64z1 | |
# On "E: Unable to locate package libfdk-aac-dev" | |
# 1. sudo nano /etc/apt/sources.list | |
# 2. Paste in following on a new line. Save and exit. | |
# deb http://www.deb-multimedia.org buster main non-free | |
# 3. sudo apt-get install deb-multimedia-keyring | |
# 4. sudo apt-get update --allow-insecure-repositories | |
# 5. Try again below | |
# Remove FFMpeg first | |
sudo apt-get remove ffmpeg | |
sudo apt-get purge ffmpeg | |
sudo apt-get update | |
sudo apt-get -y install build-essential autoconf automake git-core cmake libtool git checkinstall nasm yasm gcc libmp3lame-dev libass-dev libgpac-dev libtheora-dev libx11-dev libxfixes-dev libxext-dev pkg-config texi2html zlib1g-dev libsdl1.2-dev libfreetype6-dev libsdl2-dev p11-kit libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev libchromaprint-dev frei0r-plugins-dev gnutls-dev ladspa-sdk libcaca-dev libcdio-paranoia-dev libcodec2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libgme-dev libgsm1-dev libjack-dev libmodplug-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopenjp2-7-dev libopenmpt-dev libopus-dev libpulse-dev librsvg2-dev librubberband-dev librtmp-dev libshine-dev libsmbclient-dev libsnappy-dev libsoxr-dev libspeex-dev libssh-dev libtesseract-dev libtheora-dev libtwolame-dev libv4l-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libwebp-dev libx264-dev libx265-dev libxvidcore-dev libxml2-dev libzmq3-dev libzvbi-dev liblilv-dev libopenal-dev opencl-dev libjack-dev libavc1394-0 libavc1394-dev libiec61883-0 libiec61883-dev libbluray-dev libfdk-aac-dev libbs2b-dev libbs2b0 libdc1394-22 libdc1394-22-dev | |
mkdir ~/ffmpeg_sources | |
cd ~/ffmpeg_sources | |
git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git | |
cd fdk-aac | |
autoreconf -fiv | |
./configure --prefix="$HOME/ffmpeg_build" --disable-shared | |
make -j8 | |
make install | |
make distclean | |
cd ~/ffmpeg_sources | |
wget https://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz | |
tar xzvf lame-3.99.5.tar.gz | |
cd lame-3.99.5 | |
./configure --prefix="$HOME/ffmpeg_build" --enable-nasm --disable-shared | |
make -j8 | |
make install | |
make distclean | |
cd ~/ffmpeg_sources | |
wget https://ffmpeg.org/releases/ffmpeg-4.4.tar.gz | |
tar xzvf ffmpeg-4.4.tar.gz | |
cd ffmpeg-4.4 | |
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" | |
export PKG_CONFIG_PATH | |
./configure --prefix="$HOME/ffmpeg_build" \ | |
--extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" \ | |
--bindir="$HOME/bin" --extra-libs="-ldl" --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-chromaprint --enable-frei0r --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --disable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdc1394 --disable-libdrm --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librtmp --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtesseract --enable-libtheora --enable-libtwolame --enable-libv4l2 --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-nonfree --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-shared --enable-static --enable-small --enable-version3 --extra-version=0ubuntu0.2 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --toolchain=hardened --alow-unauthenticated | |
make -j8 | |
make install | |
cp ffmpeg /usr/bin/ | |
make distclean | |
hash -r | |
ffmpeg 2>&1 | head -n1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment