Update project versions, fix vapoursynth building with new Cython

This commit is contained in:
DataHoarder 2023-08-20 02:31:25 +02:00
parent 0778af2877
commit d2a966b9f5
Signed by: DataHoarder
SSH key fingerprint: SHA256:OLTRf6Fl87G52SiR7sWLGNzlJt4WOX+tfI2yxo0z7xk
7 changed files with 50 additions and 39 deletions

View file

@ -8,7 +8,7 @@ RUN DEBIAN_FRONTEND=noninteractive apt update && \
libavcodec58 libavformat58 libswscale5 libavresample4 libavutil56 libavfilter7 libavdevice58 libass9 \
libnuma1 libatomic1 libfftw3-3 && \
rm -rf /var/lib/apt/lists/* && \
pip3 install Cython
pip3 install Cython==0.29.36
FROM dep-base AS build-base
@ -74,7 +74,7 @@ RUN /build.sh master
FROM build-base AS build-uvg266
ARG UVG266_DEFS=""
ARG UVG266_TAG=v0.4.0
ARG UVG266_TAG=v0.4.1
ARG UVG266_REPO=https://github.com/ultravideo/uvg266.git
COPY docker/build/uvg266/build.sh /build.sh
@ -84,7 +84,7 @@ RUN /build.sh
FROM build-base AS build-uvg266-10bit
ARG UVG266_DEFS="-DUVG_BIT_DEPTH=10"
ARG UVG266_TAG=v0.4.0
ARG UVG266_TAG=v0.4.1
ARG UVG266_REPO=https://github.com/ultravideo/uvg266.git
COPY docker/build/uvg266/build.sh /build.sh
@ -93,7 +93,7 @@ RUN /build.sh
FROM build-base AS build-vvenc
ARG VVENC_TAG=9314837004a86900c5c02d76571f51a2d227f2bb
ARG VVENC_TAG=v1.9.0
ARG VVENC_REPO=https://github.com/fraunhoferhhi/vvenc.git
COPY docker/build/vvenc/build.sh /build.sh
@ -102,7 +102,7 @@ RUN /build.sh
FROM build-base AS build-aom
ARG AOM_TAG=v3.4.0
ARG AOM_TAG=v3.7.0-rc1
ARG AOM_REPO=https://aomedia.googlesource.com/aom.git
ARG VMAF_TAG=v2.3.1
@ -111,7 +111,7 @@ ARG VMAF_REPO=https://github.com/Netflix/vmaf.git
ARG BROTLI_TAG=v1.0.9
ARG BROTLI_REPO=https://github.com/google/brotli.git
ARG JXL_TAG=v0.6.1
ARG JXL_TAG=v0.8.2
ARG JXL_REPO=https://github.com/libjxl/libjxl.git
COPY docker/build/vmaf/build.sh /build-vmaf.sh
@ -126,16 +126,16 @@ RUN /build.sh
FROM build-base AS build-svt-av1
ARG SVT_TAG=v1.1.0
ARG SVT_TAG=v1.6.0
ARG SVT_REPO=https://gitlab.com/AOMediaCodec/SVT-AV1.git
COPY docker/build/svt-av1/build.sh /build.sh
RUN /build.sh
FROM rust:1.62-bullseye AS build-rav1e
FROM rust:1.71-bullseye AS build-rav1e
ARG RAV1E_TAG=p20220614
ARG RAV1E_TAG=p20230815
ARG RAV1E_REPO=https://github.com/xiph/rav1e.git
RUN DEBIAN_FRONTEND=noninteractive apt update && \
@ -156,26 +156,30 @@ COPY docker/build/fdk-aac/build.sh /build.sh
RUN /build.sh
FROM build-lsmash AS build-vapoursynth
FROM build-lsmash AS build-vapoursynth-deps
ARG MAGICK_TAG=7.1.0-39
ARG ZIMG_TAG=release-3.0.4
ARG VS_TAG=R54
ARG MAGICK_TAG=7.1.1-15
ARG ZIMG_TAG=release-3.0.5
COPY docker/build/magick/build.sh /build-magick.sh
COPY docker/build/zimg/build.sh /build-zimg.sh
COPY docker/build/vapoursynth/build.sh /build-vapoursynth.sh
RUN /build-zimg.sh && \
/build-magick.sh && \
/build-vapoursynth.sh
/build-magick.sh
FROM build-vapoursynth-deps AS build-vapoursynth3
ARG VS_TAG=R55-API3
COPY docker/build/vapoursynth/build.sh /build-vapoursynth.sh
RUN /build-vapoursynth.sh
ENV PYTHONPATH "/usr/lib/python${PYTHON_VERSION}/site-packages:/usr/lib/vapoursynth:$PYTHONPATH"
COPY docker/build/vapoursynth-plugins/build.sh /build-vapoursynth-plugins.sh
COPY docker/build/vapoursynth3-plugins/build.sh /build-vapoursynth-plugins.sh
RUN /build-vapoursynth-plugins.sh
RUN /build-vapoursynth-plugins.sh
FROM build-base AS build-mkvtoolnix
@ -185,9 +189,11 @@ RUN echo "deb-src http://deb.debian.org/debian bullseye main" > /etc/apt/sources
DEBIAN_FRONTEND=noninteractive apt update && \
DEBIAN_FRONTEND=noninteractive apt build-dep -y qtbase-opensource-src
ARG MKVTOOLNIX_TAG=release-68.0.0
ARG MKVTOOLNIX_TAG=release-78.0
ARG MKVTOOLNIX_REPO=https://gitlab.com/mbunkus/mkvtoolnix.git
ARG QT5_TAG=5.15.2
COPY docker/build/qt5/build.sh /build-qt5.sh
COPY docker/build/mkvtoolnix/build.sh /build.sh
@ -196,7 +202,7 @@ RUN /build.sh
FROM build-vapoursynth AS build-av1an
FROM build-vapoursynth3 AS build-av1an
ARG AV1AN_TAG=a5f69398245436b8c0c49f07bec8ca32cf5df75e
ARG AV1AN_REPO=https://git.gammaspectra.live/WeebDataHoarder/Av1an.git
@ -214,7 +220,7 @@ RUN /build-av1an.sh
FROM build-base AS build-xeve
ARG XEVE_TAG=v0.4.0
ARG XEVE_TAG=v0.4.3-3890dae6
ARG XEVE_REPO=https://github.com/mpeg5/xeve.git
COPY docker/build/xeve/build.sh /build.sh
@ -223,7 +229,7 @@ RUN /build.sh BASE
FROM build-base AS build-xeve-main
ARG XEVE_TAG=v0.4.0
ARG XEVE_TAG=v0.4.3-3890dae6
ARG XEVE_REPO=https://github.com/mpeg5/xeve.git
COPY docker/build/xeve/build.sh /build.sh
@ -232,9 +238,9 @@ RUN /build.sh MAIN
FROM build-base AS build-mediainfo
ARG ZENLIB_TAG=v0.4.39
ARG MEDIAINFO_TAG=v22.06
ARG MEDIAINFOLIB_TAG=v22.06
ARG ZENLIB_TAG=v0.4.41
ARG MEDIAINFO_TAG=v23.07
ARG MEDIAINFOLIB_TAG=v23.07
COPY docker/build/mediainfo/build.sh /build.sh
@ -275,16 +281,16 @@ COPY --from=build-xeve-main /usr/bin/xeve_app /usr/bin/xeve
COPY --from=build-fdk-aac /usr/bin/aac-enc /usr/bin/aac-enc
COPY --from=build-vapoursynth /usr/bin/vspipe /usr/bin/vspipe
COPY --from=build-vapoursynth /usr/lib/python${PYTHON_VERSION}/site-packages/vapoursynth.* /usr/lib/python${PYTHON_VERSION}/site-packages/
COPY --from=build-vapoursynth /usr/lib/libvapoursynth* /usr/lib/
COPY --from=build-vapoursynth /usr/lib/libzimg* /usr/lib/
COPY --from=build-vapoursynth /usr/lib/vapoursynth /usr/lib/vapoursynth
COPY --from=build-vapoursynth /usr/lib/libvs* /usr/lib/
COPY --from=build-vapoursynth /usr/lib/libffms* /usr/lib/
COPY --from=build-vapoursynth3 /usr/bin/vspipe /usr/bin/vspipe
COPY --from=build-vapoursynth3 /usr/lib/python${PYTHON_VERSION}/site-packages/vapoursynth.* /usr/lib/python${PYTHON_VERSION}/site-packages/
COPY --from=build-vapoursynth3 /usr/lib/libvapoursynth* /usr/lib/
COPY --from=build-vapoursynth3 /usr/lib/libzimg* /usr/lib/
COPY --from=build-vapoursynth3 /usr/lib/vapoursynth /usr/lib/vapoursynth
COPY --from=build-vapoursynth3 /usr/lib/libvs* /usr/lib/
COPY --from=build-vapoursynth3 /usr/lib/libffms* /usr/lib/
COPY --from=build-vapoursynth /usr/bin/magick /usr/bin/magick
COPY --from=build-vapoursynth /usr/etc/ImageMagick-7 /usr/etc/ImageMagick-7
COPY --from=build-vapoursynth3 /usr/bin/magick /usr/bin/magick
COPY --from=build-vapoursynth3 /usr/etc/ImageMagick-7 /usr/etc/ImageMagick-7
COPY --from=build-mkvtoolnix /usr/bin/mkv* /usr/bin/
COPY --from=build-mediainfo /usr/bin/mediainfo /usr/bin/mediainfo

View file

@ -2,8 +2,8 @@ A Dockerfile featuring several video encoding / processing / filtering utilities
## Build and run
```bash
docker build -t encoder .
docker run -it --rm -v /path/to/mount/on/container:/mnt encoder
$ DOCKER_BUILDKIT=1 docker build -t encoder .
$ docker run -it --rm -v /path/to/mount/on/container:/mnt encoder
```
## Included tools

View file

@ -2,7 +2,7 @@
set -e
set -o pipefail
git-shallow-clone "${MAGICK_TAG}" "https://github.com/ImageMagick/ImageMagick" /src/imagemagick
git-shallow-clone "${MAGICK_TAG}" "https://github.com/ImageMagick/ImageMagick.git" /src/imagemagick
cd /src/imagemagick
./configure --with-magick-plus-plus --prefix=/usr
make -j$(nproc)

View file

@ -3,7 +3,7 @@ set -e
set -o pipefail
git-shallow-clone "5.15.2" "https://code.qt.io/qt/qt5.git" /src/qt5
git-shallow-clone "${QT5_TAG}" "https://code.qt.io/qt/qt5.git" /src/qt5
pushd /src/qt5
mkdir b
pushd b

View file

@ -4,6 +4,10 @@ set -o pipefail
git-shallow-clone "${VVENC_TAG}" "${VVENC_REPO}" /src/vvenc
pushd /src/vvenc
# Patch -Werror out
sed -i 's/-Werror;//g' source/Lib/vvenc/CMakeLists.txt
sed -i 's/ -Werror//g' source/App/vvencapp/CMakeLists.txt
sed -i 's/ -Werror//g' source/App/vvencFFapp/CMakeLists.txt
mkdir b
pushd b
cmake .. -DVVENC_ENABLE_X86_SIMD=ON -DBUILD_SHARED_LIBS=OFF -DVVENC_ENABLE_LINK_TIME_OPT=ON -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON -DCMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX:PATH=/usr && \

View file

@ -7,6 +7,7 @@ export CPPFLAGS="$CFLAGS"
git-shallow-clone "${XEVE_TAG}" "${XEVE_REPO}" /src/xeve
pushd /src/xeve
echo "${XEVE_TAG%-*}" > version.txt
mkdir b
pushd b
cmake .. \