Guides

Local video and media

Your onboard footage playing in step with the numbers, on a timeline you can scrub — without a single byte of it leaving the machine it is sitting on.

1 The promise, before anything else

Local files never leave this device. Nordic Stars keeps the metadata your team needs — the filename, the capture time, the alignment, the lane, a short fingerprint — and none of the video.

That is not a setting; it is how the feature is built. There is no upload for media, so there is nothing to switch off and no bandwidth to plan for. A four-hour 4K day attaches as fast as a text file.

What it costs you is the one thing worth knowing up front: your teammates cannot watch your video. They see the record on the timeline, they see how it is aligned, and if they hold their own copy of the same file it plays for them — matched by content, not by filename, so a renamed copy still lines up. If you want something everyone can watch, section 10 is the YouTube path.

2 Attaching files

In the player’s topbar, the pill marked Attach local media. Click it to browse, or drag files straight onto it.

KindExtensions
video.mp4 .mov .m4v .lrv
audio.mp3 .m4a .wav .aac
photo.jpg .jpeg .png .webp

.lrv is included on purpose: Insta360 writes its low-resolution proxies with that extension and they are ordinary MP4 files behind it. Attach the proxies for a quick debrief and the full-resolution files when you want detail — they are two independent records, not two halves of one.

HEIC and HEIF are refused, and the row says why: browsers cannot decode them. Convert to JPG first. A file the browser cannot play for some other reason — HEVC from a drone or an action camera without hardware decoding — gets the same treatment: it is listed, with the reason on it, rather than silently vanishing.

After a pick you get a one-line report — how many clips were attached, how many were newly registered for the team, how many were matched to records that already existed — and the list, Local media on this device, opens under the pill so you can see what landed.

Attaching does not sort anything. New files register into Unsorted and a file that matches a record already on the boat keeps the lane and the alignment that record has. Lanes are set in the Media Manager — section 8.

Where the start time comes from

Every attachment gets a badge saying how its start time was worked out, best evidence first:

  • filename — the file carries an _NS_SESSION_ stamp put there by a previous session. Exact, and instant.
  • remembered — this browser has aligned this exact file before.
  • exif — a photo’s own capture time.
  • chained — a camera’s continuation file, timed from the clip before it.
  • guess — nothing better was available, so the file’s modification time was used. These carry a warning glyph until you align them.
  • manual — you set it.

On any row that is aligned but not yet stamped, Rename writes the alignment into the filename on disk (with Copy as the fallback when the browser will not). Do that once and the file aligns itself instantly for ever after, on any machine, for anyone.

3 The mosaic

The Video panel holds one to four panes. Pick a layout from the pills in its header: 1-up, 2-up side, 2-up stack, 2×2 or 1+3.

Each pane has a selector for what it shows:

  • All clips (auto-swap) — the default. The pane plays whichever clip covers the cursor and hands over to the next as the timeline crosses into it.
  • A lane — under Lanes, each lane that holds video, with how many files are in it: Drone · 10 videos. The pane plays that lane and nothing else, one file after another, skipping the gaps between them. This is the answer to ten drone clips and no wish to pick them out one at a time.
  • A named clip — under Videos, pinned. Useful beside auto-swap: one pane following the day, one locked on the mast cam. Picking one is also how you let a lane go.
  • — no video — — empty. Still useful: the HUD numbers render on an empty pane, so this is how you get a panel of instruments beside the video.

Panes carry their own mute and volume, and start muted. They also pop out and go fullscreen — The debrief player covers the window controls. Shrink the layout and any popped-out pane that no longer has a home docks itself rather than being orphaned.

4 Aligning by hand

A camera’s clock is rarely the boat’s clock. Alignment is the offset that reconciles them, and it is stored with the team, so you do it once.

Open Offsets in the topbar — or double-click a clip on a media lane to open it with that row already selected. The Manual tab is a table: the clip, its lane, the time it was captured, and an editable offset in seconds.

  1. Find a moment you can see in the video and find in the data — the gun is the usual one.
  2. Put the cursor on it, and note where the video actually is.
  3. Type the difference into that clip’s offset. A positive number moves the clip later on the timeline. Decimals work with a dot or a comma.
  4. Press Save offsets.

Several cameras that started together can be done in one go: tick their rows, put the value in Bulk set, and press Set selected — or Set all, which takes every clip sitting in this race’s window.

Counting seconds is one way in. The other is to say the time outright: the Effective (UTC) column is editable, so if you know the instant — a gun time off the committee boat, a stamp read from another device — type it as 2026-08-08T10:54:58 and the offset works itself out. The two cells are the same setting seen from two sides: type a time and the offset follows, nudge the offset and the time follows. Save once.

Captured (UTC) is the raw stamp on the file. Effective (UTC) is where the clip actually sits on the timeline. Those two differ by exactly the offset between them — which is the whole of what alignment is.

