Last active
December 15, 2022 23:43
-
-
Save 130db/6001343 to your computer and use it in GitHub Desktop.
This piece of Liquidsoap is written by me and used by Pieci http://pieci.lv.
I would appreciate, if you have an idea how to improve it. You can hear it at work on Pieci live streaming.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# Pieci / 5 koncerti sound processing | |
# http://pieci.lv | |
# | |
# Author: Aigars Sukurs <[email protected]> | |
# Copyright: (C) 2013 130DB | |
# Licence: MIT | |
# | |
s = ladspa.gate(s, threshold = -60.0, attack = 0.15, hold = 1.0, decay = 200.0, range = -25.0) | |
# Wideband AGC | |
s = normalize(target = 0., window = 0.03, gain_min = -16., gain_max = 0., s) | |
# Initial compression low ration | |
s = ladspa.sc4(rms_peak=0.3, attack_time = 0.5, release_time = 3., threshold_level = -36.0, ratio=1., makeup_gain = 6., s) | |
# Emulate a five-band crossover network | |
sub = filter.iir.eq.low(frequency = 190.,) | |
lhi = filter.iir.eq.high(frequency = 190.,) | |
llo = filter.iir.eq.low(frequency = 700.,) | |
mhi = filter.iir.eq.high(frequency = 700.,) | |
mlo = filter.iir.eq.low(frequency = 2500.,) | |
hhi = filter.iir.eq.high(frequency = 2500.) | |
hlo = filter.iir.eq.low(frequency = 6500.) | |
shi = filter.iir.eq.high(frequency = 6500.) | |
slo = filter.iir.eq.low(frequency = 15000.) | |
c = ladspa.sc4(rms_peak = 0.5) | |
l = ladspa.tap_limiter(limit_level = -0.5) | |
# Emulate a five-band AGC compresor and limit | |
s = add(normalize=false, | |
[ | |
l(c(attack_time = 2.25, release_time = 40., threshold_level = -10., ratio=3., makeup_gain = 2., sub(s))), | |
l(c(attack_time = 2.25, release_time = 40., threshold_level = -13., ratio=3., makeup_gain = 2., llo(lhi(s)))), | |
l(c(attack_time = 2.25, release_time = 40., threshold_level = -9., ratio=3., makeup_gain = 2., mlo(mhi(s)))), | |
l(c(attack_time = 2.25, release_time = 40., threshold_level = -6., ratio=3., makeup_gain = 1.5, hlo(hhi(s)))), | |
l(c(attack_time = 2.25, release_time = 40., threshold_level = -4., ratio=3., makeup_gain = 1., slo(shi(s)))) | |
]) | |
# Limit, if there is something to limit | |
s = l(s) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
For the last version of liquidsoap add s=radio and radio = s