Claude Code can help turn several recorded takes into one film using the open-source Video Use skill. It links source speech and inspected frames to a proposed cut list, preview and MP4. The editor still decides what the footage means, which takes belong together and whether the delivered file is fit to use. This guide follows the Video Use maintainer's documentation and HyperFrames quickstart, checked October 22, 2026. BIG CHANGE did not install these tools, process footage, call a model or transcription service, or test a render.
The big change
- What changed: Video Use gives a coding agent a documented path to transcribe multiple takes, propose an edit, render from a source-linked edit decision list (EDL) and inspect the output.
- Why it matters: An editor can review the chosen source intervals and cut strategy before a final film is made.
- What to watch: Transcription sends extracted audio to ElevenLabs Scribe; transcript and sampled-frame context may reach the configured Claude model. Local rendering does not make those analysis steps local, and automated checks do not establish rights or editorial quality.
1. Secure the footage and define the film
Start with the real takes you have permission to edit. Keep an untouched copy outside the working edit/ directory. For each file, record its name, source, people and music permissions, and allowed uses in a private record; add its hash after the tools are ready in step 2. Write a brief that names the audience, message, target length and aspect ratio, required and forbidden moments, exact approved claims and on-screen text, caption needs, and delivery format. Check the footage yourself; the brief should reflect what was recorded, not a desired scene that may not exist. Hold any source whose rights or consent are unresolved.
The examples below assume macOS, Homebrew, Claude Code and a folder containing only the permitted source takes. Replace /absolute/path/to/owned-takes with your actual folder. These are documented commands for a reader to run after approving the tool, data transfer and cost; they are not results from a BIG CHANGE session. Video Use also gives Debian/Ubuntu setup examples, but its POSIX symlink commands should not be copied to Windows without checking a supported installation route.
2. Pin and register Video Use on a supported machine
The installation instructions require Python 3.10 or newer, ffmpeg and ffprobe, the Python dependencies, the whole skill directory and an ElevenLabs API key for transcription. The repository's pyproject.toml says 0.1.0; that is project metadata, not proof of the installed checkout or resolved package versions. The commands below pin the repository commit inspected for this guide, 43cfc566833548093455c9d4a46bd69913b7e552. Review that commit and its dependencies in your environment before installation. First inspect the proposed checkout and skill paths with ls -ld "$HOME/Developer/video-use" "$HOME/.claude/skills/video-use" 2>/dev/null. Run the block only if neither path exists. If either is occupied, inspect what is there and choose an approved, unused checkout and registration path; change every later path accordingly. Do not check out a revision in someone else's clone or replace an existing skill registration.
brew install ffmpeg uv
python3 --version
ffmpeg -version
ffprobe -version
mkdir -p "$HOME/Developer"
git clone https://github.com/browser-use/video-use "$HOME/Developer/video-use"
cd "$HOME/Developer/video-use"
git checkout 43cfc566833548093455c9d4a46bd69913b7e552
git rev-parse HEAD
uv sync
mkdir -p "$HOME/.claude/skills"
ln -s "$HOME/Developer/video-use" "$HOME/.claude/skills/video-use"
readlink "$HOME/.claude/skills/video-use"
uv run python helpers/timeline_view.py --help
uv run python helpers/render.py --helpCheck that Python reports at least 3.10, both FFmpeg programs respond, git rev-parse HEAD matches the pinned revision, readlink names the intended checkout, helper help opens, and Claude Code discovers the registered skill in a new session (/video-use for the default path). Register the directory, not only SKILL.md: its helpers/ must remain beside the instructions. If a command fails, inspect its actual error, your paths and versions before going further. If you use another checkout or dependency resolution, record those actual revisions instead. The maintainer's installation guidance calls for a real-file check before declaring an editing pipeline working; help output verifies interfaces, not a successful edit.
Now use ffprobe on each real take before transcription to confirm duration, streams, dimensions and the correct audio track. Replace the example filename with one from your source folder:
ffprobe -v error -show_format -show_streams "/absolute/path/to/owned-takes/actual-take.mov"
shasum -a 256 "/absolute/path/to/owned-takes/actual-take.mov"Save the output beside the rights record. If the probe fails, establish that the file opens in a player and identify the actual format or damaged source before calling the agent. A hash identifies the source version; it does not prove rights.
Before any transcription, check the current ElevenLabs account terms and prices, quota, file limits, retention and permission to send this audio. Video Use's transcribe helper extracts mono audio and sends it to Scribe with word timestamps and speaker labels. Provide ELEVENLABS_API_KEY through your approved secret storage or the private repo-root .env described by the maintainer. Keep it out of the prompt, footage folder, logs and shared records. Also review the configured Claude Code data handling and tool permissions for transcript, sampled frames and shell access. Limit the agent to this edit's files and approved services. Transcription and model usage may cost money; a local FFmpeg export changes neither data destination.
3. Inspect the takes and correct the transcript
From the pinned Video Use checkout, use the documented helpers only after approving the Scribe call. The batch command walks source video files in the named folder, writes cached transcripts under its edit/transcripts/ folder and may make several paid calls. If a source has multiple audio streams, use ffprobe to select the right track and check the helper's --audio-track option first. Do not treat silence or a failed upload as an empty take.
cd "$HOME/Developer/video-use"
uv run python helpers/transcribe_batch.py "/absolute/path/to/owned-takes" --workers 1
uv run python helpers/pack_transcripts.py --edit-dir "/absolute/path/to/owned-takes/edit"--workers 1 keeps the first batch easy to supervise; the helper's documented default is four workers. Inspect edit/transcripts/ and edit/takes_packed.md, then compare names, speakers, quotes and missing context with the original files. The packed transcript groups phrases with source time ranges; it is a navigation aid, not a verified account of what a speaker intended. For an uncertain pause or take choice, the helper offers an on-demand filmstrip and waveform, with times in seconds:
uv run python helpers/timeline_view.py "/absolute/path/to/owned-takes/actual-take.mov" 12 18Use ranges from your own footage, inspect the PNG and play the original interval. If Scribe rejects a file or quota, preserve the exact error and decide on access or format before another paid call. If text or timing is wrong, correct the source-linked decision and captions against the original; never invent a missing line. The helper caches transcripts, so check that a cached result belongs to the exact current source before reusing it.
4. Approve the cut plan before rendering
Open Claude Code in the source folder with Video Use available. Give it the private brief and actual source inventory. Ask first for a plain-language strategy: the film's shape, proposed take order, source intervals and why they were chosen, expected duration, caption treatment, audio and grade approach, and any graphic slots. Tell it to flag uncertain words, conflicting takes, unsupported claims and missing permissions. Review each selected interval in the original video. Approve or revise the plan explicitly before it makes cuts; this is a rule in the Video Use skill.
Once approved, ask the agent to produce the EDL using the pinned skill and helper source. Video Use documents edit/edl.json for decisions, word-boundary cuts, output-timeline subtitle offsets and edit/project.md for project memory. Record source filename, in/out range, take purpose, caption correction and approval beside each retained passage. Verify the proposed cut on both picture and sound: word timestamps alone cannot tell whether a gesture, reaction, sentence or claim loses its context. Reject any edit that changes what the source says. Keep source files untouched and preserve EDL revisions so a later correction can be traced to its cause.
5. Add motion graphics only where the film needs them
An approved name card, diagram or transition may help this film. Specify each slot's wording, timing, position, font and image rights before generation. Video Use documents animation files inside edit/animations/slot_<id>/ and its render helper reads EDL overlays with a file path, output start and duration. Confirm the actual EDL and helper interface in your pinned checkout; this article does not supply a guessed EDL schema.
For a HyperFrames slot, its quickstart requires Node.js 22 or newer, npm and FFmpeg. Once the approved slot directory exists, replace <approved-id> with its actual ID and work there. The documented route is to install its agent skills or initialize a local project, then preview the composition:
cd "/absolute/path/to/owned-takes/edit/animations/slot_<approved-id>"
node --version
npx skills add heygen-com/hyperframes
npx hyperframes init my-graphic
cd my-graphic
npx hyperframes previewinit is interactive; preview starts a local Studio and keeps running while you inspect it. Stop that preview with Ctrl-C, or use a separate terminal in the same my-graphic directory, before rendering:
cd "/absolute/path/to/owned-takes/edit/animations/slot_<approved-id>/my-graphic"
npx hyperframes render --output graphic.mp4These commands belong in a chosen graphic slot, not the Video Use repository root. Inspect the rendered graphic, its exact text, dimensions, duration, codec and rights. Confirm the asset's timing and path in the supported Video Use overlay entry, then view it in the composite at final viewing size; subtitles must remain visible. If setup or rendering fails, inspect the actual Node, package, FFmpeg and project errors. Leave that slot unapproved or use an explicitly approved no-graphics plan. HyperFrames Cloud is optional; this local route does not require it.
6. Render, repair and accept the actual MP4
Video Use documents a preview render from the reviewed EDL. Run it from the pinned checkout after verifying its current render.py --help and the saved EDL:
cd "$HOME/Developer/video-use"
uv run python helpers/render.py "/absolute/path/to/owned-takes/edit/edl.json" -o "/absolute/path/to/owned-takes/edit/preview.mp4" --preview --build-subtitlesThe helper's current code applies overlays before subtitles and normalizes audio by default. Check that those defaults suit your actual delivery specification; a platform's loudness or codec target cannot be inferred from the helper. Inspect the full preview from beginning to end with sound, as well as its cut boundaries, opening, ending, captions, audio continuity and each graphic. Video Use describes timeline_view.py and ffprobe self-checks; they can reveal a jump or a bad duration, but they do not replace watching and listening. Write timecoded changes, update the EDL or graphic, rerender and repeat affected checks. Obtain the owner's explicit approval of the corrected preview before running the final export:
cd "$HOME/Developer/video-use"
uv run python helpers/render.py "/absolute/path/to/owned-takes/edit/edl.json" -o "/absolute/path/to/owned-takes/edit/final.mp4" --build-subtitlesReopen the exact final MP4. Record its hash and probe its streams and duration against the brief:
shasum -a 256 "/absolute/path/to/owned-takes/edit/final.mp4"
ffprobe -v error -show_format -show_streams "/absolute/path/to/owned-takes/edit/final.mp4"The probe reports such properties as duration, frame dimensions and rate, codecs, channels and size. It does not measure loudness. If the delivery brief has a loudness or true-peak target, measure the exported file separately and compare the result to that target; the Video Use skill documents this FFmpeg check:
ffmpeg -i "/absolute/path/to/owned-takes/edit/final.mp4" -af ebur128=peak=true -f null -Finally, play the full file on the intended device and listen throughout. Compare every retained claim and quote with the source, and check caption timing and legibility, graphic placement, picture continuity, music and image rights, and the actual delivery format. Save the source hashes, rights record, approved EDL, tool revisions, preview corrections, final hash, measurements and owner accept-or-hold decision privately. A failed check means another repair and review; file existence or an agent's self-assessment is not acceptance. Sharing or publishing the film is a separate decision.
Sources & further reading
- Video Use README — Maintainer description of the transcript, EDL, render and review flow, checked October 22, 2026. Its quality and automation claims are project claims; BIG CHANGE did not reproduce them.
- Video Use installation guide — Setup requirements, whole-directory skill registration, helpers and account key. Its examples cover POSIX environments; verify your actual machine and installed dependencies.
- Video Use skill and helper source — Strategy approval, supported helper commands, output paths, cut rules and self-check guidance. The transcription and render code establish the service call and current CLI flags; a pinned checkout governs any reader run.
- Video Use project metadata — Lists Python 3.10+ and package metadata version
0.1.0. It does not identify a reader's installed version. - HyperFrames quickstart — Optional Node 22+ local composition, preview and MP4 render commands. It does not establish that a graphic suits a particular film or integrates successfully without an inspected render.
- Claude Code permissions and data usage — Controls and account data-handling context to review before granting an agent access to real footage or transcript material; account terms and settings may vary.



