vidaio-subnet / vmaf_utils /Dockerfile.ffmpeg
Arpan Tripathi
VMAF & color/chroma validation with ffmpeg (#127)
231e998 unverified
Raw History Blame Contribute Delete
1.51 kB
FROM vmaf
RUN apt-get update && \
apt-get install -y pkg-config libx264-dev git python3-pip && \
pip3 install meson
# build dav1d from source (requires >= 1.0.0 for ffmpeg)
RUN git clone --depth 1 --branch 1.4.2 https://code.videolan.org/videolan/dav1d.git && \
cd dav1d && \
mkdir build && cd build && \
meson setup .. --default-library=static --buildtype release && \
ninja && \
ninja install && \
ldconfig
ENV PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/local/lib/x86_64-linux-gnu/pkgconfig:$PKG_CONFIG_PATH"
ARG FFMPEG_TAG=master
ARG NVCC_FLAGS="-gencode arch=compute_75,code=sm_75 -gencode arch=compute_75,code=compute_75 -O2"
# get ffmpeg
RUN git clone https://github.com/FFmpeg/FFmpeg ffmpeg
RUN cd ffmpeg && git reset --hard 33b215d1554a14e87416a24f8e6034312e629af7 && ./configure \
--enable-gpl \
--enable-libx264 \
--enable-libvmaf \
--enable-libdav1d \
--enable-nonfree \
--enable-cuda-nvcc \
--enable-libnpp \
--extra-cflags="-I/usr/local/cuda/include" \
--extra-ldflags="-L/usr/local/cuda/lib64" \
--disable-static \
--enable-shared \
--nvccflags="${NVCC_FLAGS}" && \
make -j && \
make install
RUN set -eux; \
test -f /usr/local/lib/x86_64-linux-gnu/libvmaf.so.3 || test -f /usr/local/lib/libvmaf.so.3; \
ldconfig
RUN mkdir /data
# VMAF+decode GPU (only works for NVDec supported formats https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new)
ENTRYPOINT ["ffmpeg"]