I'm very sorry for giving out a very dirty, partially ai-slopped Dockerfile, just tried to make it out as fast as possible.
So, for some reason, av1an doesn't give any logs nor output into terminal, but via htop i was able to see it's invoking ffprobe
Here's the cmd I've attempted to run:
sudo docker build -t "av1an-vmaf-cuda" .
sudo docker run -v $(pwd):/tmp/ --gpus all -it --rm docker.io/library/av1an-vmaf-cuda av1an -i Movie.mkv -s scenes.txt -o output_480p_vmaf.aom.av1 -e aom --target-quality 95-98 --target-metric vmaf --video-params "--cpu-used=3 --aq-mode=3 --kf-max-dist=360" --probe-video-params "--cpu-used=8 --aq-mode=3 --kf-max-dist=360" -f "scale=854:480" --probes 4 --qp-range 15-45 --vmaf-res "854:480" -c ffmpeg -y
Any help is gonna be appreciated. It's very sad that there's no any image of av1an with vmaf-cuda nor ssimulacra2
Here's the Docker image and Dockerfile: (WARNING: building this Dockerfile would result around 16Gb docker image)
#FROM nvidia/cuda:12.9.1-cudnn-runtime-rockylinux9
#FROM nvidia/cuda:12.8.0-cudnn-runtime-rockylinux9
FROM nvidia/cuda:12.8.0-devel-rockylinux9
RUN dnf install --enablerepo=devel -y git gcc gcc-c++ make wget unzip nasm meson python3-pip python3-devel pkg-config cmake perl yasm mesa-libGL mesa-libGLU
# Install Python dependencies for VMAF build
RUN pip3 install --no-cache-dir Cython numpy opencv-python
# Install nv-codec-headers for FFmpeg integration
ENV NV_CODEC_TAG="n12.2.72.0"
RUN cd /tmp && \
wget https://github.com/FFmpeg/nv-codec-headers/archive/${NV_CODEC_TAG}.zip && \
unzip ${NV_CODEC_TAG}.zip && \
cd nv-codec-headers-${NV_CODEC_TAG} && \
make && make install && \
rm -rf /tmp/*
# Install AOM codec (AV1 encoder) - Official Google Source repository
WORKDIR /tmp
RUN git clone https://aomedia.googlesource.com/aom
WORKDIR /tmp/aom
RUN mkdir -p build
WORKDIR /tmp/aom/build
RUN cmake .. -DCONFIG_AV1_ENCODER=1 -DBUILD_SHARED_LIBS=1
RUN make -j$(nproc)
RUN make install
# Fix library path issue - find and configure AOM libraries
RUN find /usr -name "libaom*" 2>/dev/null || echo "No libaom found"
RUN if [ -f /usr/local/lib64/libaom.so.3 ]; then \
echo "/usr/local/lib64" > /etc/ld.so.conf.d/aom.conf && \
echo "Found AOM library in /usr/local/lib64"; \
elif [ -f /usr/local/lib/libaom.so.3 ]; then \
echo "/usr/local/lib" > /etc/ld.so.conf.d/aom.conf && \
echo "Found AOM library in /usr/local/lib"; \
fi
RUN ldconfig
# Copy AOM binaries to system PATH
RUN cp -f aomenc aomdec /usr/local/bin/
# Test AOM works before cleaning up
RUN aomenc --help > /dev/null && echo "AOM encoder working" || echo "AOM encoder test failed"
# Clean up AOM source
WORKDIR /tmp
RUN rm -rf /tmp/aom
# Build VMAF
WORKDIR /tmp
RUN git clone https://github.com/Netflix/vmaf.git
WORKDIR /tmp/vmaf
RUN git checkout v3.0.0
RUN make clean
RUN make ENABLE_NVCC=true
RUN make install
RUN make clean
# Clean up VMAF source
WORKDIR /tmp
RUN rm -rf /tmp/vmaf
# Set default command
#CMD ["/usr/local/bin/vmaf"]
RUN dnf install -y epel-release
RUN dnf makecache --refresh
RUN dnf -y install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm && \
dnf config-manager --set-enabled crb
RUN dnf install -y ffmpeg rust clang
RUN git clone https://github.com/Line-fr/Vship.git
RUN cd Vship && make buildcudaall && make install
#RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y
ENV PATH="/root/.cargo/bin:${PATH}"
RUN git clone https://github.com/master-of-zen/Av1an
RUN dnf install -y epel-release && dnf makecache --refresh
RUN dnf install -y vapoursynth-libs vapoursynth-devel python3-vapoursynth zimg zimg-devel
RUN ldconfig
RUN cd Av1an && cargo build --release
RUN mv /tmp/Av1an/target/release/av1an /bin/
CMD ["/bin/bash"]
I'm very sorry for giving out a very dirty, partially ai-slopped Dockerfile, just tried to make it out as fast as possible.
So, for some reason, av1an doesn't give any logs nor output into terminal, but via htop i was able to see it's invoking ffprobe
Here's the cmd I've attempted to run:
sudo docker build -t "av1an-vmaf-cuda" .sudo docker run -v $(pwd):/tmp/ --gpus all -it --rm docker.io/library/av1an-vmaf-cuda av1an -i Movie.mkv -s scenes.txt -o output_480p_vmaf.aom.av1 -e aom --target-quality 95-98 --target-metric vmaf --video-params "--cpu-used=3 --aq-mode=3 --kf-max-dist=360" --probe-video-params "--cpu-used=8 --aq-mode=3 --kf-max-dist=360" -f "scale=854:480" --probes 4 --qp-range 15-45 --vmaf-res "854:480" -c ffmpeg -yAny help is gonna be appreciated. It's very sad that there's no any image of av1an with vmaf-cuda nor ssimulacra2
Here's the Docker image and Dockerfile: (WARNING: building this Dockerfile would result around 16Gb docker image)