In development
A native macOS inspector for people who work on video, not just with it. Open a raw YUV dump with no header or an encoded file, display it color-correctly in SDR and HDR, read every scope and every metadata block down to the bitstream fields, and compare two encodes with the metrics that decide codec shootouts. Then act on what you found: repair the metadata without re-encoding, fix defective pixels with verified surgical edits, split the clip into shots, and check the file against a delivery spec. And when a measurement needs material with a known answer, ⌘G writes it: 25 patterns computed for the exact format, matrix, range and depth you are checking.
Why Videre
Players show you a picture. Videre shows you the file: what the pixels are, what the metadata claims, and what survives an encode.
A raw YUV dump has no header; nothing in the file says 1920×1080, 10-bit, BT.709. And tagged files lie: a BT.601 clip marked BT.709 looks almost right, which is worse than wrong. Videre opens headerless files through a parameter sheet with a size guesser and filename hints, and every file, tagged or not, gets live interpretation controls: matrix, range, and transfer are pills you flip while the frame re-renders, with an amber marker whenever your choice diverges from what the file declares.
"Encoder A looks better" is not a result. Videre loads two sources into an A/B session with side-by-side, flip, wipe, and difference views, a temporal offset for misaligned clips, and per-frame PSNR, SSIM, MS-SSIM, VMAF, CAMBI, and ΔE metrics with a graph and a jump-to-worst-frame button. The numbers cross-validate against the reference implementations, so they hold up in a report.
HDR10+ scene metadata, VUI color tags, container boxes: a player consumes them silently or ignores them. Videre reads them out, per frame, searchable by field name, and exports them as JSON. When a clip looks wrong on one TV and fine on another, the answer is usually in a block nobody rendered visible.
And when the file itself is the problem, Videre writes: wrong tags are repaired without re-encoding, defective pixels are patched with exact code values, and every write goes to a new file that must pass verification before the save succeeds. The original is never modified, on any path.
The signal path
videre-cli. A generated test clip enters the path at the same point a file does.Six modes
Inspecting is the default. Each mode adds one job on top of it, on ⌘1 through ⌘6, and they share every scope and the one decoded frame.
Built for your workflow
Job-shaped paths through the same engine.
Fix wrong or missing color and HDR tags on an MP4/MOV without re-encoding. The output is verified byte-identical before the save succeeds.
→One decode at native bit depth, explicit interpretation, and a measurement path that reads the decoded codes themselves. File to pixel, stage by stage.
→Patterns computed for the exact format under test, written to raw or y4m and verified frame by frame. The full catalogue, with what each pattern exposes and what to read off it.
→Matrix, range and transfer, explained practically: what each one does to the codes, what a wrong one looks like on screen, and how to settle it with numbers.
→What it opens
Raw buffers straight from a codec under development, camera dumps, y4m pipelines, and finished deliverables.
Display
Scopes
Every analyzer toggles on a control-number shortcut, stacks in the inspector, and pops out to its own window.
Bitstream & container
The layer below the pixels, readable without leaving the app.
Metadata repair
Repair without re-encoding: the tags change, the pixels stay untouched. See the workflow →
videre retagmaster-display string, MaxCLL / MaxFALL, remove flags, and per-track selection.Compare & metrics
Two sources, one verdict: aligned views for the eyes, cross-validated metrics for the report.
Load a reference and a distorted version, even in different pixel formats or transfers; each side converts under its own interpretation. View them side-by-side, flip on a key, wipe with a draggable divider, or as a difference image with channel, heatmap, and binary styles. A temporal offset control lines up clips that don't start on the same frame.
Metrics run per frame with a chart, sequence aggregates, and a jump-to-worst-frame button: PSNR (matching the ffmpeg filter's conventions exactly), SSIM and MS-SSIM (the canonical definitions), VMAF and CAMBI (Netflix's libvmaf, statically linked), and ΔE2000 / ΔE ITP color difference. Results export as JSON and CSV with a frozen report schema.
The run is progressive: numbers land in the panel frame by frame, the frame on screen is measured first, and cancelling keeps everything measured so far. Measure Frame takes just the pair in front of you, and an Auto toggle measures every frame you step to - scrubbing through a suspect region fills in its chart as you go.
Signal generator
⌘G writes the clip you measure against: patterns computed for the format under test, carrying codes you know before the file goes anywhere.
25 patterns: color bars, HDR bars, a 24-patch ColorChecker-style chart, conversion probes labelled with the codes they should carry, ramps and bit-depth ramps, PLUGE, a range checker, gamut sweeps and out-of-gamut marker pairs, zone plates, gratings, checkerboards, a chroma-siting probe, graticules, PQ stairs, luminance windows, HDR grey ramps, and a temporal set covering motion, cadence, drop detection, flash sequences and noise. Overlays compose on top: a frame counter with a machine-readable strip, text labels, a 1-pixel border with lettered corners, and a centre cross. Several segments in one clip make a scene-cut test with boundaries you already know, and Scenes mode reads them back. See the workflow →
videre generateAutomation
videre CLIgenerate, inspect, compare, bitstream, container, retag, edit, verify, conform, scenes, built on the same engine as the app, so scripted QC gets identical numbers. videre verify runs the delivery checks and videre conform gates against a spec, each exiting nonzero on a failure, so a pipeline can block an upload. JSON reports with a stable, versioned schema. Ships inside the app bundle with an Install Command-Line Tool menu item.Cross-validated
A measurement tool is only as good as its references. Videre's test suite pins its numbers to external implementations, not to itself.
ffmpeg's psnr filter to the printed precision: average, min, max.vmaf reference CLI built from the same Netflix release.hdr10plus_tool output.ffprobe, mediainfo, and known encodes from x264, x265, and SVT-AV1.Requirements
All processing is local. Videre never transmits your video anywhere.
Status
Videre is in development at Headroom Studio, the same one-person shop behind Specula, Audita, and Lyra. The analysis engine, scopes, inspectors, and compare metrics described above are built and under test; licensing and the first public release are being prepared.
Questions, or a workflow you want covered? hello@headroomstudio.dev.
Screenshots use the Blender Foundation open movies Big Buck Bunny (© 2008 Blender Foundation / bigbuckbunny.org) and Tears of Steel ((CC) Blender Foundation / mango.blender.org), both CC-BY.