%CODIFICACIÓN DE CANAL.
%function [tr1,tr2,tr3,tr4,t5a,t6a,t7a,t8a]=codcanal(LARc,Nc,bc,Mc,xmaxc,xmc,t5a,t6a,t7a,t8a)
%Entradas:
%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.
%t5a,t6a,t7a,t8a:bloques del 5 al 8 de la trama anterior.
%Salidas:
%tr1,tr2,tr3,tr4:las cuatro tramas de salida.
%t5a,t6a,t7a,t8a:bloques del 5 al 8 para la siguiente trama.
function [tr1,tr2,tr3,tr4,t5a,t6a,t7a,t8a]=codcanal(LARc,Nc,bc,Mc,xmaxc,xmc,t5a,t6a,t7a,t8a)
a=bitcod(LARc,Nc,bc,Mc,xmaxc,xmc);%codificamos en bits todos los parámetros.
b=reord(a);%aplicamos una reordenación.
c=crc5350(b(1:50));%aplicamos un código cíclico.
d=entrelazado(b(1:182),c);%aplicamos un entrelazado.
e=crc215(d);%aplizamos un código convolucional.
f=[e,b(183:260)];%formamos los 456 bits de salida.
[t1,t2,t3,t4,t5,t6,t7,t8]=partic(f);%aplicamos un particionamiento.
tt1=entdiagb(t1,t5a);%aplicamos un entrelazado diagonal de bloques.
tt2=entdiagb(t2,t6a);
tt3=entdiagb(t3,t7a);
tt4=entdiagb(t4,t8a);
t5a=t5;%actualizamos los bloques 5 al 8 para la siguiente trama.
t6a=t6;
t7a=t7;
t8a=t8;
tr1=enttrama(tt1,1);%aplicamos un entrelazado de trama.
tr2=enttrama(tt2,2);
tr3=enttrama(tt3,3);
tr4=enttrama(tt4,4);