2022-09-10 02:40:29 +02:00
|
|
|
echo Updating & upgrading MSYS2 packages... (if system core update requires reboot this application, please run this script again after being updated)
|
|
|
|
pacman -Syu
|
|
|
|
pacman -Su
|
|
|
|
echo Installing MSYS2 packages...
|
2022-09-30 09:01:03 +02:00
|
|
|
pacman -S python nasm vim $MINGW_PACKAGE_PREFIX-{toolchain,cmake,autotools,meson,ninja}
|
2022-06-15 13:44:48 +02:00
|
|
|
echo Starting process of FFmpeg build with libvvenc and libvvdec...
|
|
|
|
mkdir buildffmpegwin && cd buildffmpegwin
|
2022-09-07 11:15:28 +02:00
|
|
|
git clone --depth=1 https://github.com/MartinEesmaa/FFmpeg-FixVVC
|
2022-06-15 13:44:48 +02:00
|
|
|
git clone --depth=1 https://github.com/fraunhoferhhi/vvenc
|
2022-08-10 06:12:00 +02:00
|
|
|
git clone --depth=1 https://github.com/fraunhoferhhi/vvdec
|
2022-09-10 02:40:29 +02:00
|
|
|
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
|
2022-09-23 13:17:10 +02:00
|
|
|
git clone --depth=1 https://code.videolan.org/videolan/dav1d
|
|
|
|
git clone --depth=1 https://github.com/Netflix/vmaf
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting to build fdk-aac:
|
|
|
|
cd fdk-aac
|
|
|
|
autoreconf -if && ./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ..
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting to build libxml2:
|
|
|
|
cd libxml2
|
|
|
|
autoreconf -if && ./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ..
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting to build sdl2:
|
|
|
|
cd SDL
|
|
|
|
./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ..
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting to build libopus to improve decode quality on FFmpeg:
|
|
|
|
cd opus
|
|
|
|
CFLAGS="-O2 -D_FORTIFY_SOURCE=0" LDFLAGS="-flto -s" ./configure --enable-static --disable-shared --prefix=$MSYSTEM_PREFIX && make install -j $nproc
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ..
|
|
|
|
|
|
|
|
echo Starting to build dav1d:
|
2022-09-27 07:41:52 +02:00
|
|
|
mkdir dav1d/build && cd dav1d/build && meson -Denable_docs=false -Ddefault_library=static -Dprefix=$MSYSTEM_PREFIX .. && ninja install
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ../../
|
|
|
|
|
|
|
|
echo Starting to build vmaf to apply calculate VVC video references from original video:
|
2022-09-30 08:34:03 +02:00
|
|
|
mkdir vmaf/libvmaf/build && cd vmaf/libvmaf/build && CFLAGS="-msse2 -mfpmath=sse -mstackrealign" meson -Denable_docs=false -Ddefault_library=static -Denable_float=true -Dbuilt_in_models=true -Dprefix=$MSYSTEM_PREFIX .. && ninja install
|
2022-09-23 13:17:10 +02:00
|
|
|
cd ../../../
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting to build vvenc & vvdec...
|
2022-06-15 13:44:48 +02:00
|
|
|
cd vvenc
|
|
|
|
mkdir build && cd build
|
2022-09-07 11:15:28 +02:00
|
|
|
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
|
2022-06-15 13:44:48 +02:00
|
|
|
cd ../../
|
|
|
|
cd vvdec
|
|
|
|
mkdir build && cd build
|
2022-09-10 02:40:29 +02:00
|
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$MSYSTEM_PREFIX -DVVDEC_ENABLE_LINK_TIME_OPT=OFF .. -G "MinGW Makefiles"
|
2022-09-07 11:15:28 +02:00
|
|
|
cmake --build . --target install -j $nproc
|
2022-06-15 13:44:48 +02:00
|
|
|
cd ../../
|
2022-09-10 02:40:29 +02:00
|
|
|
|
|
|
|
echo Starting configuring and making FFmpeg VVCEasy build...
|
2022-09-07 11:15:28 +02:00
|
|
|
cd FFmpeg-FixVVC
|
2022-08-10 06:08:30 +02:00
|
|
|
./configure --enable-libfdk-aac --enable-static --enable-libvvenc --enable-libvvdec --enable-pic \
|
2022-09-07 11:15:28 +02:00
|
|
|
--enable-zlib --enable-libxml2 --extra-ldexeflags=-static \
|
2022-09-10 02:40:29 +02:00
|
|
|
--pkg-config-flags=-static --disable-w32threads --enable-sdl2 && \
|
2022-06-15 13:44:48 +02:00
|
|
|
make -j
|
|
|
|
echo FFmpeg VVC version tools are now compiled, please see buildffmpegwin/FFmpeg folder.
|