From 8cd3cde39da06795a793e7eec87ce2a6ce15fe80 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sun, 13 Sep 2020 16:40:20 +0200 Subject: Add intensity? --- guile/starlet/base.scm | 9 +++++++-- guile/starlet/playback.scm | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/guile/starlet/base.scm b/guile/starlet/base.scm index b0cc952..a8a7252 100644 --- a/guile/starlet/base.scm +++ b/guile/starlet/base.scm @@ -32,7 +32,8 @@ apply-state at home-state - blackout-state)) + blackout-state + intensity?)) (define-class () (name @@ -138,6 +139,10 @@ (slot-ref fix 'attributes))) +(define (intensity? a) + (eq? 'intensity (get-attr-name a))) + + (define (find-attr fix attr-name) (find (lambda (a) (eq? (get-attr-name a) @@ -242,7 +247,7 @@ (value->number b time))) (define (merge-rule-htp attr a b) - (if (eq? 'intensity (get-attr-name attr)) + (if (intensity? attr) ;; HTP only for intensity attributes (lambda (time) diff --git a/guile/starlet/playback.scm b/guile/starlet/playback.scm index d781f48..aaf4727 100644 --- a/guile/starlet/playback.scm +++ b/guile/starlet/playback.scm @@ -108,7 +108,7 @@ (let ((state (make-empty-state)) (scale-factor (get-current-fraction fade current-time))) (state-for-each (lambda (fix attr value) - (if (eq? 'intensity (get-attr-name attr)) + (if (intensity? attr) (set-in-state! state fix attr -- cgit v1.2.3