hw: add draft rockchip-mpp hw video encoding

This commit is contained in:
Artem
2024-11-19 22:08:12 +01:00
parent c5f77df6b0
commit fc2273d40b
9 changed files with 429 additions and 32 deletions

View File

@@ -12,11 +12,26 @@ RUN mv /web/dist /static
#RUN mv nanokvm/web/dist /static
FROM golang:alpine as backend
RUN apk add --no-cache git
RUN apk add --no-cache git v4l-utils-dev build-base musl-dev gcc g++ make libc-dev linux-headers \
git cmake
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
COPY . /app
WORKDIR /app
RUN go mod download
RUN go build -o ./bin/ ./cmd/...
RUN CGO_ENABLED=1 go build -o ./bin/ ./cmd/...
# we would use ffmpeg-rockchip from nyanmisaka with rockchip's mpp support
FROM alpine as ffmpeg
@@ -74,7 +89,6 @@ RUN mkdir -p ~/dev && cd ~/dev && \
&& \
make -j $(nproc) && make install
FROM pikvm/ustreamer:latest as ustreamer
FROM alpine