A camera whose clock is not slightly wrong but properly wrong — two hours out, a whole afternoon out — lands nowhere near the race, and a table showing only the clips that reach the window would leave out the one clip you came to fix. So the table does not hide it. Below the in-window rows sits Outside this window: the rest of the day’s clips, each saying how far out it currently is — 2h 0m late, 45s early. Type the real time into its Effective (UTC) cell and it moves up into the window as you leave the field. A bulk Set all deliberately leaves these alone: they are out for their own reasons, and one number will not answer all of them. Tick a row to include it.

A file whose clock is out by a whole day or more is further out than that list reaches — it is drawn from the day you are debriefing. Set its time from its row in the Media Manager instead (section 9), which holds every record on the boat.

5 Aligning by the clap of the gun

Faster and more accurate than counting seconds. The Visual tab of the same window puts a player in front of you, you find the frame, and you say what instant that frame is. What you say it against is your choice: another clip that caught the same moment, or the clock itself.

  1. Choose a Reference — a clip you already trust. It is never moved.
  2. Choose the Target — the clip you are fixing.
  3. Scrub each player to the same real-world instant. The gun is ideal because it is loud: you can hear it in both.
  4. Press Mark clap under each one. The readout shows the exact second you marked — to a thousandth for a local file, to a hundredth for a YouTube source, which is the finest resolution its player reports.
  5. Check the shift the window now proposes, then press Apply to clip.

Cameras that were all rolling together and share one error? Apply to all shifts every clip by the same amount, keeping their spacing, and lands the target exactly on the clap-derived offset.

The players on that tab have their own controls and are deliberately not tied to the debrief cursor — you are hunting for a frame, not watching a race. An audio-only file is a perfectly good reference: it shows black, and the bang is what you are marking anyway. A YouTube source works here too; only the by-ear trick needs a local file.

Clapping against the clock

Sometimes there is no second camera to clap against — one GoPro, one race. But there is always a clock, and a camera pointed at one tells you everything. Start the GoPro, and ten seconds in, hold your phone up to the lens showing 12:46:32. That frame is not merely like some other clip’s frame; it is 12:46:32.

So the Reference picker’s first entry is ⏱ Wall clock — the time the telemetry keeps. Choose it and the reference player is replaced by a single time field, prefilled with wherever the debrief cursor is parked.

  1. Scrub the target until the clock in the frame is readable. Any frame of the recording will do — ten seconds in, ten minutes in, or two hours in.
  2. Type that reading into the field. If the moment happens to be inside the race you are watching, dragging the debrief cursor onto it and pressing Use cursor saves the typing.
  3. Press CLAP. It pins the frame you are looking at to the time you set, and the clip slides to where that makes it true.

The time you type is not limited to the race. The debrief cursor cannot leave the window it loaded, but the field can hold any real time — hours before the start, hours after the finish, another part of the day entirely. It will tell you when the time you entered falls outside the race, because a mistyped hour looks exactly like a deliberate one; that note is information, not a refusal. For the same reason the Target picker lists the rest of the day’s clips under Outside this window: a clip whose clock is two hours out overlaps no race, and it is precisely the clip this gesture exists to move.

Check the shift, then Apply as before. The whole clip moves; the frame you clapped lands on the second you named. It is the same single setting section 4 describes, arrived at by pointing instead of by arithmetic — and a clip with one video and no reference is no longer locked out of the tab that exists to fix it.

Press it again if you mis-scrubbed. A clap states where a frame belongs rather than nudging the clip along, so a second one corrects the first instead of stacking on top of it.

6 Photos

Photos attach like anything else and appear as small markers on their lane rather than as spans, because a photo is an instant, not a duration. Click a marker to open it.

A JPEG’s capture time is read from its own EXIF data, down to the sub-second where the camera recorded one. Two things worth knowing:

  • A camera that records its time zone is exact. One that does not has its wall-clock digits read as UTC, which will be out by the venue’s offset. Fix it in the viewer — type the real UTC time, or nudge the offset — and one photo tells you the error for the whole set.
  • A PNG, or a JPEG with no EXIF, falls back to the file’s modification time and is flagged with a warning glyph until you align it. That is a guess and the product says so rather than quietly placing it.

In the viewer:

  • Seek here moves the debrief cursor to the photo’s instant — the fastest way to find what the trimmer was doing when somebody took a picture of it.
  • Download ↓ writes a copy of the photograph with the telemetry overlay drawn onto it — at the picture’s own resolution, not the size it happens to be shown at. The numbers are the ones on screen: same instant, same rows, same colours, including the red %tgt when you were under target. A JPEG comes back as a JPEG; a PNG stays a PNG. The file is named for the race and the UTC second it was taken, so a folder of them sorts itself.
  • and walk through the photos in time order, across every lane.
  • Escape closes the viewer, and only the viewer.

Under those buttons is the line that answers the question people actually ask of a photo: UTC, followed by the exact instant the app has this picture pinned to. It is editable. If the camera’s clock was wrong and you know the real time, type it and press Set time — the marker moves on the timeline immediately, and the overlay follows it. Where the photo carries an EXIF capture time, Photo time fills it in for you to accept or correct. The offset shown beside the field is the same one the offsets window edits; setting a time and nudging an offset are two ways to move one number.

The transport keeps working behind the open photo, so the race can play on while you look.

7 Audio

