Files
test/sexp_effects/effects/threshold.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

14 lines
396 B
Common Lisp

;; Threshold effect - converts to black and white
;; @param level int [0, 255] default 128
;; @param invert bool default false
(define-effect threshold
((level 128) (invert false))
(map-pixels frame
(lambda (x y c)
(let* ((lum (luminance c))
(above (if invert (< lum level) (> lum level))))
(if above
(rgb 255 255 255)
(rgb 0 0 0))))))