diff --git a/services/capture/Dockerfile b/services/capture/Dockerfile index 4419314..a859fb4 100644 --- a/services/capture/Dockerfile +++ b/services/capture/Dockerfile @@ -1,6 +1,6 @@ # ── Stage 0: Extract Deltacast VideoMaster SDK ─────────────────────────── FROM debian:bookworm AS sdk-extractor -COPY videomaster-linux.x64-6.34.1-dev.tar.gz /tmp/ +COPY services/capture/videomaster-linux.x64-6.34.1-dev.tar.gz /tmp/ RUN mkdir -p /sdk && tar -xzf /tmp/videomaster-linux.x64-6.34.1-dev.tar.gz -C /sdk # ── Stage 1: Build deltacast-capture bridge binary ─────────────────────── @@ -9,7 +9,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential cmake ca-certificates \ && rm -rf /var/lib/apt/lists/* COPY --from=sdk-extractor /sdk /sdk -COPY deltacast-bridge/ /bridge/ +COPY services/capture/deltacast-bridge/ /bridge/ RUN cmake -S /bridge -B /bridge/build \ -DCMAKE_BUILD_TYPE=Release \ -DSDK_ROOT=/sdk \ @@ -24,7 +24,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential cmake libmicrohttpd-dev \ && rm -rf /var/lib/apt/lists/* COPY fc_client /fc-src/client -COPY deltacast-bridge /fc-src/src/slot.h # (copy from existing location) +COPY services/capture/deltacast-bridge /fc-src/src/slot.h # (copy from existing location) RUN cmake -S /fc-src -B /fc-src/build \ -DCMAKE_BUILD_TYPE=Release \ && cmake --build /fc-src/build --target fc_pipe -j$(nproc) @@ -35,12 +35,12 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential cmake ca-certificates g++ \ && rm -rf /var/lib/apt/lists/* # DeckLink SDK headers (for IDeckLinkInput etc.) -COPY sdk/ /decklink-sdk/ +COPY services/capture/sdk/ /decklink-sdk/ # Shared fc_writer module from deltacast-bridge -COPY deltacast-bridge/fc_writer.h /fc_writer/fc_writer.h -COPY deltacast-bridge/fc_writer.c /fc_writer/fc_writer.c +COPY services/capture/deltacast-bridge/fc_writer.h /fc_writer/fc_writer.h +COPY services/capture/deltacast-bridge/fc_writer.c /fc_writer/fc_writer.c # decklink-bridge source -COPY decklink-bridge/ /decklink-bridge/ +COPY services/capture/decklink-bridge/ /decklink-bridge/ RUN cmake -S /decklink-bridge -B /decklink-bridge/build \ -DCMAKE_BUILD_TYPE=Release \ -DDECKLINK_SDK_DIR=/decklink-sdk \ @@ -64,9 +64,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ && rm -rf /var/lib/apt/lists/* # Copy in BMD DeckLink SDK headers and patch script -COPY sdk/ /decklink-sdk/ -COPY patch_decklink.py /patch_decklink.py -COPY decklink-sdk16.patch /decklink-sdk16.patch +COPY services/capture/sdk/ /decklink-sdk/ +COPY services/capture/patch_decklink.py /patch_decklink.py +COPY services/capture/decklink-sdk16.patch /decklink-sdk16.patch # nv-codec-headers — just the ffnvcodec public headers + a pkg-config file. # Pin to a tag known to work with FFmpeg 7.1 (n12.x series). @@ -161,8 +161,8 @@ COPY --from=ffmpeg-builder /usr/local/bin/ffprobe /usr/local/bin/ffprobe COPY --from=ffmpeg-builder /usr/local/lib/ /usr/local/lib/ # DeckLink runtime .so -COPY lib/libDeckLinkAPI.so /usr/lib/libDeckLinkAPI.so -COPY lib/libDeckLinkPreviewAPI.so /usr/lib/libDeckLinkPreviewAPI.so +COPY services/capture/lib/libDeckLinkAPI.so /usr/lib/libDeckLinkAPI.so +COPY services/capture/lib/libDeckLinkPreviewAPI.so /usr/lib/libDeckLinkPreviewAPI.so # bmx (raw2bmx / bmxtranswrap / mxf2raw) — the growing OP1a MXF writer used for # the edit-while-record master. Copy the built binaries + shared libs; runtime