!********************************************
! Preset FDN 16X16 als decorrelatiefilter.txt
!********************************************

Declareer early; b; c; g; h; direct
Declareer M; gain; duur; start; w

Wis buffers
  Wis buffer (F1...F32, S1, S2, S3)   F1  | F2

Priemgetallen
  buffer F?[?]   F2[0]
  interval A;B   31; 8000

early       = 1/16
b           = 0,7
c           = 0,7
direct      = 0
gain        = 0,7
duur        = 180*Fs

!*******************************************************************************
FOR n = 0 TO 15
  F1[n]    = early / (n+1)                    ! Gain early
  F1[n+16] = b*(random(0;100)/100 )            ! Gain b
  F1[n+32] = c*(random(0;100)/100 )            ! Gain c
  F1[n+80] = 3                                ! Early delay lengten in smp
  F1[n+96] = F2[n]                            ! FDN delay lengten in smp
NEXT n

F1[112] = direct
F1[113] = 1       ! coefficient A van tonal correction filter
F1[114] = 0       ! coefficient B van tonal correction filter

!*******************************************************************************
FOR n = 0 TO 15
  M = F1[n+96]                                ! FDN-delaylengte
  g = 1
  h = 0
  F1[n+48] = g*gain                           ! g coef loop-filter
  F1[n+64] = h*gain                           ! h coef loop-filter
NEXT n

!*******************************************************************************
Galm
  bronspoor en index        S1[0]
  doelspoor en index        S3[0]
  buffer parameters F?[?]   F1[0]
  aantal samples (duur)     duur
  
  
!*******************************************************************************
! Meet de correlatie tussen S1 en S2
  
Wis buffers
  Wis buffer (F1...F32, S1, S2, S3)   F1 | F2
  
duur  = 10*Fs
start = 15*Fs
F2[0] = 0
F2[1] = 0
  
Bewerk signaal
  n0          start
  n1          start + duur
  Bewerking   F2[0] = F2[0] + S1[n]^2
  
Bewerk signaal
  n0          start
  n1          start + duur
  Bewerking   F2[1] = F2[1] + S2[n]^2
  
w = ((F2[0]*F2[1])^0,5)
Print w
  
FOR k = 0 TO 500
  Print 500 - k
  
  Bewerk signaal
    n0          start
    n1          start + duur
    Bewerking   F1[k] = F1[k] + S1[n]*S2[n+k]
  
  F1[k] = F1[k] / w
NEXT k


Som, energie, max, min
  Buffer                    1
  Vanaf samplenummer        0
  Tot en met samplenummer   500
