59 lines
2.8 KiB
Bash
59 lines
2.8 KiB
Bash
echo Updating and upgrading MSYS2 packages... if system core update requires reboot this application, please run this script again after being updated.
|
|
pacman -Syu
|
|
echo Installing MSYS2 packages...
|
|
pacman -S python nasm $MINGW_PACKAGE_PREFIX-{toolchain,cmake,autotools,meson,ninja}
|
|
echo Starting process of FFmpeg build with libvvenc and libvvdec...
|
|
mkdir buildffmpegwin && cd buildffmpegwin
|
|
git clone --depth=1 https://github.com/MartinEesmaa/FFmpeg-FixVVC
|
|
git clone --depth=1 https://github.com/fraunhoferhhi/vvenc
|
|
git clone --depth=1 https://github.com/fraunhoferhhi/vvdec
|
|
git clone --depth=1 https://github.com/mstorsjo/fdk-aac
|
|
git clone --depth=1 https://github.com/libsdl-org/SDL
|
|
git clone --depth=1 https://github.com/gnome/libxml2
|
|
git clone --depth=1 https://github.com/xiph/opus
|
|
git clone --depth=1 https://code.videolan.org/videolan/dav1d
|
|
|
|
echo Starting to build fdk-aac:
|
|
cd fdk-aac
|
|
autoreconf -if && ./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
|
cd ..
|
|
|
|
echo Starting to build libxml2:
|
|
cd libxml2
|
|
autoreconf -if && ./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
|
cd ..
|
|
|
|
echo Starting to build sdl2:
|
|
cd SDL
|
|
mkdir build && cd build && cmake -DCMAKE_EXE_LINKER_FLAGS="-static" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$MSYSTEM_PREFIX .. -G "MinGW Makefiles" && cmake --build . --target install -j $nproc
|
|
cd ../../
|
|
|
|
echo Starting to build libopus to improve decode quality on FFmpeg:
|
|
cd opus
|
|
autoreconf -if && CFLAGS="-O2 -D_FORTIFY_SOURCE=0" LDFLAGS="-flto -s" ./configure --enable-static --disable-shared --disable-tests --disable-extras --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
|
cd ..
|
|
|
|
echo Starting to build dav1d:
|
|
mkdir dav1d/build && cd dav1d/build && meson -Denable_docs=false -Ddefault_library=static -Dprefix=$MSYSTEM_PREFIX .. && ninja install
|
|
cd ../../
|
|
|
|
echo Starting to build vvenc & vvdec...
|
|
cd vvenc
|
|
mkdir build && cd build
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$MSYSTEM_PREFIX -DVVENC_ENABLE_LINK_TIME_OPT=OFF .. -G "MinGW Makefiles"
|
|
cmake --build . --target install -j $nproc
|
|
cd ../../
|
|
cd vvdec
|
|
mkdir build && cd build
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$MSYSTEM_PREFIX -DVVDEC_ENABLE_LINK_TIME_OPT=OFF .. -G "MinGW Makefiles"
|
|
cmake --build . --target install -j $nproc
|
|
cd ../../
|
|
|
|
echo Starting configuring and making FFmpeg VVCEasy build...
|
|
cd FFmpeg-FixVVC
|
|
./configure --enable-libfdk-aac --enable-static --enable-libvvenc --enable-libvvdec --enable-pic \
|
|
--enable-zlib --enable-libxml2 --enable-libdav1d --enable-libopus --extra-ldexeflags=-static \
|
|
--pkg-config-flags=-static --disable-w32threads --enable-sdl2 && \
|
|
make -j
|
|
echo FFmpeg VVC version tools are now compiled, please see buildffmpegwin/FFmpeg folder.
|