wyattblue/auto-editor

auto-editor-effects

Apply actions and animations to sections of a video/audio with auto-editor — change speed, duck or fade volume, de-ess, zoom/Ken Burns, rotate/spin, draw boxes, overlay logos or picture-in-picture, and animate any of these with ramps and easing.

Quelltext ansehen

Verwendung

  1. Installationsbefehl kopieren und das Quellpaket vor der Installation in der eigenen Agentenumgebung prüfen.
  2. Benötigte Werkzeuge, Zugangsdaten und Hosts im Original prüfen.
  3. Eingabe und gewünschtes Ergebnis beschreiben und die Ausgabe mit den Quellen abgleichen.
npx skills add https://github.com/wyattblue/auto-editor --skill auto-editor-effects

Vor dem Start

  • Die Installation umfasst weder Modellabo noch API-Kontingent oder Dateizugriffsrechte.
  • Sterne und Installationen zeigen Aktivität, keine unabhängige Qualitäts- oder Sicherheitsprüfung.
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

Actions & animations

Instead of just cutting, give each section an action with --when-active (-w:1, loud) and --when-inactive (-w:0, silent). Defaults: -w:1 nil (keep), -w:0 cut. Chain actions with commas; they apply in order.

bash
auto-editor video.mp4 -w:0 speed:8            # fast-forward through silence (pitch preserved)
auto-editor video.mp4 -w:0 speed:3,volume:0.5 # speed up AND halve volume of silent parts

-w:0/-w:1 are the silent (label 0) and active (label 1) classes. You can define more classes with --edit:N/-e:N and act on them with --when:N/-w:N (N = 2–255) — see the auto-editor skill's "Labels" section. Every action below works as the value of any -w:N.

Actions

ActionWhat it doesForm / range
nilkeep unchanged—
cutremove section—
speedtime-stretch, pitch preservedspeed:8, speed:0.5
varispeedspeed via pitch shift (tape/vinyl)varispeed:2 (0.2–100)
pitchshift pitch only, duration preservedpitch:12 (octave up), pitch:-7 (−24–24 semitones)
volumescale volume (1=normal, 0.5=−6dB)volume:0.2
deesserreduce sibilancedeesser:intensity[:max[:freq]] (each 0–1)
tonewave from a MIDI note (add: generator)add:tone:69, add:tone:36:saw
invertinvert pixels—
zoomzoom factor (1=none)zoom:2, zoom:0.5 (>0–100)
rotatefixed clockwise rotation, expands so nothing clipsrotate:90 (pair with --resolution)
spincontinuous spin deg/rate (deg per sec)spin:0/120, spin:90/-45
drawboxfilled rectangledrawbox:x:y:w:h:color
posplace an overlay clip x:y[:scale]mainly used inside add / v3
addoverlay a layer: every stream the file holdsadd:path[:x:y:scale]
bash
auto-editor video.mp4 -w:1 deesser:0.8:0.7:0.4
auto-editor video.mp4 -w:1 rotate:90 --resolution 1080,1920   # landscape → portrait
auto-editor video.mp4 -w:1 drawbox:0:0:1920:200:#000000       # redact a strip

Overlays — add

add is virtual: it adds an overlay layer rather than a per-frame effect. Still images hold for the whole section; PNG alpha is preserved. Omit placement to scale-to-fit and center. Actions chained after an add apply to that new overlay, not the base. add brings every stream the file holds: a video with sound gets a video layer plus its audio layers (mixed in, not a second stream), an audio-only file adds sound with no picture, an image adds picture with no sound. In place of a file it takes a generator action: confetti/drawbox paint a video layer, tone synthesizes an audio one (so add:tone layers stack into a chord).

