align¶
Show what every device captured around a file's corrected time.
iPhones set their clock and timezone automatically, so iPhone media is the ground-truth clock for a trip. align takes any file, usually a DJI clip or a mic recording you are unsure about, and lists everything captured near it in corrected local time, with iPhone rows highlighted. If a neighboring iPhone photo shows a different scene than the clip you are checking, a timezone offset is wrong somewhere.
align is read-only. It reads .ingest/manifest.json, so you must have run scan first.
Arguments¶
FILEis the file to center on. You can pass the bare filename (DJI_20260316184422_0105_D.MP4), a path suffix, or any unique substring of a path. If the substring matches more than one file, align lists the candidates so you can disambiguate.
Options¶
--windowis the number of minutes of context to show on each side. Defaults to10.0.--rootpoints at a specific project directory.
Example¶
Target: DCIM/DJI_20260316184422_0105_D.MP4 at 2026-03-16 18:44:22 local
Δ Local time Device File
────────────────────────────────────────────────────────────
-47s 18:43:35 iphone-photo IMG_4820.HEIC
0s 18:44:22 dji-pocket3 DJI_..._0105_D.MP4 ◀ target
+18s 18:44:40 dji-mic TX00_MIC001_..._orig.WAV overlaps
+88s 18:45:50 iphone-video IMG_4821.mov overlaps
green rows are iPhone media (trusted clock). Open one and compare scenes.
Each row shows the signed time delta from the target, the corrected local time, the device, and the filename. iPhone rows are printed in green because they are the trusted reference. Rows whose clip duration overlaps the target's time span are marked overlaps, which is how you confirm that a mic recording really belongs to a given camera clip.
How to read it¶
Open the target clip and the nearest green (iPhone) capture side by side. If they show the same moment, the target's corrected time is right. If the iPhone photo from "47 seconds before" is clearly a different scene, then the offset applied to the target is wrong, most likely because the trip timezone in ingest.toml does not match what that camera's clock was actually set to. Fix the timezone (or investigate the camera), re-run plan, and check again.
This is the manual counterpart to the automatic timezone cross-check: the cross-check flags a suspicious offset, and align lets you confirm it by eye.