Files
rkKVM/Dockerfile.ffmpeg-alpine

55 lines
1.9 KiB
Docker

FROM alpine as ffmpeg
RUN apk add --no-cache \
autoconf \
automake \
g++ \
make \
gcc \
libc-dev \
libtool \
pkgconfig \
texinfo \
zlib-dev \
yasm \
coreutils \
nasm \
bash \
cmake \
git \
libdrm-dev ninja-build meson v4l-utils-dev wget build-base bsd-compat-headers musl-dev alsa-lib-dev
RUN mkdir -p ~/dev && cd ~/dev && \
git clone -b jellyfin-mpp --depth=1 https://github.com/nyanmisaka/mpp.git rkmpp && \
#git clone --depth=1 https://github.com/rockchip-linux/mpp.git rkmpp && \
cd rkmpp && mkdir rkmpp_build && cd rkmpp_build && \
sed -i '/#include <errno.h>/a #include <cstdint>' ~/dev/rkmpp/mpp/vproc/vdpp/test/hwpq_test.cpp && \
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_TEST=OFF \
-DVDPP_TEST=OFF \
.. && \
make -j $(nproc) && \
make install
RUN mkdir -p ~/dev && cd ~/dev && \
git clone -b jellyfin-rga --depth=1 https://github.com/nyanmisaka/rk-mirrors.git rkrga && \
sed -i '/#include "im2d_api\/im2d.h"/a #define mmap64 mmap' rkrga/core/RockchipRga.cpp && \
meson setup rkrga rkrga_build \
--prefix=/usr \
--libdir=lib \
--buildtype=release \
--default-library=shared \
-Dcpp_args=-fpermissive \
-Dlibdrm=false \
-Dlibrga_demo=false && \
meson configure rkrga_build && \
ninja -C rkrga_build install
RUN mkdir -p ~/dev && cd ~/dev && \
git clone --depth=1 https://github.com/nyanmisaka/ffmpeg-rockchip.git ffmpeg && cd ffmpeg && \
./configure --prefix=/usr --enable-indev=v4l2 --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga --enable-protocol=http --enable-protocol=tcp --enable-alsa \
#--enable-libx264 --enable-libvpx \
&& \
make -j $(nproc) && make install