bash
auto-editor video.mp4 -w:1 add:./logo.png             # centered, fit to canvas
auto-editor video.mp4 -w:1 add:./pip.mp4:900:60:0.25  # PiP in the corner, audio included
auto-editor video.mp4 -w:1 add:./pip.mp4:900:60:0.25,volume:0.3  # ...tucked under the base
auto-editor video.mp4 -w:1 add:./music.mp3,volume:0.4 # background music, no picture added
auto-editor video.mp4 -w:1 add:./logo.png,spin:0/-30  # the logo spins, not the base video
auto-editor song.mp3 -bg white -w:1 add:./cover.png   # audio + image → video
auto-editor video.mp4 -w:1 add:tone:69                # 440 Hz tone over the audio
auto-editor video.mp4 -w:0 nil,add:tone:81            # beep the silence, don't cut it
auto-editor video.mp4 -w:1 add:tone:60,volume:1..0:ease=out  # a plucked, decaying note
auto-editor video.mp4 -w:1 add:tone:36:saw            # buzzy bass (sine|saw|square|triangle)

Overlays appear only where their section is kept, so for silent sections use -w:0 nil,add:... (keep + overlay). With --set-action the range is kept automatically.

Animations — ramps from..to

zoom, opacity, blur, brightness, volume, and each pos and pixelate field accept a ramp. The value interpolates across the section, reaching to on its last frame. More than two points = keyframes, spread evenly.

bash
auto-editor video.mp4 -w:1 zoom:1..1.5          # Ken Burns
auto-editor video.mp4 -w:1 opacity:0..1         # fade in
auto-editor video.mp4 -w:1 volume:0..1          # audio fade in
auto-editor video.mp4 -w:1 zoom:1..1.5..1       # zoom in then out (keyframes)
auto-editor video.mp4 -w:1 pixelate:1..64       # dissolve into coarser blocks
auto-editor video.mp4 -w:1 add:./logo.png,pos:0..1200:40:1..0.5  # slide + shrink overlay

Easing — :ease=curve[:duration], curve ∈ linear|in|out|inout. A standalone ease: token sets the curve for every animated action after it. rotate/spin are not affected by easing.

bash
auto-editor video.mp4 -w:1 zoom:1..1.5:ease=inout
auto-editor video.mp4 -w:1 opacity:0..1:ease=in:2sec        # ease over 2s, then hold
auto-editor video.mp4 -w:1 ease:out,zoom:1..1.3,brightness:0..0.3

Timed keyframes — value@time puts a keyframe at a time from the section's start: a bare frame count, sec, or % of the section. The value holds before the first and after the last; an untimed keyframe among timed ones sits evenly between its neighbors. An ease curve then eases each step between keyframes (no ease duration with timed keyframes).

bash
auto-editor video.mp4 -w:1 zoom:1@0..2@1.5sec..1@100%      # in by 1.5s, out by the end
auto-editor video.mp4 -w:1 volume:0@0..0@2sec..1@4sec      # silent 2s, then fade in
auto-editor video.mp4 -w:1 opacity:1@80%..0:ease=in        # fade out over the last 20%

Target a time range — --set-action

--set-action ACTION,START,END overrides defaults for a range (range syntax; sec, start/end, negatives all work). The range is force-kept.

bash
auto-editor video.mp4 --set-action nil,0,5sec
auto-editor video.mp4 --set-action speed:1.5,varispeed:1.5,30sec,end
auto-editor video.mp4 --set-action add:./logo.png:600:300:1.0,1sec,2sec

Recipes

bash
auto-editor :mic -w:1 deesser:0.8:0.7:0.4         # record, then clean up speech
auto-editor podcast.mp3 -w:0 cut -w:1 speed:1.15      # cut silence, tighten speech
auto-editor video.mp4 -w:0 volume:0.3                 # duck (not cut) the silence
auto-editor video.mp4 -w:1 varispeed:1.25             # nightcore (speed + pitch up)
auto-editor video.mp4 -w:0 pitch:12                   # chipmunk the silence, same length
auto-editor video.mp4 -w:0 speed:6,volume:0.4         # fast, quiet silent sections

With :mic, press Ctrl-C to finish capture; actions are applied afterward.

Full reference: <https://auto-editor.com/ref/actions.md>. For plain cutting / pace / edit methods, see the auto-editor skill.

aus demselben Repository

Weitere Skills

Alle Skills