-#(define (scale-one-music m fraction)
- "Maybe we should just export Music::compress to Scheme?"
- (let*
- ((dur (ly:music-property m 'duration)))
-
- (if (ly:duration? dur)
- (let*
- ((l (ly:duration-log dur))
- (d (ly:duration-dot-count dur))
- (factor (ly:duration-factor dur)))
-
- (ly:music-set-property! m 'duration
- (ly:make-duration l d
- (* (car fraction) (car factor))
- (* (cdr fraction) (cdr factor))))))
-
- m))
-
-#(define (scale-music-function fraction)
- (lambda (x)
- (music-map (lambda (y) (scale-one-music y fraction)) x)))