Windows · Java 21 · macOS & Linux planned

Fine Line

Finish line video timing for rowing and kayaking. Records the race, lets you step through frame by frame, marks crossing times per lane, and packages everything into a portable archive.

Windows installer (.exe) · Java 21 required

Specifications
PlatformWindows only
RuntimeJava 21 — required
Video codecsMJPEG / H.264
Archive format.flheat
Start sourcesKeyboard · Modbus TCP
InternetActivation only
Offline grace7 days
LicensingPerpetual or subscription

What it does

The finish line, covered.

Fine Line is a single-purpose desktop application. It records the finish area via a connected camera, plays back footage frame by frame, and produces a timestamped result for each lane. Everything else supports making that workflow fast and reliable on-site.

Live preview

The camera feed appears on the main panel at launch. A quick-settings toggle in the toolbar hides or shows the panel without interrupting any active capture.

Finish line & lane markers

Drag lines directly in the live preview to set the finish line and lane dividers. No wizard, no point pairs — position them visually and they stay until you move them again. Saved across sessions.

Frame-by-frame review

After recording stops, use arrow keys to step through footage. Hold Ctrl to move faster, Shift to move slower. Mark each lane's crossing moment; elapsed time from the start signal updates immediately.

Start signal

The start shortcut (default F5) works as a tap-to-toggle or hold-to-record — both modes work simultaneously. A quick tap toggles the start state; holding the key keeps it active only while pressed. External start via Modbus TCP also supported.

.flheat archives

Each confirmed heat is saved as a .flheat file — a ZIP containing a JSON metadata file and the MP4 video clip. Permanent records: reopen any time for protest review.

Export rules

Per-heat export rules let you define which lane results get exported and under what filename prefix. Format: prefix: selector — selectors support single lanes, ranges, comma lists, or * for all. Multiple rules per heat, one per line.

Auto heat sequencing

Define progression chains — e.g. H-14 > H-17 > H-19 — and Fine Line advances automatically after each confirmed result. Set via the Auto Heat settings panel, no file import required.

Customisable shortcuts

All keyboard actions are remappable in the Keybindings settings panel. Ctrl and Shift modifiers are supported for any binding. Defaults use function keys and arrow keys.

Fine Time compatibility

Fine Line does not connect to Fine Time directly. Fine Time reads .flheat archives produced by Fine Line — the two applications share a file format, not a live link.

Typical workflow

A heat, start to finish.

Designed for fast solo operation. Steps below assume the day's initial setup (camera, line positions) is already done.

01

Position finish line and lane markers

Drag the finish line and any lane dividers to the correct position in the live preview. Done once per camera position — persists until you move them.

02

Configure auto heat rules (optional)

Open Auto Heat settings and enter your heat sequence chains. Leave empty to advance heats manually.

03

Start recording and await the start signal

Press F7 to begin recording. When the race starts, tap or hold F5 to log the start timestamp. If FineStart hardware is connected, the start is automatic.

04

Stop and review frame by frame

Press F7 again once all boats have crossed. Use arrow keys to navigate to each crossing frame — Ctrl for fast, Shift for slow — and mark each lane's time.

05

Confirm and export

Confirm the result. Fine Line writes a .flheat archive (ZIP with MP4 and JSON) to the configured folder, applying any export rules you've set for this heat. Auto heat advances to the next in the sequence if enabled.

Video encoding

MJPEG or H.264.

Both codec options produce MP4 output. The tradeoff is CPU load during capture versus file size in the archive. Configure in Camera settings.

MJPEG
CPU loadLow
File sizeLarge
Quality controlBitrate
RecommendationUse on race day
H.264 (libx264)
CPU loadHigh
File sizeSmall
Quality controlCRF (0–51) or bitrate
Presetultrafast / veryfast / fast / medium

H.264 frame drops during capture cause timing gaps. If CPU usage is a concern, record in MJPEG and re-encode archives offline.

Licensing

Machine-bound. Transferable.

Fine Line is licensed per machine. Activation requires an internet connection once; a 7-day offline grace period covers race-day operation without connectivity.

Perpetual

  • No expiry date
  • All updates included during active development
  • Machine-bound; transferable

Subscription

  • Annual renewal
  • 7-day grace after expiry
  • Machine-bound; transferable
  • Trial keys available on request

Transferring a licence can be done three ways: via the unbind option in Settings, by contacting support@finetiming.app, or — if you apply a key that's already active on another machine — Fine Line will offer to transfer it to the current machine directly via email authentication, with no prior unbind needed.

View and manage all your licences at finetiming.app/account. To request a licence: support@finetiming.app.