add audio support, trying to manage MSD device
This commit is contained in:
18
Dockerfile
18
Dockerfile
@@ -1,3 +1,4 @@
|
||||
# currently where is no own frontend, so we have to take NanoKVM UI
|
||||
FROM node:20-alpine as frontend
|
||||
ENV PNPM_HOME="/pnpm"
|
||||
ENV PATH="$PNPM_HOME/bin:$PATH"
|
||||
@@ -6,19 +7,18 @@ RUN apk add --update python3 make g++ git && rm -rf /var/cache/apk/*
|
||||
COPY ./NanoKVM/web /web
|
||||
RUN cd /web && pnpm install && pnpm build
|
||||
RUN mv /web/dist /static
|
||||
#RUN git clone https://github.com/sipeed/nanokvm
|
||||
#RUN git clone -b rkkvm https://github.com/argakon/nanokvm
|
||||
#RUN cd nanokvm/web && pnpm install && pnpm build
|
||||
#RUN mv nanokvm/web/dist /static
|
||||
|
||||
|
||||
|
||||
FROM golang:alpine as backend
|
||||
RUN apk add --no-cache git portaudio-dev
|
||||
RUN apk add --no-cache git
|
||||
COPY . /app
|
||||
WORKDIR /app
|
||||
RUN go mod download
|
||||
RUN go build -o ./bin/ ./cmd/...
|
||||
|
||||
# we would use ffmpeg-rockchip from nyanmisaka with rockchip's mpp support
|
||||
FROM alpine as ffmpeg
|
||||
RUN apk add --no-cache \
|
||||
autoconf \
|
||||
@@ -37,13 +37,13 @@ RUN apk add --no-cache \
|
||||
bash \
|
||||
cmake \
|
||||
git \
|
||||
libdrm-dev ninja-build meson v4l-utils-dev wget build-base bsd-compat-headers musl-dev
|
||||
libdrm-dev ninja-build meson v4l-utils-dev wget build-base bsd-compat-headers musl-dev alsa-lib-dev libvpx-dev libopusenc-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 && \
|
||||
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 \
|
||||
@@ -70,8 +70,7 @@ RUN mkdir -p ~/dev && cd ~/dev && \
|
||||
|
||||
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-libx264 --enable-libvpx \
|
||||
./configure --prefix=/usr --enable-indev=v4l2 --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga --enable-alsa --enable-libvpx --enable-libopus \
|
||||
&& \
|
||||
make -j $(nproc) && make install
|
||||
|
||||
@@ -80,11 +79,10 @@ FROM pikvm/ustreamer:latest as ustreamer
|
||||
|
||||
FROM alpine
|
||||
RUN apk add --no-cache portaudio alsa-utils \
|
||||
libevent libjpeg-turbo libgpiod libbsd v4l-utils libdrm
|
||||
libevent libjpeg-turbo libgpiod libbsd v4l-utils libdrm libvpx libopusenc
|
||||
|
||||
COPY --from=frontend /static /app/static
|
||||
COPY --from=backend /app/bin/kvm /app/kvm
|
||||
COPY --from=backend /app/bin/webrtc /app/webrtc
|
||||
COPY --from=ustreamer /ustreamer/ustreamer /app/ustreamer
|
||||
COPY --from=ffmpeg /usr/lib/librga.* /usr/lib
|
||||
COPY --from=ffmpeg /usr/lib/librockchip_mpp.* /usr/lib
|
||||
|
||||
Reference in New Issue
Block a user