0% encontró este documento útil (0 votos)
5 vistas5 páginas

Corrección de Errores en Transmisiones VLC

Este documento presenta los resultados de una práctica sobre la corrección de errores en la transmisión de secuencias multimedia a través de redes. Se describen 5 hitos que incluyen la implementación de un emulador de red, la transmisión con y sin pérdidas de paquetes, y el uso de duplicación de paquetes para la corrección de errores.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas5 páginas

Corrección de Errores en Transmisiones VLC

Este documento presenta los resultados de una práctica sobre la corrección de errores en la transmisión de secuencias multimedia a través de redes. Se describen 5 hitos que incluyen la implementación de un emulador de red, la transmisión con y sin pérdidas de paquetes, y el uso de duplicación de paquetes para la corrección de errores.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad Carlos III de Madrid

Departamento de Ingeniería Telemática

REDES MULTIMEDIA Curso 2021/22

Práctica 2

Corrección de errores en la recepción de secuencias multimedia

Hecho por: Hugo Herrero Gómez-Pompa

Plantilla de presentación de resultados

El objetivo de esta plantilla es proporcionar una guía a los alumnos para rellenar durante el desarrollo
de la práctica, i) documentando los diferentes hitos de la misma mediante un recorte de pantalla o ilustraciones
elaboradas por el alumno, y ii) contestando de manera concisa a una serie de preguntas sobre el desarrollo de
la práctica. La plantilla indica la longitud esperada en las respuestas,

NOTAS IMPORTANTES:
1. Al capturar pantallas, asegurarse de que al pegar las mismas sobre la plantilla quedan a un
tamaño que haga legible el contenido y permita al profesor la evaluación del desempeño del
alumno.
2. Al copiar y pegar código, se recomienda usar una fuente como “Courier” que tenga un tamaño
fijo de letra para mostrar claramente el adecuado indentado del código..

Hito 1: Documentar un esquema de clases que incluya todo el funcionamiento del emulador.

Diagrama de clases
Universidad Carlos III de Madrid

Departamento de Ingeniería Telemática

Hito 2: Efectuar una transmisión VLC entre dos ordenadores con un bloque de emulador entre medias

Captura de pantalla del emulador y de la recepción de video

2
Universidad Carlos III de Madrid

Departamento de Ingeniería Telemática

Hito 4: Efectuar una transmisión VLC entre dos ordenadores con un bloque de canal con pérdidas entre
medias

Captura de pantalla que recoja el funcionamiento del canal donde figure claramente la evolución del
número de paquetes perdidos. Indicar la probabilidad de pérdida utilizada.

Probabilidad de pérdida utilizada: 10%.

Copie y pegue el código añadido al bloque emulador

La variable “random” almacena un número al azar del 1-100, por otra parte la variable “p_loss” almacenará la
probabilidad de perdida introducida en “[Link]”.

double random = [Link]()*100;


if(random<p_loss) {
emulador.counter_loss+=1;
}else {
[Link](packettx);
emulador.tx_packet+=1;
}

long time = txTime([Link](), bw);


[Link](time);

Preguntas hito 4:

¿A qué probabilidad de pérdida se pierde claramente calidad de visionado de vídeo?


Si ponemos una probabilidad de pérdida del 1% ya tenemos algunos píxeles que nos fallan en la transmisión.
¿Cuál es el efecto sobre el video?
El video va perdiendo pixeles e incluso fotogramas enteros, según aumentamos el porcentaje de perdidas
hasta tal punto que no se pueden ver los fotogramas y tampoco se escucha el audio.

3
Universidad Carlos III de Madrid

Departamento de Ingeniería Telemática

Hito 5: Efectuar una transmisión VLC entre dos ordenadores con un sistema de corrección de
errores entre medias

Captura de pantalla que recoja el funcionamiento del algoritmo de corrección de errores donde se
pueda ver los indicadores tanto del transmisor como del receptor

Podemos observar que la imagen se puede ver más o menos aunque hay bastantes partes en las que la imagen
completa se pixela.

Copie y pegue el código añadido al bloque emulador

Transmisor del bloque duplicador


for(int i = 0; i<k;i++) {
[Link](packettx);
emulador.tx_packet+=1;
}

Transmisor del bloque receptor


if(packettx!=null) {
secnew = [Link]()[2] * 256 + [Link]()[3];
if(seclast == secnew) {
[Link]++;
}else {
[Link](packettx);
emulador.tx_packet++;
seclast=secnew;
long time = txTime([Link](), bw);
[Link](time);
}

4
Universidad Carlos III de Madrid

Departamento de Ingeniería Telemática

Pregunta hito 5:

Explique los contadores que se obtienen en los bloques y justifique la relación entre ellos

En el bloque de duplicador el receptor recibe únicamente una copia por paquete, a partir de aquí el
transmisor los transmite k veces cada paquete (en este caso el valor de k es 2). Es por ello que “rx = tx/k”. Por
otra parte el bloque receptor, recibe todos los paquetes k veces y su transmisor se encargará de comparar el
último paquete que ha enviado con el que va a enviar. Por lo tanto, todos los paquetes que estén duplicados
automáticamente serán eliminados. Todos estos paquetes que son eliminados se cuentan en la variable
“paquetes duplicados”, y los enviados son la variable tx. Entonces se cumple que “paquetes duplicados*k = rx”.

Hito 5 opcional: Ajustar el código para que K sea configurable desde el fichero de
configuración pasado como parámetro.

Captura de pantalla que recoja el funcionamiento del algoritmo de corrección de errores con K variable
(indicar)

Con K=5 obtenemos estos resultados, para que pudiera soportar el ancho de banda, ya que es mucho mas alta
cuando mandamos tantos paquetes he aumentado la variable BW.

Copie y pegue el código añadido al bloque emulador

k = [Link]([Link]("k","2"));

Básicamente hemos añadido esta línea en la clase emulador del bloque duplicador, en ella hacemos pasar por
el archivo de propiedades la variable K. Es igual que lo que se ha hecho en el hito 2 con la variable del porcentaje
de pérdidas.

También podría gustarte