Skip to content

v0.3.8 — hard clips: publish video --clip-only

Choose a tag to compare

@kdr kdr released this 03 Jul 07:35
· 21 commits to main since this release
fb0b313

tinycloud 0.3.8 adds hard clips for published video moments: alongside the existing soft "back to moment" window, you can now share a link (or embed) that plays only the moment — the stream itself is trimmed, so the seek bar is the clip.

✨ New: publish video --clip-only

Add --clip-only to a --clip-start/--clip-end window and data.moment_url gains &clip=hard — the share page plays only [clip-start, clip-end] instead of the full recording with a soft overlay.

tinycloud publish video ./demo.mp4 --clip-start 18 --clip-end 33 --clip-only --json
# → data.moment_url = https://…/share/…?s=18&e=33&clip=hard
  • Requires both clip flags — --clip-only without a full window is rejected before anything uploads.
  • The flag rides the pending → re-run flow, so a share that's still processing returns the hard-clip URL once it's ready.
  • The same suffix works hand-built on an existing share: append &clip=hard to a ?s=&e= moment link.
  • Viewing experience, not access control — the underlying asset is still one request away; use --visibility private to actually restrict access.

New capability flag: publish.video.moment.hard.v1 (so agent skills can preflight before passing a flag older binaries reject).

✨ <cg-video> embed v6: clip-only

The site embed gains a matching clip-only attribute, honored alongside a valid clip-start/clip-end pair:

<cg-video share-id="…" clip-start="18" clip-end="33" clip-only></cg-video>

The timeline is re-based to the clip (no badge, region strip, or "back to moment" pill — there's nothing to scrub back to). Older embed scripts and share pages ignore clip-only / &clip=hard and degrade gracefully to the soft window, so nothing breaks mid-rollout.

Install / upgrade

npm install -g @cloudglue/tinycloud@latest    # or: tinycloud update
# or
curl -fsSL https://app.cloudglue.dev/tinycloud.sh | bash

The launcher downloads and checksum-verifies the matching platform binary on first run (darwin-arm64/x64, linux-x64/arm64).