function [aa] = CapturaDeAudio()
clc

t_end = 3;
Fsc = 50000;
nBits = 24;
Nchannel = 1;
Gain = 1024;
nm = Fsc*30e-3;
nbits = 2^14;
Offset = 2047;


recObj = audiorecorder(Fsc, nBits, Nchannel);%comando para declarar la grabacion de voz
recObj.StartFcn = 'disp('' Start speaking '')';%mensaje para a grabar voz


input('Press to record voice');%input para empezar grabar voz
recordblocking(recObj, t_end);%comando para grabacion
disp('End of recording. Playing back ...');%mensaje para terminar grabacion
y = Gain*(getaudiodata(recObj)) + Offset;%comando para terminar grabacion
fileID =  fopen('Audio.txt','w');% comando para crear archivo de texto de formato de escritura
fprintf(fileID, '%d\n', y);%se sobre escribe en el archivo txt los datos de audio obtenidos, 
%se usa el %d para que cada dato ocupe una fila
fclose(fileID);%se cierrar la escritura en el archivo de texto
%play(recObj)% reproduccion del audio obtendio

load Audio.txt %cargar el archivo de texto

S = zeros(1,Fsc*t_end); %Vector donde se guarda la Señal de Voz de entrada
for i = 1:1:Fsc*t_end
    S(i) = Audio(i,:);%creacion vector que tendra los archivos de audio
end

N = length(S);

%[Ns, Ssr, Eav] = Eliminacion(S, N, nm);%funcion de elminiacion

[Ssr, longPal] = detectorExtremos(S);

Ns = length(Ssr);

%soundsc(Ssr,Fsc);


%regla de 3 con el tiempo de grabación
To = N/Fsc; %Tiempo de grabación-> Señal de Entrada
Tg = Ns*To/N; %Tiempo de grabación-> Señal recortada

[Spp] = Pre_enfasis(Ssr,Ns);

x = fix(Ns/nm);
y = 15;
a = zeros(2*x,y);
aj = zeros(1,y);
aj1 = zeros(1,y);

%aj1=0;
for j=1:x
    
 [Sw,Swc,Seg] = Segmentacion(j,Spp,nm, nbits);
 [rxx0, rxx1, Swn, Swcn, auto] = Autocorrelacion(nm, Sw, Swc);
 m = length(rxx0);% tendra el largo del vector que contiene los coeficientes de autocorrelacion de enventanado normal
 b = (2*j)-1;
 v = (2*j);
 
 rxx0b = rxx0(m:-1:1);
 a(b,1) = fix(rxx0(2)/(rxx0(1)/8));
 Ki = fix(rxx0(2)/(rxx0(1)/8));
 
 f1=4096;
 
 rxx1b = rxx1(m:-1:1);
 a(v,1) = fix(rxx1(2)/(rxx1(1)/8));
 Ki1 = fix(rxx1(2)/(rxx1(1)/8));
 for i = 2:m-1
     Ni = rxx0(i+1)-(rxx0b(i))'*Ki;
     Di = rxx0(1)-(rxx0(i))'*Ki;
     Ki = ceil(Ni/floor(Di/f1));
     
     Ni1 = rxx1(i+1)-(rxx1b(i))'*Ki1;
     Di1 = rxx1(1)-(rxx1(i))'*Ki1;
     Ki1 = ceil(Ni1/floor(Di1/f1));
     for h = 1:i-1
         aaj = floor((Ki*a(b,i-h))/f1);
         aj(h) = (a(b,h))-aaj;
         aj(i) = Ki;
         aaj1 = floor((Ki1*a(v,i-h))/f1);
         aj1(h) = (a(v,h))-aaj1;
         aj1(i) = Ki1;
     end
     a(b,:) = aj;
     a(v,:) = aj1;
 end 
end

l=0;

lpc=zeros(1,2*x*y);
for i = 1:1:2*x
    for k = 1:1:y
        l=l+1;
        lpc(l) = a(i,k);
    end
end

aa = a;

end