Audio files get mixer rows under the mosaic rather than a pane of their own. Each row shows the file, its lane, what it is doing at the cursor, a mute button, a volume slider and an Align button straight into the offsets window.

Rows start muted. Unmuting is the deliberate act of bringing a microphone into the room — otherwise opening a race with four tracks attached would be four people shouting at once. Mute and volume are remembered per file.

Audio is slaved exactly like video: it seeks with the cursor, follows the playback rate, and pauses when the cursor leaves its window. A cockpit recorder is often the best-aligned source you have, since the gun is unmistakable on it.

8 Lanes

A lane is a label — Drone, Mast cam, Tactician mic — that groups media rows under the timeline. Anything without one lives in Unsorted, which always sorts last.

Files arrive in Unsorted — attaching is not the moment you sort. Three places to set a lane afterwards:

  • In the Media ManagerManage media in the topbar. A lane cell per row, or tick several and move them together. This is the efficient one: attach the ten drone chapters, tick them, type Drone, press Move.
  • In the offsets window — a lane cell per row, beside the offset you are already editing.
  • By renaming — double-click a lane’s name in the timeline and type a new one. Every record in it is re-labelled.

A lane plays as one thing. A lane is usually one camera’s run of the race, cut into files by the recorder rather than by anything you did, so the player will treat it that way. Click a lane’s name once (the beside it) and a video pane binds to the whole lane and starts. It plays each file in turn, and when one ends short of the next it moves the race on to where the next one begins — the map, the charts and the instruments arrive there with it, because the point of this player is that they are all showing the same moment. Between two files the pane says when the next one starts, and after the last one it says so. The same thing is on offer from a pane’s own selector, under Lanes, which is the way in if the timeline is collapsed or you want a particular window. Pick an individual video in that pane to let the lane go. That single click is why renaming moved to a double one.

Lane rows reorder with and and collapse with the chevron. That order is yours alone, kept per boat in this browser, so the mast cam can sit at the top of your timeline without moving anybody else’s.

Lanes are labels, not folders. A lane exists because records carry its name; empty it and it disappears. Clearing a record’s lane puts it back in Unsorted.

9 Coming back next session

The alignment, the lane, the times and the record itself are on the server. Only the bytes are local, so the question is only ever how quickly your browser finds the files again.

  • In a Chromium browser — Chrome, Edge, Arc — the browser can remember the files themselves. A Re-attach pill appears in the topbar when this race overlaps files it knows, and one press plus one permission prompt brings them all back.
  • In Safari or Firefox that memory is not available, so the pill asks you to pick the files again. Everything else survives: they are matched by content, and the alignment comes back with them.
  • On a different machine entirely, pick the files and they relink the same way — which is what makes the Rename stamp in section 2 worth doing.

The Media ManagerManage media in the topbar, or the gear on the Media block — is where records are kept: which device holds a copy, lanes, the time each clip is synced to, and the delete. Deleting a record removes it for the team; no file on any disk is touched. It opens whether or not this boat has any media at all, which is what makes the YouTube path in section 10 reachable on a boat with no files.

It opens on the day you are debriefing — the media attached to that day, however many regattas the boat has behind it — and says how much it is leaving out. Every race beside it is the whole-boat view, one press away, and the manager goes back to the day next time you open it.

Every row’s time is editable here too: press the Effective (UTC) value and the same time control the photo viewer uses opens under the row. This is the way in for a file whose clock is out by more than a day, and for a row wearing a ! — the mark for a capture time we had to guess, usually a file with no timestamp of its own.

10 YouTube, for something everyone can watch

A YouTube video can be registered as a player source, and it plays for every member with no files at all. Coach footage, a drone edit, the event’s own broadcast.

Nothing here needs a single local file, and the way in does not either: Manage media sits in the player’s topbar and opens on an empty boat.

  1. Press Manage media in the player’s topbar.
  2. Press ▶ Add YouTube video.
  3. Paste the URL. Watch links, short links, live links, embeds and shorts are all understood, and the title is fetched where it can be.
  4. Optionally set a name and a lane. The rough start time is prefilled with the race start — real timing comes from aligning it afterwards.
  5. Press Register.

A YouTube source aligns like any other clip: it appears in the Offsets table, and on the Visual tab it gets a player you can scrub and clap by frame, same as a file on your own disk.

Three limits:

  • No clapping by ear. YouTube hands out no audio samples, so the trick of marking the same bang in two recordings needs a local file. Clapping by frame — including against the wall clock — works fine.
  • Playback tops out at 2×. The debrief transport goes to 8×, and the pane shows you where it clamped.
  • A live stream joins the timeline when it ends. While it is live it has no fixed length to align against, and the pane says so.

Listed and unlisted videos both work. A video whose owner has disabled embedding does not, and the pane names that as the reason rather than showing an error code.

11 Who can do what

Registering media for the team, editing lanes, adding a YouTube source and deleting records are for members and above — the same authority that runs imports.

A viewer keeps everything that is theirs alone: attaching their own files, playing them, the mosaic, and their own lane order. Their clips simply stay local-only rather than becoming team records.