Screen Studio Lite

RecordDeck

Cut a nine-minute terminal recording to ninety seconds without re-recording it.

Free right now — no account, no card

Get RecordDeck free Windows & Mac · one file, nothing to install

Preview

1 interface design, then a screenshot of it running. Drag, scroll or use the arrows.

Interface design RecordDeck, 1 of 1
Screenshot RecordDeck running on Windows today

Free while we’re in preview

Get RecordDeck

Cut a nine-minute terminal recording to ninety seconds without re-recording it.

The Mac button is for Apple Silicon. On an older Intel Mac, get this one instead.

One file, both ways. Double-click it for the window. Run the same file from a command prompt with arguments and it behaves as the command-line tool, because the engine is inside it. Nothing else to download and nothing to keep beside it.

Early preview. The window has been built and run, but not yet on a real Windows PC or Mac, so expect rough edges. The engine underneath it is fully tested.

  • One file — no installer
  • Runs on your machine, offline
  • Source code published below

Free while in preview. It isn’t signed yet, so Windows or macOS will ask you to confirm the first time you open it. At launch, RecordDeck is included in every plan along with the rest of the range.

Five operations

cut removes a range and closes the gap. trim keeps one window and rebases it to zero. speed scales a range by an exact factor. hold freezes the picture. And gap --max 1.2 collapses every dead pause longer than 1.2 seconds, which on a real recording does most of the work on its own.

Every time refers to the source timeline, so adding an operation at the top of your edit list never forces you to recompute the ones underneath. Run preview first: it draws the source and edited timelines as two text rulers, prints the exact resulting duration, and writes nothing.

Two things it takes seriously

Time is carried as exact rationals, never float64. There is one rounding in the whole program, applied once per timestamp at write time, so error cannot accumulate across a hundred thousand events.

Cutting also doesn’t wreck the picture. The removed bytes are replayed through a cursor and colour state model, and a synthetic escape sequence goes in at the cut point so everything after it still renders where it expects to. Preview lists each one before you commit.

It edits when things happened, never what was printed. No audio, no video formats, no recording, no GUI timeline. Input is a SessionForge cast and so is the output.

Reading on the job itself

Advanced & technical details Command-line builds, source code, checksums and a recorded session — for developers and IT teams

A working command-line build of the timeline editor: cuts, trims, speed ramps, holds and dead-pause collapsing, with every timestamp held as an exact rational and quantised once at write time so a chain of edits lands on the duration you predicted rather than near it. Where a cut removes output it replays the removed region through a terminal-state model and emits a synthetic escape sequence so the surviving recording still renders correctly. The original file is never modified. It edits recordings; it does not capture them.

Naming status

Working name only — brand verdict **CAUTION** (Medium). Collision: Record Deck. Possible, but weakly ownable and expensive exact .com.

What it draws on

Existing paid software whose best ideas shaped this program: Bandicam, Snagit, FastStone Capture, Action! Screen Recorder.

Command line

There is nothing extra to install. The program you download is the command-line tool as well: give it arguments instead of double-clicking it and it runs as one, with its output on your terminal. The standalone builds below are the same engine on its own, for machines where you would rather not ship a window at all.

recorddeck - the edit pass for a terminal recording (Techlosoft Screen Studio Lite)

USAGE
  recorddeck info    <cast.jsonl> [--top N] [--json]
  recorddeck preview <cast.jsonl> [--edl <file>] [--op "cut 12-20"]... [--width N] [--json]
  recorddeck apply   <cast.jsonl> --out <new.jsonl> [--edl <file>] [--op "..."]... [--force] [--json]
  recorddeck help | -h | --help | version

COMMANDS
  info     What is in this recording: duration, event count, byte volume, the
           longest dead pauses with their timestamps, what collapsing them would
           save, and a ready-to-paste EDL an editor would plausibly start from.
  preview  Resolve an EDL against a cast and print the resulting timeline as a
           text ruler. Reads only; writes no files.
  apply    Write a NEW cast with the edit applied. The input is opened read only
           and is never modified. An existing --out is refused unless --force.

EDIT DECISION LIST
  --edl <file>   An EDL, either JSON or the compact command form (auto-detected).
  --op "<text>"  One compact-form operation, repeatable, applied after --edl.

  cut   A-B                 remove a source range and close the gap
  trim  --start A --end B   keep only this window, rebased to zero
  speed A-B xN              play a range N times faster (exact rational)
  hold  AT --for D          freeze the picture at AT for D
  gap   --max D             collapse EVERY dead pause longer than D down to D

  Times: 12, 12.5, 12.5s, 500ms, 250us, 2m, 1:30, 1:30.250, 0:01:05.
  Ranges may be written A-B or A..B. Factors may be 4, x4, *4 or 3/2.

  Ranges are in SOURCE time (the timestamps in the input file), so an EDL never
  has to be recomputed as you add operations above it. Ranges must be listed in
  ascending order and must not overlap; either mistake is an error, not a guess.

FLAGS
  --out <file>   Output cast for apply. Required. Never the input file.
  --force        Overwrite an existing --out. Off by default.
  --top N        How many pauses info should list. Default 5.
  --width N      Ruler width in columns for preview. Default 64.
  --json         Machine-readable output. Accepted by info, preview and apply.
...

Recorded from the shipped binary, not written by hand.

Source

Every file the program is built from:

ansi.go · cast.go · console.go · console_test.go · edl.go · guided.go · main.go · main_test.go · timeline.go

SHA-256 checksums · build instructions & scope notes · full build plan