Workflows

    Conform Generated Proxies to Online Masters

    Relink rules, hashes, Rec.709 tags, and a missing-media protocol for when a regen changes the filename the online expects.

    Versely Team8 min read

    The editor is cutting a lightweight stand-in. Finishing needs the file that was actually approved. Relink is the moment those two are supposed to become the same shot. Generated media breaks the usual assumption, which is that the filename is stable.

    A regen does not update a file. It creates a new one, often with a new download name, a new duration, and no colour tag. If your online is still pointing at output (7).mp4, you will either get media-offline or, worse, a silent relink to a neighbour that happens to share a prefix. Conform for generated footage is a map from a stable shot ID to a current hash, not a hope that the names still match.

    Proxies and masters are different files

    A proxy exists so the cut moves. An online master exists so grade, mix, and delivery have the pixels and the sound you signed off.

    Do not treat a review render as either. Versely's editor can emit a 480p preview pass at no credit cost with a short per-user cooldown; that is a look at the cut, not a finishing source. The file you conform to is the exported master, hashed, renamed into your grammar. Pixel count is a property of that master, not of a model's marketing label.

    Layer What it is What it is not
    Generator download Whatever the model returned A name you can relink on
    Editorial proxy Lower-weight transcode of a chosen take, named with your shot_id The grade source
    Online master Finishing codec, full resolution, tagged, hashed A review MP4
    Preview render 480p look at the timeline A proxy or a master

    Transcode the proxy from the master, after you have picked the take. If you proxy the download and then regenerate, you now have a proxy of a file that no longer exists. The handoff package still applies: one frame rate, a codec the NLE will scrub, names that sort. Conform adds the map that survives the next regen.

    Confirm the file, not the filename. The video metadata inspector reads dimensions, duration, and ratio in the browser and never uploads. It will not give you a trustworthy frame rate. Use ffprobe when fps is load-bearing. Versely timelines default to 25 fps; most models that expose a rate offer 24, not 25. 24fps clips on a 25fps timeline is the conform for that mismatch. Clips that disagree with each other rather than with the sequence are a different problem.

    Relink by stable ID, then by hash

    Filename relink is the default in every NLE because camera cards produce stable names. Generated downloads do not.

    Mint a shot_id the moment a take is chosen, before anyone proxies it. sc03_sh020 does not change when you regenerate. The filename on disk can change. The hash will change, because a new sample is new bytes.

    Keep a three-column map, one row per shot on the timeline:

    shot_id current_master (hash + filename) proxy filename
    sc03_sh020 XXH3-128 … / acme_sc03_sh020_v012_pic.mov acme_sc03_sh020_v012_px.mov

    Relink order:

    1. Match shot_id embedded in the filename, or in sidecar metadata you wrote.
    2. Confirm the online file's hash against the map. If the hash does not match, you are not looking at the approved master.
    3. Only then replace the proxy.

    Never relink by "closest name in the folder." sc03_sh020_v013 sitting next to sc03_sh020_v012 is how a regen you have not conformed becomes the grade source.

    When you regenerate:

    1. New file, new hash, new version in the name (v013).
    2. Transcode a new proxy from that master.
    3. Update the map. Do not overwrite v012 on disk. The locked cut may still need it.
    4. Relink only the shots on the change-list.

    The hash is the identity of this sample. The shot_id is the identity of the hole in the timeline. You need both, because a hole can be filled by more than one sample over the life of a job.

    Colour-space tags on generated media

    ITU-R BT.709 is the recommendation that sets parameter values for HDTV production and international programme exchange: the 1920×1080 HD format, a 16:9 picture, and the colour encoding finishing rooms still treat as the default SDR working space, with Illuminant D65 as the white point. Rec. 2020 and Rec. 2100 exist for later UHD and HDR pipelines. Most generated masters you will actually grade are HD SDR and should be tagged and monitored as 709 unless the delivery spec says otherwise.

    Generated MP4s often arrive untagged, or tagged as a computer RGB space. An NLE that assumes 709 and a grade that assumes sRGB (or the reverse) will "relink" a file whose pixels are the right shot and the wrong encoding. That mismatch will not show up as media-offline. It will show up as a clip that will not sit next to camera footage, which is a matching problem, not a relink problem.

    Rules that prevent it:

    • Read the tag on ingest. If there is no tag, write the working-space tag you have agreed with colour, and record that you wrote it. Do not pretend the file arrived tagged.
    • Do not apply a look LUT as a substitute for a tag. A creative LUT on unmatched, untagged clips preserves the mismatch.
    • Keep proxy and master in the same colour encoding. A 709 master proxied as untagged computer RGB will relink looking like a different grade.
    • Confirm pixel dimensions against the delivery spec, not against a model's marketing label. Resolutions in this catalog are not interchangeable with camera masters.

    If you upscale as part of going online, do it once, on the chosen take, and treat the upscale as a new master with a new hash. Upscaling after you have already proxied means the proxy no longer represents the online.

    Missing-media protocol after a regen

    Media-offline after a regen is not a puzzle. It is the map telling you the filename the timeline still holds is gone.

    Do this, in this order:

    1. Stop. Do not let the NLE "find similar files."
    2. Read the map. If the shot_id has a new hash, you are looking at a regen that was not relinked. Conform that row. Do not relink the rest of the sequence while you are at it.
    3. If the map still points at the old hash, the file is actually missing. Restore it from the checksummed archive. Do not substitute the new regen because it is "the same shot."
    4. If there is no archive copy, you are not in a conform. You are in a recall. The locked pixels are gone. Anything you generate now is a new shot and needs a change-list, not a relink.
    5. Never online a proxy. A missing master and a present proxy is how a 480p or a heavily compressed stand-in becomes the graded deliverable.

    The same protocol applies when a collaborator "helpfully" replaces a file in place with a new download. In-place replace destroys the hash identity. New sample, new name, new row.

    If you are still generating into a pile of untitled downloads, save each take to a project as it lands so the chosen master can be found without spelunking a Downloads folder. The project is not the map. The map is the map. The project is how the file still exists when you go to fill it in.

    FAQ

    Can I relink by timecode?

    Only if you wrote timecode. Generated files usually start at zero and share that zero across every shot in the job. Shared zeroes are not unique IDs. shot_id plus hash is unique. Timecode is a trim.

    The new regen is the same duration and framing. Can I skip the new proxy?

    No. Duration matching is not byte matching. A proxy transcoded from v012 does not represent v013, even if both are eight seconds of the same prompt. Transcode from the current master or the online will not match the cut you think you have.

    What if finishing is on a different machine than editorial?

    Send the masters, the proxies, and the map. Relink on the finishing machine against the map, not against a bin dump. If the finishing room cannot see your hashes, they cannot tell a restored archive copy from a neighbour with a similar name. Put the algorithm name on the map (XXH3-128), not only the digest.

    Should the proxy be the same codec as the master?

    No. The proxy should be cheap to scrub. The master should be an intra-frame finishing codec. They must share frame rate, colour encoding, and the shot_id. Sharing a codec is how your "proxy" becomes a second master and your disk fills up.