%DECODIFICACIÓN DE CANAL.
%function [LARc,Nc,bc,Mc,xmaxc,xmc,t1a,t2a,t3a,t4a]=descodcanal(tr1,tr2,tr3,tr4,t1a,t2a,t3a,t4a)
%Entradas:
%tr1,tr2,tr3,tr4:las cuatro tramas de entrada.
%t1a,t2a,t3a,t4a:bloques del 1 al 4 de la anterior trama recibida.
%Salidas:
%LARc:LAR codificados.
%Nc:términos de autocorrelación codificados.
%bc:ganancias de autocorrelación codificados.
%Mc:posiciones RPE codificadas.
%xmaxc:valores máximos RPE codificados.
%xmc:subsecuencia seleccionada codificada.
%t1a,t2a,t3a,t4a:bloques del 1 al 4 para la siguiente trama.
function [LARc,Nc,bc,Mc,xmaxc,xmc,t1a,t2a,t3a,t4a]=descodcanal(tr1,tr2,tr3,tr4,t1a,t2a,t3a,t4a)
tt1=desenttrama(tr1,1);%efectuamos el desentrelazado de trama.
tt2=desenttrama(tr2,2);
tt3=desenttrama(tr3,3);
tt4=desenttrama(tr4,4);
[t1,t5a]=desentdiagb(tt1);%desentrelazado diagonal de bloques.
[t2,t6a]=desentdiagb(tt2);
[t3,t7a]=desentdiagb(tt3);
[t4,t8a]=desentdiagb(tt4);
f=despartic(t1a,t2a,t3a,t4a,t5a,t6a,t7a,t8a);%desparticionamiento.
t1a=t1;%actualizamos los bloques.
t2a=t2;
t3a=t3;
t4a=t4;
e=f(1:378);
d=incrc215(e);%código convolucional inverso.
[b,c]=desentrelazado(d);%desentrelazado.
b=[b,f(379:456)];
nerror=incrc5350(b(1:50),c);%comprobamos si ha habido error con el código cíclico.
a=desreord(b);%desreordenación.
[LARc,Nc,bc,Mc,xmaxc,xmc]=bitdec(a);%decodificamos los bits recibidos.