Turn one locked video edit into every deliverable: mezzanine master, platform-specific cuts, review proxies, team-safe naming, checksum manifests, and archive practice. Use when a finished cut needs to become a full set of exports instead of a single file.
./install.sh video-versioning-pipelinename: "video_versioning_pipeline" description: "Turn one locked video edit into every deliverable: mezzanine master, platform-specific cuts, review proxies, team-safe naming, checksum manifests, and archive practice. Use when a finished cut needs to become a full set of exports instead of a single file." metadata: { "includeInPrompt": true }
A finished edit is not a deliverable; it is the raw material for deliverables. This skill runs the pipeline that takes a locked master and produces the whole set: the archival master, every platform cut, review proxies, plus the naming, checksums, and delivery notes that let a team hand files off without confusion. One render of the master, then everything else derives from it, so nothing is rendered twice.
No versioning work starts until picture is locked and audio is mixed. Export the mezzanine master ONCE from the timeline:
List every (cut x platform x aspect) you need BEFORE encoding anything. Common rows are in references/platform-specs.md. A typical matrix:
| Cut | Platforms | Aspect | |---|---|---| | Main cut | YouTube, website | 16:9 | | Main cut | Instagram feed, X, LinkedIn | 1:1 or 4:5 | | Short cut (under 60s) | TikTok, Reels, Shorts | 9:16 | | Trailer / teaser | All | as needed |
If a version exists only as a maybe, cut it. Each row is real encode time.
-movflags +faststart so playback starts before the file finishes downloading.PROJECT_CUT_vNN_PLATFORM_RATIO.ext
Examples: BrandLaunch_main_v02_YouTube_16x9.mp4, BrandLaunch_trailer_v02_TikTok_9x16.mp4, BrandLaunch_master_v02_ProRes422_4K.mov
Rules: zero-padded version numbers, one platform per file (a file that goes to two platforms gets rendered twice or is clearly a shared export), date stamp only on reference cuts, never spaces. Use the bin/deliverables.py plan command to generate the full filename set from a matrix so the spelling is machine-consistent.
For each output, verify with ffprobe: resolution, frame rate, codec, container, duration within tolerance, audio present. Spot watch-through on the real deliverable at least for the first file of each platform. Then run the checksum step; a file that fails QC never enters the manifest.
bin/deliverables.py manifest command). Ship the manifest with the files.bin/deliverables.py verify. A checksum mismatch means the file did not arrive intact; resend, do not patch.Keep: the master file, the project/timeline files, the source media (or a verified proxy set if the source is too big to keep online), and the manifest. Deliverables are regenerable from the master, so they are the first thing you may delete when space gets tight. Archive is cold storage plus a tested restore path, not a folder named "old".
When the skill completes a run, the working directory contains:
master/: the mezzanine master, named per the grammar.deliverables/: every platform cut, named per the grammar.proxies/: review copies with timecode burn-in (when requested).DELIVERY.md: the delivery note listing every file and its spec.CHECKSUMS.sha256: manifest covering deliverables + master.archive/: project files and anything cold, or a pointer to cold storage.references/platform-specs.md, the platform wins; update the reference file with the date and source URL.publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
No ratings yet — be the first to rate it.