Files
test/effects/wave.sexp
gilesb 406cc7c0c7 Initial commit: video effects processing system
Add S-expression based video effects pipeline with modular effect
definitions, constructs, and recipe files.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 12:34:45 +00:00

22 lines
782 B
Common Lisp

;; Wave effect - sinusoidal distortion
;; Usage: python3 plan.py effects/wave.sexp -p amplitude=30 -p wavelength=60 | python3 execute.py - -d . -o output.mp4
;;
;; Parameters:
;; amplitude: wave height in pixels (5 to 100, default: 30)
;; wavelength: wave period in pixels (20 to 200, default: 60)
(recipe "wave"
:version "1.0"
:encoding (:codec "libx264" :crf 20 :preset "medium" :audio-codec "aac" :fps 30)
(effect wave :path "sexp_effects/effects/wave.sexp")
;; Default parameters (overridden by -p amplitude=N -p wavelength=N)
(def amplitude 30)
(def wavelength 60)
(def video (source :path "monday.webm"))
(def clip (-> video (segment :start 0 :duration 10)))
(def result (-> clip (effect wave :amplitude amplitude :wavelength wavelength)))
result)