Skip to content

Releases: stoatworks-labs/weblinked

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 31 Jul 20:13

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

WebLinked Launcher — optional tray app (WebLinked Launcher_*). It starts and
stops WebLinked, lets you pick which network interface the control page binds to,
and opens it in your browser. WebLinked itself has no window: it is a render host
and a control server, and the control page is the whole UI. The launcher expects
WebLinked already installed — macOS /Applications, Windows C:\Program Files\ WebLinked, Linux on PATH.

Output backends in these builds: NDI, OMT and the preview. The NDI SDK headers
are vendored and the runtime is bundled into the artefact, so NDI works on a machine
that has never installed it. DeckLink and AJA are located with find_package and
silently disabled when their SDKs are absent, which they are on hosted runners —
build locally with those SDKs installed to get SDI out. See docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.6.0...v0.6.1

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 18:35

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

WebLinked Launcher — optional tray app (WebLinked Launcher_*). It starts and
stops WebLinked, lets you pick which network interface the control page binds to,
and opens it in your browser. WebLinked itself has no window: it is a render host
and a control server, and the control page is the whole UI. The launcher expects
WebLinked already installed — macOS /Applications, Windows C:\Program Files\ WebLinked, Linux on PATH.

Output backends in these builds: NDI, OMT and the preview. The NDI SDK headers
are vendored and the runtime is bundled into the artefact, so NDI works on a machine
that has never installed it. DeckLink and AJA are located with find_package and
silently disabled when their SDKs are absent, which they are on hosted runners —
build locally with those SDKs installed to get SDI out. See docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.5.2...v0.6.0

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 31 Jul 16:44

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

Output backends in these builds: NDI, OMT and the preview. The NDI SDK headers are
vendored and the runtime is bundled into the artefact, so NDI works on a machine that has
never installed it. DeckLink and AJA are located with find_package and silently disabled
when their SDKs are absent, which they are on hosted runners — build locally with those SDKs
installed to get SDI out. See docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.5.1...v0.5.2

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 31 Jul 13:08

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

Output backends in these builds: OMT only. NDI and DeckLink are located with
find_package and silently disabled when their SDKs are absent, which they are on
hosted runners. Build locally with the SDKs installed to get those backends — see
docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.5.0...v0.5.1

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 12:56

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

Output backends in these builds: OMT only. NDI and DeckLink are located with
find_package and silently disabled when their SDKs are absent, which they are on
hosted runners. Build locally with the SDKs installed to get those backends — see
docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 11:43

Several sources in one process

--config show.json starts any number of independent pipelines. Each is a whole
engine of its own — its own browser, its own clock, its own raster and its own
outputs — and they share nothing but Chromium's process, so a page that hangs, a
card that will not open or a raster change on one source cannot touch the others.

The control page grows a strip along the top with a live thumbnail per source. It
hides itself when there is only one, so a command-line launch looks exactly as it
did before.

Addressing is optional everywhere: HTTP verbs take ?source=<id>, OSC takes
/weblinked/source/<id>/<verb>, and without either the request goes to the first
source. Everything that drove a single-source WebLinked still does, unchanged.

How many sources a machine can carry is a property of that machine, not a
setting.
Three sources at 1080p50 + 720p50 + 1080p25 drop about 4% of frames on
an M4 Max — an independent receiver measures 46.27 fps against a nominal 50 —
while the same three at 720p25 drop 3 ticks in 1134. Measure it where the show
will run. docs/04-verification.md gives the numbers and the method.

Fixed: OSC dropped a quarter of all messages

This bug shipped in v0.3.0. The packet decoder double-counted a string's NUL
terminator, so any string whose length was 3 mod 4 ran past the end of the packet
and the whole message was discarded silently. /weblinked/url worked for most
URLs and did nothing at all for the rest. If you drive WebLinked over OSC, this
release is worth taking.


macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

Output backends in these builds: OMT only. NDI and DeckLink are located with
find_package and silently disabled when their SDKs are absent, which they are on
hosted runners. Build locally with the SDKs installed to get those backends — see
docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: v0.3.0...v0.4.0

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 05:33

macOS.pkg installs WebLinked into /Applications; .dmg lets you drag it.
Apple Silicon only: CEF's binary distribution is per-architecture, so an Intel or
universal build needs a second distribution and a lipo pass.

Windows-setup.exe installs with shortcuts; .zip is portable. x86_64.

Linux — portable .tar.gz, x86_64.

Output backends in these builds: OMT only. NDI and DeckLink are located with
find_package and silently disabled when their SDKs are absent, which they are on
hosted runners. Build locally with the SDKs installed to get those backends — see
docs/02-building.md.

Verification status is in docs/04-verification.md: NDI has been confirmed
end-to-end against a real receiver; DeckLink, AJA and OMT compile against the real
SDKs but have never been run against hardware.

Only the macOS build has ever been run. This is the first release in which
Windows and Linux compile at all, and compiling is all they have done — neither
binary has been launched, so treat those two as untested rather than merely
unsigned. Everything measured in docs/04-verification.md was measured on macOS
arm64.

Builds are unsigned. On macOS, after installing:

xattr -dr com.apple.quarantine "/Applications/WebLinked.app"

That step matters more here than usual — the app nests five CEF helper .apps, and
approving the outer bundle does not unquarantine them. A quarantined helper is
killed silently and looks like the renderer simply failing to start.

Full Changelog: https://github.com/stoatworks-labs/weblinked/commits/v0.3.0