multimedia en internet -...
TRANSCRIPT
Multimedia en InternetPrimera parte: Conceptos, Audio y vídeo
(Segunda Parte: Datos y Práctica)
Dr. Agustín J. GonzálezDepartamento de Electrónicahttp://www.elo.utfsm.cl/~agv
Senacitel 2004
Senacitel 2004 Multimedia en Internet 2
Contenido (Primera parte)
ConceptosAparición de audio y vídeo en InternetBreve sobre protocolos en InternetTransmisión de voz en InternetTransmisión de video en InternetAspectos no cubiertosAplicaciones:MBone, VRVS, Realnetworks,WindowsMedia, QuickTime streaming Server, FFMPEG
Senacitel 2004 Multimedia en Internet 3
Conceptos y origen¿Qué es mutlimedia?
Interacción Hombre-computador involucrando texto, gráficos, voz, y vídeo (http://computing-dictionary.thefreedictionary.com/Multimedia)
Adj. Que utiliza conjunta y simultáneamente diversos medios, como imágenes, sonidos y texto, en la transmisión de información. Dic. de la Real Academia Española, www.rae.es
“Uno debería hablar de multimedia sólo cuando medios continuos y discretos son utilizados.” R. Steinmetz & K.Nahrstedt.
El término se ha relajado y algunos hablamos de “multimedia”aún en presencia de sólo un medio continuo. Por ejemplo: la radio en Internet.
Senacitel 2004 Multimedia en Internet 4
Términos relacionados
Download y reproducción: Acceso a un contenido almacenado, el cual es bajado antes de su reproducción.Streaming de contenido en vivo: el contendido es generado en ese momento. Se dice también sincrónico.Streaming de contenido almacenado: Reproducción a medida que el contenido es recibido. No se genera copia local. Ej. Televisión, radio por IP, videoconferencia, video streaming.Interactivo: dos usos:
Podemos hacer pausa, rebobinar, adelantar etc. Cuando hay interacción entre los dos extremos: video conferencia, telefonía IP.
Senacitel 2004 Multimedia en Internet 5
Aparición de audio y vídeo en Internet
¿Qué las hizo posible? Aumento del desempeño de computadoresCrecimiento de la Internet en ancho de banda y # de máquinas
Desafíos / requerimientosPotencia de procesamiento y ancho de bandaEscalabilidad: llegar a un gran número de usuarios.Heterogeneidad: en anchos de banda (LAN/modem), en sistemas operativos(WinXX/Linux), en formatos de compresión (MPEG/H263)Entrega de datos “en tiempo real”
En perspectivaEn 1992 se efectuó la primera transmisión de audio multipunto (Marzo) y vídeo (Noviembre)
Senacitel 2004 Multimedia en Internet 6
Recursos Requeridos por Audio/Vídeo
Ancho de Bandabits por segundo
Procesamiento(Complejidad)
Calidad
MalaMedia
Aceptable
Senacitel 2004 Multimedia en Internet 7
Processor Performance Increase
3
Aumento del Desempeño de losProcesadores
µProc60%/yr.
1
10
100
100019
8019
81
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
CPU
1982
Perf
orm
ance
Time
Fuente: Dr. David Patterson University of Virginia Distinguished Lecture Series, May 19,1998. http://www.cs.berkeley.edu/~pattrsn/talks/Stanford.pdf
Senacitel 2004 Multimedia en Internet 9
Recursos Requeridos por Audio y Vídeo
Ancho de Banda
Procesamiento
Calidad
MalaMedia
Aceptable
Procesamiento + ancho de banda + conectividad
Senacitel 2004 Multimedia en Internet 10
Aplicaciones multimedia
Las aplicaciones de las redes son la razón de ser de las redes de computadores.Lo ideal sería tener BW infinito, 0 retardo, y no perder datos.Como esto no es posible, cuando desarrollamos una aplicación debemos elegir alguno de los protocolos disponibles. ¿Cómo hacemos esta elección?Debemos estudiar los servicios ofrecidos por los protocolos de transporte.
Senacitel 2004 Multimedia en Internet 12
Capas de protocolos y sus funciones
Modelo OSI
Aplicación
Presentación
Sesión
Transporte
Red
Enlace
Física
Modelo TCP/IP
Aplicación
Red
Acceso
Transporte
Programa Programa Programa
TCP UDP
IPICMP OSPF
ARP
HSSI
PPP SLIP
X.21 EIA
Funciones
Funciones de red especializadas:Transferencia de archivo, correo
electrónico, terminales virtuales ...
Formateo de datos, conversión decódigos de carácter, cifrado básico
Negociación y establecimiento de unaconexión con otro nodo
Provisión de datos end-to-end
Ruteo de paquetes de extremo a extremo
Transferencia entre nodos adyacentesde unidades direccionables (frames) y
verificación de errores
Transmisión de datos binarios sobre lasredes de comunicación
Senacitel 2004 Multimedia en Internet 13
Encapsulación de datos en distintas capas
Datos de usuario
Datos de usuario
Datos de aplicación
App1header
Header TCP
Segmento TCP
Datos de aplicaciónHeader TCPHeader IP
Diagrama IP
Datos de aplicaciónHeader TCPHeader IPHeaderethernet
14 20 20
Trailerethernet
4Frame Ethernet46 a 1500 bytes
aplicación
TCP
IP
DriverEthernet
Ethernet
Senacitel 2004 Multimedia en Internet 14
Servicios Provistos por
TCPServicio confiable
No hay erroresDatos en orden
Orientado a la conexiónflujo continuo de datosunidad mínima: byte
Para sobreponerse a pérdidas se usan retransmisiones lo cual tiene impacto en retardo.Existe mecanismos de control de flujo que reduce throughput ante congestión.
UDPServicio No confiable
Hay pérdida de paquetesOrden de llegada no garantizado
Servicio de datagramabloques independientesEl paquete llega todo o nada
---
---
Senacitel 2004 Multimedia en Internet 15
Pérdida de paquetes UDP en InternetEntre Virginia y California (EEUU), Valparaíso
Sin Routers13 Hops18 Hops Satélite
Senacitel 2004 Multimedia en Internet 16
Tiempo de ida y vuelta (RTT) en InternetEntre Virginia y California (EEUU), Valparaíso
Sin Routers13 Hops18 Hops Satélite
Senacitel 2004 Multimedia en Internet 17
Pérdida de paquetes seguidos en InternetMediciones entre Inglaterra y Francia a las 8:00 am y 4 pm
4%, 45 min
16% 45 min
Senacitel 2004 Multimedia en Internet 19
Análisis de la transmisión de audio en Internet
El sonido es una onda generada por la perturbación de la presión en el ambiente (onda de presión).Los humanos oímos sonidos entre 20 y 20 [KHz]El micrófono es el transductor sonido a señal eléctrica, cuya señal es discretizada en tiempo y en amplitud.
Onda de presión
Senacitel 2004 Multimedia en Internet 20
Sonido/voz Digital
Podemos reducir datos si el muestreo se reduce: para voz basta 8 KHz, para captar nuestro rango audible se usa 44.1 KHz.Manejamos sólo valores discretos para la amplitud. Para una buena calidad de voz 8.192 niveles (213) son suficientes.Si el salto discreto lo hacemos pequeño para valores pequeños y grande para los mayores, el número de niveles se puede reducir a 256 niveles (8 bits) por muestra. Se consigue así un error de cuantización parejo para todo el rango.(G.711)
256
8.192
Senacitel 2004 Multimedia en Internet 21
De ondas de presión a paquetes
Onda depresión
Sensor
Presión
tiempo
TarjetaCapturadora
Muestreo ConversiónAnálogo/Digital
Voltaje
tiempo
Númeroenteros
tiempo
Compresión
Hardware oProcesador
Confección depaquete Transmisión
....101010001001011 ... 10101000100 0111001101
Senacitel 2004 Multimedia en Internet 22
Proceso inverso:paquetes a onda de presión
Presión
tiempo
TarjetaSonido
ConversiónDigital/Análoga
tiempo
Númeroenteros
tiempo
Descompresión
Hardware oProcesador
Acomodo depaquetesperdidos
Recepción
....101010001001011 ...
10101000100 0111001101 Voltaje
Senacitel 2004 Multimedia en Internet 23
Compresión/codificación
Una vez que cada muestra de sonido es digitalizada, se acumula entre 20 a 40 ms de voz (160 a 320 muestras), se comprimen y estructura un paquete para su transmisión.La compresión es la eliminación de redundancia y eventualmente información “poco” relevante. Objetivo es reducir ancho de banda o almacenamiento .1 min =>
El silencio es redundancia: no se transmite.
][128][10~10~]/[60*]/[2*][2*]/[44100
KbpsaminMBminsmuestrabytecanalessmuestra
=>=
Senacitel 2004 Multimedia en Internet 24
Ideas usadas en compresión
Dos estrategias: Codificar la forma de ondaModelar el tracto bucal
En lugar de enviar cada muestra codificada, enviar sólo las diferencias que al ser menores se pueden representar con menos bits. Usando las muestras previas predecir la siguiente y enviar la diferencia entre la predicción y la señal real.ADPCM (G.726)Adaptive DifferentialPulse Code Modulation
Senacitel 2004 Multimedia en Internet 25
Ideas usadas en compresión
Descomponer la señal como la suma de un conjunto de frecuencias preestablecidas y enviar la amplitud de cada una de ellas. G.722 Sub-Band Adaptive Differential Pulse CodeModulation (SB-ADPCM)
Senacitel 2004 Multimedia en Internet 26
Ideas usadas en compresión
Modelar analíticamente el tracto bucal y enviar los parámetros que mejor se ajustan el modelo al trozo de señal.Similar al anterior enviando también la señal de error entre lo obtenido con el modelo y lo real.Code Excited Linear Prediction (CELP) G.728 Low Delay Code Excited Linear Prediction (LD-CELP)G.729 Conjugate Structure Algebraic Code Excited Linear Prediction (CS-ACELP)
Senacitel 2004 Multimedia en Internet 27
Contenido sensible al tiempo:Introducción de marcas de tiempo
El sonido es una señal continua, si cada muestra es recibida podremos mantener la relación temporal del contenido.Sin embargo,
la eliminación del silencio, la pérdida de paquetes, la necesidad de sincronización con otros medios
obligan incorporar marcas de tiempo en cada paquete para su posterior reproducción en forma sincronizada. Las marcas de tiempo permiten también estimar las variaciones de retardo en la red y ajustar el retardo de reproducción.
Senacitel 2004 Multimedia en Internet 28
Servicio ofrecido por Internet
Best-effort: Mejor esfuerzo, básicamente no garantiza nada.Principales problemas: retardo variable y pérdidas de paquetes.
Transmisión depaquetes
Recepción depaquetes
Ejemplo: One-way delay para una ruta en Internet
Senacitel 2004 Multimedia en Internet 29
¿Cómo hacemos frente al retardo y pérdidas?
Transmisión depaquetes
Recepción depaquetes
RetardoNuevo Retardo
Buffer
Retardo: Se iguala usando un buffer como “colchón”.
Buffer
Senacitel 2004 Multimedia en Internet 30
¿Cómo hacemos frente a las pérdidas?
Básicamente: aminorar la carencia o agregar redundancia inteligentemente.Retransmisiones (TCP) sólo son posibles en casos no interactivos. En éstos usamos UDP.Opciones sin agregar información extra:
Introducir ruido en lugar del paquete perdidoRepetir el paquete previoEntrelazar los datos, así la pérdida no es consecutiva.
Opciones agregando redundancia (Forward Error Correction):Usar códigos correctores por ejemplo cada n paquetes enviar uno de paridad de los n primeros.En cada paquete enviar una versión de menor calidad del anterior.
Senacitel 2004 Multimedia en Internet 31
Estructura de la trama: Real Time Protocol
RTP es un protocolo que estandariza el formato de los paquetes de contenido multimedia en Internet (audio, video y otros).Ofrece servicios
Identificación del tipo de contenido del paqueteNúmeros de secuenciaMarcas de tiempo
No ofrece:Garantía de llegada a tiempoCalidad de servicioEntrega de paquetes en orden
Senacitel 2004 Multimedia en Internet 32
Resumen de audio en InternetOnda depresión
Presión
tiempo
MuestreoConversión
Análogo/Digital
Númeroenteros
tiempo
CodificaciónConfección de
paquete Transmisión
....101010001001011 ...
RTP audio
Ethernet IP UDP
RTP audio
DecodificaciónRecepción
tiempo
Voltaje Presión
tiempo
ConversiónDigital/Análoga
....101010001001011 ...
Buffer
Ethernet IP UDP
RTP audio
Senacitel 2004 Multimedia en Internet 33
Contenido
ConceptosAparición de audio y vídeo en InternetBreve sobre protocolos en InternetTransmisión de voz en InternetTransmisión de video en InternetAspectos no cubiertosAplicaciones:MBone VRVS, , Realnetworks,WindowsMedia, QuickTime streaming Server, FFMPEG
Senacitel 2004 Multimedia en Internet 35
Análisis de la transmisión de video en Internet
Vemos en forma continua la luz reflejada por los objetos.El vídeo son secuencias discretas de imágenes.
Luz
CapturaConversión de
formato yDigitalización
Armadode
paquetesTransmisiónCompresión
RTP
Y: brillo Cb,Cr:color
Senacitel 2004 Multimedia en Internet 36
Captura de vídeo
Si proviene de una cámara grabadora (No webcam), ésta genera 30 cuadros por segundo en formato NTSC.La tarjeta muestrea y obtiene las componentes de luminancia y crominancia para cada pixel.Las resoluciones son típicamente múltiplos o sub-múltiplos de 320x240 para NTSC.
Senacitel 2004 Multimedia en Internet 37
Conversión de formato
El ojo humano distingue mejor la intensidad de la luz o brillo que el color, por ello cada cuadro es almacenado con 1/4 de la resolución para cada componente de color.
Crominancia del azul y rojoIntensidad
Senacitel 2004 Multimedia en Internet 38
Compresión
Se trata de eliminar la redundancia y aquello imperceptible para el ojo.Redundancia
Espacial: como con imágenes hay zonas regularesTemporal: cuadros seguidos son parecidos Psicovisual: no vemos los detalles
Pasos en la compresión:
Preparacióndel cuadro
Procesamientodel cuadro
Cuantización Compactaciónsin pérdida
Valores másrelevantes se"discretizan"
Espacio decolores a usar,submuestreo
Nuevoespacio
Senacitel 2004 Multimedia en Internet 39
Ideas usadas en la compresión
No necesitamos 30 fps, 10 pude bastar.En muchos casos resoluciones de 320*240 basta.Cada cuadro o frame se subdivide en cuadrados de 8x8 pixeles.Como notamos más los valores promedios que los detalles, éstos son codificados con mayor precisión, los detalles con menor precisión o son eliminados.Se toman diferencias del cuadrado con respecto al cuadro anterior.Como la imagen se pudo correr, se busca el cuadro en un entorno (predicción del movimiento).
Senacitel 2004 Multimedia en Internet 40
Consideraciones de la red
Cada cuadro no cabe en un paquete, entonces se agrupan varios rectángulos autónomos. Como hay pérdida de paquetes debemos enviar cada cierto rato cuadros comprimidos como imágenes (Intra)
Senacitel 2004 Multimedia en Internet 41
El Receptor
Básicamente hace la operación inversa.El despliegue se hace en el monitor (RGB) por ello se ocupa mucha CPU en la descompresión y el cambio de formato de cada pixel.Hay alto movimiento de datos en los buses internos del computador que pueden frenar el sistema.El audio generalmente debe esperar al video para reproducción sincrónica.
Senacitel 2004 Multimedia en Internet 42
Aspectos no cubiertos sobre audio y vídeo
Sincronización intra-stream: proceso de reproducir el contenido respetando su dependencia temporal.Sincronización inter-stream: proceso de reproducir un contenido respetando la dependencia temporal con otro.Mezcla de múltiples contenidos de audio. Conferencias entre más de dos.Herramientas para programar aplicaciones multimedia. (Segunda Parte)
Senacitel 2004 Multimedia en Internet 43
AplicacionesPara video conferencia:
MBone,VRVS,NetMeeting,Messenger,.....
Para video streaming: RealNetworks,Windows Media, QuickTime streaming Server,FFMPEG.....
Senacitel 2004 Multimedia en Internet 44
Aplicaciones MBone
rat: robust audio toolVic: video conferencie tool
Soporte IPv6 !
Senacitel 2004 Multimedia en Internet 46
VRVS
Virtual Rooms VideoConferencing SystemEs un sistema distribuido que establece su propia red entre nodos (reflectores) distribuidos a lo largo del planeta.Es una red sobre la actual Internet (e Internet2).Su principal ventaja es la facilidad de uso. Los usuarios ven salas virtuales en las cuales se pueden reunir con audio, video, y datos a través de VNC(Virtual Network Computing)
Senacitel 2004 Multimedia en Internet 47
Real Networks
Existen versiones para varios sistemas operativos (Solaris, Linux, Windows, etc.)Usado por canales de televisión difusión de videos etc..Radio UTFSMClases en línea desde Berkeley: HerenciaCanal 13 TVN
Senacitel 2004 Multimedia en Internet 48
Windows Media Player
Sólo para usuarios Windows.Varias radios y canales de televisión ya lo usan:Radio CoorperativaCanal 13TVN
Senacitel 2004 Multimedia en Internet 49
Proyecto Red de Distribución de Contenidos para MiClaseIdea: Usar videos en las clases de una escuela
10 Mbps
256 kbps128 kbps
LAN100 Mbps
Senacitel 2004 Multimedia en Internet 50
Proyecto difusión de video en Valpo.
Reuna
Videos
Servidor RealU N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
Cliente RealU N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
U N I V E R S I T YU N I V E R S I T Y
UTFSM
UFRO
Inte
rnet
Valparaíso
Temuco
Santiago
UTFSM-REUNA-UFRO: usó RealNetworks