Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FXVsD1DgdzZLiPuwtKzMSY
2.4 KiB
2.4 KiB
Local media commands
These run on this machine, free, and write into the project.
Grade and style footage and images
- Measure, then correct:
npx hyperframes media-treatment --selector '#hero' --analyze --json, then--grading '<json>' --apply.--dry-runpreviews;--clearremoves the treatment. --filedefaults toindex.html: for media inside a scene, pass--file compositions/<scene>.html.- Grain, blur, vignette, presets, palettes:
npx hyperframes media-treatment --capabilities --json, then--capability <id>for one family's controls and ranges. - The result is a
data-color-gradingattribute on the media element. It treats the whole element in SDR, so it can't blur one region such as a face. - To animate it, set the start value in the element's inline
styleand tween these custom properties with finitetl.to()on the composition's timeline:--hf-color-grading-followed byintensity,lut-intensity,blur,kuwahara,pixelate,asciiordither(each 0–1),exposure(−2 to 2) orbloom(0–3). - Compare candidate grades on one frame:
npx hyperframes grade-compare --for frame.png --grades grades.json --json, or--luts a.cube,b.cube.
Cutouts
npx hyperframes remove-background <in> -o cutout.webm(.pngfor an image;--quality bestfor a closer colour match over its source).--background-output plate.webmalso writes the background with the subject cut out.- A cutout over its own source: both clips
data-start="0"anddata-media-start="0", so they decode in sync. - The runtime forces
opacity: 1on a timed clip. To fade a cutout, wrap it in an untimed<div>and animate the wrapper.
Sound
- Match loudness:
npx hyperframes normalize-audio --reference <id> --target <id> --write, or--lufs=-16(the default target; write a negative value with=) without a reference.--writeedits the volume in the HTML. - Beat grid:
npx hyperframes beats --jsonreads the local music<audio>(markeddata-timeline-role="music", or an id containing music, bgm or soundtrack) and writesbeats/<path>.json, which Studio shows as its beat grid. A beat time minus a scene'sdata-startis its time inside that scene. - Local transcription, or importing
.srt,.vttor Whisper JSON:npx hyperframes transcribe <file> --json. The default model translates non-English speech: see../../hyperframes/references/captions.md.