smooth_add.liq
def smooth_add(~normal,~special)
d = 1. # delay before mixing after beginning of mix
p = 0.2 # portion of normal when mixed
fade.final = fade.final(duration=d*.2.)
fade.initial = fade.initial(duration=d*.2.)
q = 1. -. p
c = change_volume
fallback(
track_sensitive=false,
[special,normal],
transitions=[
fun(normal,special)->
add(normalize=false,
[c(p,normal),
c(q,fade.final(normal)),
sequence([blank(duration=d),c(q,special)])]),
fun(special,normal)->
add(normalize=false,
[c(p,normal),
c(q,fade.initial(normal))])
])
end
Download