13
0
Go to file
Robin Gareus 6f755c3c02
Fix loop-fade and de-click buffersize calculation
Exponential approach to zero:
     1 / exp(t) == exp (-t)
we "stretch" it by a time-constant "c":
        gain(t) = exp (-t * c)

To find the time t, at which the exponential approach reaches gain "g":
                                  exp (-c * t) = g
take the log of both sides:  log (exp (-c * t) =  log (g)
since  log (exp (x)) == x :               -c t =  log (g)
divide by -c              :                  t = -log (g) / c
set g = 1e-5 and c = _a/sr and we get:       t = -log (1e-5) / (_a/sr)

The iterative approach using g += c * (target_gain - g);
converges faster than the exact exp() calculation.

Except with 32-bit float, if target-gain is 1.0f and "c" is small.

With 32bit float (1.0 - 1e-5) = .9999900 is represented as
   sign: +1 | mantissa: 0x7fff58 | exponent: 126
there are only 126 "steps" to 1.0. Rounding of the lowest
mantissa bit does matter. We have to assume worst-case,
and increase the required loop_fade_length buffersize.

vs. approaching 0, where there are over 2^110 steps between
zero and 1e-5.
2020-02-12 17:28:53 +01:00
doc Update waf to v2.0.19 2020-01-25 04:07:41 +01:00
export
gtk2_ardour expand comment 2020-02-11 17:40:38 -07:00
headless
libs Fix loop-fade and de-click buffersize calculation 2020-02-12 17:28:53 +01:00
mcp
midi_maps
msvc_extra_headers
MSVCardour3
MSVCMixbus3
MSVCvst_scan
nutemp
osc
osc_interfaces/touchosc
patches
patchfiles reverse occurence order of "General MIDI" and "MIDI" in the generic MIDNAM file 2020-02-11 22:10:02 -07:00
plugin_metadata
scripts Readable and AudioROM Lua script examples 2020-02-06 17:30:22 +01:00
session_utils Towards waf python 2+3 support 2020-01-25 04:07:37 +01:00
templates
tools Fix OSX/PPC packaging 2020-01-25 11:35:17 +01:00
us2400
vst
.dir-locals.el
.gitattributes
.gitignore
ardour.1
ardour.1.es
ardour.1.fr
ardour.1.ru
COPYING
instant.xml.sae
msvc32-fixup.pl
PACKAGER_README
README
README-GITHUB.txt
system_config
testfile.flac
testfile.ogg
TRANSLATORS
waf Update waf to v2.0.19 2020-01-25 04:07:41 +01:00
wscript Fix configuration with gcc-9 2020-01-26 01:11:23 +01:00

Please see the Ardour web site at http://ardour.org/ for all documentation..

For information on building ardour: 
      
     http://ardour.org/development.html