Dockerfile with mxl-gst-tools & stats window height fix
This commit is contained in:
@@ -10,11 +10,10 @@ video and ImGui rendering; and
|
|||||||
[`go-mxl`](https://github.com/qvest-digital/go-mxl) for MXL access.
|
[`go-mxl`](https://github.com/qvest-digital/go-mxl) for MXL access.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> This project is under active development. Source builds have been verified
|
> This project is under active development. Builds and feed playback have been
|
||||||
> on current Ubuntu and Fedora environments, and the player has also been
|
> verified in current Ubuntu and Fedora environments and on a separate Ubuntu
|
||||||
> tested on a separate Ubuntu machine. macOS builds are in progress; native
|
> machine. macOS builds are in progress; native playback testing and packaging
|
||||||
> playback testing and packaging are still pending. Stable releases and MXL
|
> are still pending. Stable releases and MXL Fabrics support are planned.
|
||||||
> Fabrics support are planned.
|
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
@@ -64,9 +63,9 @@ Verified source-build environments:
|
|||||||
|
|
||||||
| Environment | Result | Required distribution packages |
|
| Environment | Result | Required distribution packages |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| Ubuntu (`ubuntu:latest`, Distrobox) | Build successful | `golang`, `libsdl3-dev`, `spdlog-dev` |
|
| Ubuntu (`ubuntu:latest`, Distrobox) | Build and feed playback successful | `golang`, `libsdl3-dev`, `spdlog-dev` |
|
||||||
| Fedora (`fedora:latest`, Distrobox) | Build successful | `golang`, `SDL3-devel`, `spdlog-devel`, `g++` |
|
| Fedora (`fedora:latest`, Distrobox) | Build and feed playback successful | `golang`, `SDL3-devel`, `spdlog-devel`, `g++` |
|
||||||
| Ubuntu, separate physical machine | Build and player testing completed | SDL3, compiler toolchain, and a compatible libmxl installation |
|
| Ubuntu, separate physical machine | Build and feed playback successful | SDL3, compiler toolchain, and a compatible libmxl installation |
|
||||||
|
|
||||||
These checks used an existing shared libmxl installation with
|
These checks used an existing shared libmxl installation with
|
||||||
`PKG_CONFIG_PATH` pointing to a valid `libmxl.pc`. Package names can differ
|
`PKG_CONFIG_PATH` pointing to a valid `libmxl.pc`. Package names can differ
|
||||||
@@ -452,8 +451,8 @@ local MXL flow; it will not be implemented as a separate playback backend. See
|
|||||||
|
|
||||||
## Known limitations
|
## Known limitations
|
||||||
|
|
||||||
- Linux builds have been verified on Ubuntu and Fedora; broader runtime and
|
- Linux builds and feed playback have been verified on Ubuntu and Fedora;
|
||||||
hardware coverage is still limited.
|
broader runtime and hardware coverage is still limited.
|
||||||
- macOS/MoltenVK support is not yet release-tested.
|
- macOS/MoltenVK support is not yet release-tested.
|
||||||
- Windows support is not currently claimed.
|
- Windows support is not currently claimed.
|
||||||
- GPU selection and verbose logging flags are incomplete.
|
- GPU selection and verbose logging flags are incomplete.
|
||||||
|
|||||||
@@ -502,7 +502,7 @@ func main() {
|
|||||||
// ImGui
|
// ImGui
|
||||||
var (
|
var (
|
||||||
statsWindowWidth float32 = 460
|
statsWindowWidth float32 = 460
|
||||||
statsWindowHeight float32 = 510
|
statsWindowHeight float32 = 550
|
||||||
settingWindowWidth float32 = 700
|
settingWindowWidth float32 = 700
|
||||||
settingsWindowState bool = true
|
settingsWindowState bool = true
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -0,0 +1,39 @@
|
|||||||
|
FROM debian:trixie-slim
|
||||||
|
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends \
|
||||||
|
gstreamer1.0-x \
|
||||||
|
gstreamer1.0-tools \
|
||||||
|
gstreamer1.0-plugins-base \
|
||||||
|
gstreamer1.0-plugins-good \
|
||||||
|
gstreamer1.0-plugins-bad \
|
||||||
|
gstreamer1.0-libav \
|
||||||
|
libgstreamer1.0-0 \
|
||||||
|
libgstreamer-plugins-base1.0-0 \
|
||||||
|
libstdc++6 \
|
||||||
|
fontconfig \
|
||||||
|
fonts-dejavu-core \
|
||||||
|
&& fc-cache -f \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
COPY build/Linux-GCC-Release /mxl
|
||||||
|
|
||||||
|
RUN cp -a /mxl/lib/libmxl.so* /usr/local/lib/ \
|
||||||
|
&& ldconfig \
|
||||||
|
&& install -m 0755 \
|
||||||
|
/mxl/tools/mxl-gst/mxl-gst-testsrc \
|
||||||
|
/mxl/tools/mxl-gst/mxl-gst-looping-filesrc \
|
||||||
|
/usr/local/bin/ \
|
||||||
|
&& mkdir -p /flow-configs /dev/shm/mxl \
|
||||||
|
&& cp -a /mxl/lib/tests/data/. /flow-configs/ \
|
||||||
|
&& useradd --uid 1000 --create-home --shell /usr/sbin/nologin mxl \
|
||||||
|
&& mkdir -p /home/mxl/.cache/fontconfig \
|
||||||
|
&& chown -R mxl:mxl /home/mxl /dev/shm/mxl
|
||||||
|
|
||||||
|
ENV HOME=/home/mxl \
|
||||||
|
XDG_CACHE_HOME=/home/mxl/.cache
|
||||||
|
|
||||||
|
USER mxl
|
||||||
|
WORKDIR /flow-configs
|
||||||
|
|
||||||
|
CMD ["mxl-gst-testsrc", "--help"]
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
## build
|
||||||
|
docker build --no-cache -f ./docker/gst-tools/Dockerfile -t mxl-gst-tools ~/extra/mxl/
|
||||||
|
## run
|
||||||
|
docker run --rm -it --mount type=bind,src=/dev/shm/mxl-2,dst=/dev/shm/mxl mxl-gst-tools mxl-gst-testsrc -d /dev/shm/mxl -v /flow-configs/v210_flow.json -a /flow-configs/audio_flow.json
|
||||||
Reference in New Issue
Block a user