From search to timeline: exporting to Premiere, Resolve & Final Cut
Finding the right ten seconds is only half the job. The other half is getting those seconds into your editor without scrubbing for them by hand. MediaFind turns a set of search results into a real timeline — frame-accurate, drop-frame aware — that imports straight into Premiere Pro, DaVinci Resolve, or Final Cut.
You searched your library, you found the six moments you want, and now you face the dullest task in editing: opening your NLE, locating each of those clips, and scrubbing to the same in-and-out points you already identified. MediaFind closes that gap. Tick the moments you want, hit Export timeline, and you get a file your editor opens as a sequence — every clip already trimmed and laid down in order.
It's a deliberately small, sharp feature, and almost all of its difficulty hides in one place: time. The rest of this post is about how a list of moments measured in floating-point seconds becomes a timeline an editor trusts down to the frame.
Two formats, by design
There is no single timeline format every NLE agrees on, so MediaFind writes two — and lets the format match the job:
- FCPXML (
.fcpxml) — native to Final Cut, well-supported by Resolve, and importable by Premiere. It's the richest container: named clips, markers, and proper rational timecode. This is the recommended primary export. - CMX3600 EDL (
.edl) — the universal single-track fallback. It's decades old and almost featureless, which is exactly why every NLE on earth reads it. When FCPXML import is awkward in some pipeline, the EDL always lands.
Both are plain text generated by pure Python — no After Effects scripting bridge, no vendor SDK, no heavyweight dependency. That keeps the export keyless, offline, and unit-testable without shelling out to anything.
The hard part: seconds are not frames
MediaFind models a moment as { media_path, start, end } in float seconds, because that's what transcripts and embeddings produce. NLEs model time in frames. The gap between those two is where naïve exporters quietly go wrong: place a cut at 12.4137s on a 23.976 fps timeline and the editor will round it somewhere — just not necessarily where you expected, and not consistently across clips.
So every export does two things before it writes a single line. First it probes the true frame rate of each source file — the same ffprobe-backed metadata the player chips use — because a 60 fps screen recording and a 23.976 fps camera file can sit side by side in one set of results. Then it snaps every in- and out-point to a frame boundary at that file's real rate, so the times written are exact integer multiples of a frame duration, not approximations.
DF) where it belongs and non-drop (NDF) everywhere else, rather than pretending every project is a clean 24 or 25.Markers, not just cuts
An EDL gives you trimmed clips in order. FCPXML can carry more, so MediaFind uses it: each placed clip keeps the label that earned it — the matched phrase, the speaker, or your search query — as a marker on the timeline. When you open the sequence, you're not staring at clip_0044.mov; you're looking at "what the CEO said about pricing," parked on the exact frame it was said. The search context survives the handoff.
Consolidate to a proxy bundle
A timeline file is only useful if the editor can find the media it points at. That's fine on the machine that did the indexing, but it breaks the moment you hand the project to a collaborator or move it to an edit bay. So there's an optional consolidate step: instead of referencing your originals in place, MediaFind can gather just the regions you used into a self-contained bundle and point the timeline at those, padding each hit slightly so you have handles to trim against. One folder, one timeline file, everything relative — drop it on any machine and it opens.
Where it lives in the app
The export is one POST /api/export/timeline call behind a button on the bulk-selection bar: select moments anywhere results appear, pick a format and (optionally) a project frame rate, and save. For DaVinci Resolve specifically there's an even shorter path — a headless handoff that writes the picks to a file a bundled Resolve script reads, importing the media and appending it onto your current timeline in one click. (That deeper Resolve integration is its own packaging story.)
Why build it at all
Search that ends at a list of results makes you do the transcription-to-timeline translation in your head. The whole point of indexing a library is to act on what you find — and the most common action, for anyone cutting video, is "put these moments on a timeline." Doing that conversion correctly — per-file frame rates, drop-frame timecode, frame-snapped edits, a portable bundle — is unglamorous, easy to get subtly wrong, and exactly the kind of thing software should do for you. So it does, locally, with no upload and no round-trip through anyone's cloud.
The export speaks your editor's language, but the moments it places came from understanding your media in the first place. Next: how a folder of raw files becomes the searchable index all of this reads from.
Find the moments, then cut them
Search your library, tick the keepers, and export a timeline your editor opens. Locally, with no upload. Free trial.
Download for macOS