%ADAPTACIÓN DE UMBRAL.
%function [adaptcount,thvad,rvad]=thadap(ACF,ptch,rav1,stat,pvad,adaptcount,thvad)
%Entradas:
%ACF:coeficientes de autocorrelación.
%ptch:variable que indica si hay periodicidad o no.
%rav1:predicción de los valores de autocorrelación.
%stat: detector de estacionaridad.
%pvad:potencia filtrada del vad.
%adapcount:contador para la adaptación.
%thvad:potencia umbral de decisión.
%Salidas:
%adapcount:contador para la adaptación.
%thvad:potencia umbral de decisión.
%rvad:coeficientes de reflexión del vad.
function [adaptcount,thvad,rvad]=thadap(ACF,ptch,rav1,stat,pvad,adaptcount,thvad)
pth=300000;
plev=800000;
fac=3;
adp=8;
inc=16;
dec=32;
margin=80000000;
rvad=[6 -4 1 0 0 0 0 0 0];
if(ACF(1)<pth)
   thvad=plev;
   return
end
if(stat==1 & ptch==0)
   adaptcount=adaptcount+1;
else
   adaptcount=0;
   return
end
if(adaptcount<=adp)
   return
end
thvad=thvad-(thvad/dec);
if(thvad<(pvad*fac))
   thvad=min(thvad-(thvad/dec),pvad*fac);
end
if(thvad>pvad+margin)
   thvad=pvad+margin;
end
rvad=rav1;
adaptcount=adp+1;
