Skip to content

Deckboy v0.83.0

Choose a tag to compare

@Utopian-Academy Utopian-Academy released this 08 Aug 18:03
· 235 commits to main since this release

Portable builds for Windows, macOS and Linux. Unzip and run — no installer.

This is the first release since v0.81.4 and it carries three versions of work
(0.82.0, 0.82.1 and 0.83.0), which were committed but never published.

Downloads

Platform File Notes
Windows x64 Deckboy-0.83.0-windows-x64.zip Unzip, run Deckboy.exe
macOS Apple Silicon Deckboy-0.83.0-macos-arm64.zip Unzip, run Deckboy.app — see note below
Linux x86_64 Deckboy-0.83.0-linux-x86_64.tar.gz Extract, run ./deckboy

macOS is arm64 only (M1/M2/M3/M4) and is ad-hoc signed rather than
notarized, so a browser download is quarantined. Clear it once:

xattr -dr com.apple.quarantine Deckboy.app

SMPTE ST 2110 + AMWA NMOS

An ST 2110 stream is undiscoverable on its own — previously the only way a
receiver learned about a Deckboy flow was an operator copying an SDP by hand.

  • ST 2110-20 uncompressed video and ST 2110-30 (AES67) audio output
  • PTP (IEEE 1588 / ST 2059) media clock slaving
  • NMOS IS-04 registration and Node API, IS-05 connection management, so a
    broadcast controller can discover Deckboy's senders and route them

Verified against AMWA's own NMOS Testing Tool (IS-05-01): 36 pass, 2 fail —
both failures being a deliberate refusal of scheduled activation, which needs the
PTP clock to gate the switch. Also verified end to end against the nmos-cpp
reference registry on a separate machine, which fetched the SDP over the LAN and
moved the multicast group by IS-05 PATCH.

Still EXPERIMENTAL, and the UI says so: the packetiser is conformant but is
not narrow-model paced (that needs hardware pacing), and NMOS discovery is by
configured registry URL rather than mDNS.

Other new things

  • LTC timecode generator, individually routable to its own device and channel
    — timecode in the programme mix is a buzzsaw
  • SRT and RTMP simultaneously, configured independently rather than one or
    the other
  • Portable macOS and Linux builds to match the Windows zip
  • Crash logs on macOS and Linux. The crash handler was Windows-only, so a
    crash elsewhere left nothing at all behind. Now writes deckboy-crash.log
    with a symbolised stack next to the app

Fixes worth knowing about

  • The pocket-test card was thrashing the machine. Its cache was keyed only on
    raster size, so two pattern engines at different rasters invalidated it on
    every call — a full reallocation plus redraw twice per frame. Committed memory
    swung between ~13 and ~39 GB and paged the whole system. It presented as
    "pocket-test is laggy" and, more misleadingly, as "my computer is slow".
  • Bundled ffmpeg was unreachable off Windows. The app spawns helpers by bare
    name, which on POSIX searches PATH only — so a portable bundle shipped an
    ffmpeg it could never find. Fixed, and CI now proves it with PATH cleared.
  • Text truncation on Linux. Several widgets sized themselves with pixel
    constants tuned to Segoe UI, so wider Linux fonts ellipsized OUTPUT to
    OUTP... and PASTE to PAS.... They now measure the text.
  • macOS claimed Syphon support it did not have — the texture-share output
    reported "supported" and discarded every frame. It now reports honestly.

Platform differences

Not everything is on every platform, and the app reports what is missing rather
than failing quietly:

  • Browser cues: Windows (WebView2) and Linux (headless Chromium). macOS is a
    scaffold and they do not run.
  • Spout: Windows only. Syphon is not implemented on macOS.
  • Camera / window capture: Windows (DirectShow / gdigrab) and Linux (V4L2 /
    x11grab). The macOS backends are scaffolds.
  • GPU zero-copy decode: Windows only (D3D11VA). Other platforms decode on the
    CPU.

Honest caveat on the macOS build

The macOS bundle passes automated checks on a real Apple Silicon runner — no
Homebrew paths leak into it, its signature validates, and it runs its self-check
and smoke tests from inside the bundle. But its window has never been opened by
a human
. Treat this one as a first cut and report anything that looks wrong.

Full detail in CHANGES.md.