vlc_linux/vlc-3.0.16/modules/audio_filter/spatializer/comb.hpp
// Big to inline - but crucial for speed
Big to inline - but crucial for speed
Big to inline - but crucial for speed
inline float comb::process(float input)
{
    float output;
    output = undenormalise( buffer[bufidx] );
    filterstore = undenormalise(output*damp2);
    buffer[bufidx] = input + filterstore*feedback;
    if(++bufidx>=bufsize) bufidx = 0;
    return output;
}
inline float comb :: process ( float input ) { float output ; output = undenormalise ( buffer [ bufidx ] ) ; filterstore = undenormalise ( output * damp2 ) ; buffer [ bufidx ] = input + filterstore * feedback ; if ( ++ bufidx >= bufsize ) bufidx = 0 ; return output ; }
Big to inline - but crucial for speed
Big to inline - but crucial for speed
/* FIXME
* comb::process is not really ear-friendly the tunning values must
* be changed*/