sistemas operativos multimedia

34
Facultad de Ingeniería Universidad de Buenos Aires 75-08 Sistemas Operativos Lic. Ing. Osvaldo Clúa 2007 Multimedia y Sistemas Operativos Multimedia y Sistemas Operativos

Upload: antonio-hermenegildo

Post on 11-Aug-2015

421 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Sistemas operativos multimedia

Facultad de IngenieríaUniversidad de Buenos 

Aires

75-08 Sistemas OperativosLic. Ing. Osvaldo Clúa

2007

Multimedia y Sistemas Operativos

Multimedia y Sistemas Operativos

Page 2: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 2

Multimedia ● Se compone de:

– Audio y Video clips.– Webcasts en vivo.– Podcasts

● Se entrega en:– Computadores personales.– PDAs.– Teléfonos Celulares

Page 3: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 3

Medios Continuos

● El instante en que se reproducen es importante.– Son medios con requerimientos específicos de

velocidad.● Video: 24 a 30 Cuadros (frames) /seg

– La percepción tiene una cierta capacidad de integración.

● Son requerimientos de soft real time.

Page 4: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 4

Algunas cifras

Page 5: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 5

Streaming● Entregar medios continuos desde un servidor a un

cliente generalmente a través de una conexión de red– Progressive Download: el medio se recupera y se

guarda en la computadora cliente para su reproducción.

– Real-Time Streaming: no se almacena en la computadora cliente.

● En vivo (radio, tv)● On demand

Page 6: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 6

Video on Demand

Hay distintos tipos de servicio disponibles

Page 7: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 7

El Archivo Multimedia

Page 8: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 8

Codificación de audio

● Sampling o Muestreo: convierte de onda de presión a onda electromagnética y serie de números binarios

Page 9: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 9

● Ruido de cuantificación (Quantization).● Compresión sin pérdidas (au,wav,aiff).● Compresión perceptual (mp3, ogg-Vorbis, etc).● Generación de la onda (midi).

– Voice Messages– Mode Messages– System Messages

Codificación de audio

Page 10: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 10

Análisis espectral

●La codificación (mp3, vorbis,, ...) quita las frecuencias que el oído no percibe.●Se preserva la calidad de la percepción, no la cantidad de información.●Hay una frecuencia mínima de muestreo

Page 11: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 11

Principios de MIDI

Voice Messages:●Note On

● (Key, velocity)●Note Off●Pitch bend●Program ●Control

Page 12: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 12

Codificación de Video

● Video Codec:– Un dispositivo que permite la compresión de un

stream de audio y video.– Generalmente usa compresión con pérdidas.– Separa información de color de luminancia.– Standards abiertos y propietarios.– No confundir con containers.

Page 13: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 13

Algunos Codecs

H 261 ITU-T Video ConferenciaMPEG 1 (2) MPEG Video DiscMPEG 2 (2) – H262 MPEG DVD – Blu-RayMPEG 4 (2) MPEG MPEG 2 (4) + Object MotionMPEG 4 (10) – H 264 MPEG Play Station – iPod – Nero – HD-DVD Blu-RayH263 ITU-T Video Conferencia + Progressive scanDivX Implementación MPEG 4 (2)Theora Xiph.org Ogg (Container)WMV Microsoft Familia de codecsReal Video Real PropietarioQuick Time Mac Framework para manejar multimedia

Page 14: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 14

Transformada Coseno (DCT)Usando el Matlab

>> t = (0:1/255:1);>> x = sin(2*pi*10*t)+sin(2*pi*5*t);>> y=fft(x);>> yc=dct(x);>> subplot(3,1,1);plot (x); title('sin(2*pi*10*t)+sin(2*pi*5*t)');>> subplot(3,1,2);plot (abs(y)); title('Transformada de Fourier (modulo)');>> subplot(3,1,3);plot (abs(yc)); title('Transformada coseno (modulo)');>>

Estas frecuencias son “alias”

Page 15: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 15

¿Porqué DCT y no FFT?

●Separa la imagen como suma de cosenos.●Hace una mejor aproximación con menos coeficientes.●Menor sensibilidad a la” quantización”.

Nota: La definición de la fft de la página es distinta a la usada en Matlab

Page 16: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 16

Transformada de una Imagen

Usando el Matlab>> ce=imread('Cecilia-r.jpg'); %lee la imagen>> cebn=rgb2gray(ce); % convierte an escala de grises>> lin=cebn(190,:); % toma la linea 190 (aprox la mitad)>> subplot(3,1,1);imshow(cebn);title('Cecilia');>> subplot(3,1,2);stem(lin);title('linea 190');>> subplot(3,1,3);plot(log10(abs(dct(lin)))); title('DCT linea 190');

Transformada Coseno de una línea en la dirección horizontal.

Page 17: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 17

DCT en 2D de una imagen

La imagen está en color por una limitación del Matlab, la transformada se hizo sobre la imagen en escala de grises.

Medio: resultado de la transformaciónAbajo: representación habitual en falso color de la DCT 2D.

Usando el Matlab>> dctcebn=dct2(cebn); % transformada coseno en 2D;>> subplot(3,1,1);imshow(ce);title('Cecilia');>> subplot(3,1,2);mesh(log10(abs(dctcebn)));>> title('Transformada Coseno 2D'); colormap(jet);colorbar;>> subplot(3,1,3);imshow(log10(abs(dctcebn)));>> title('DCT 2D vista como imagen'); colormap(jet);colorbar;

Page 18: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 18

JPEGPaso 1) Preparación de bloques (suponiendo 640x480);

Se separan los canales de luminancia y crominancia (canales Y, I, Q).

Se sub-muestrea la crominancia a la mitad (320x250 en el ejemplo)

Se agrupan en bloques e 8x8

Page 19: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 19

Canales Y, I y Q

Según el standard de TV NTSC

Y = 0.299 R + 0.587 G + 0.114 B

I = 0.5957161349127745527 R − 0.2744528378392564636 G −

0.3212632970735180891 B

Q = 0.2114564021201178664 R − 0.5225910452916111684 G +

0.3111346431714933020 B

Page 20: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 20

JPEGPaso 2) DCT de cada bloque. Paso 3) Cuantización (ver ejemplo para un bloque de 8x8)

Se divide cada coeficiente de la DCT por el de una tabla. Se usa división entera. Los coeficientes crecen a medida que se alejan del origen.

La tabla determina el grado de pérdida usado (no forma parte del Standard). En este caso se pierden altas frecuencias espaciales.

Page 21: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 21

JPEG

Paso 4) Se toman las diferencias al bloque anterior.Paso 5) Se arma una secuencia linear (ver figura) y se la codifica RLE.Paso 6) Los coeficientes así obtenidos se codifican según un código Huffmann (long variable)

Page 22: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 22

MPEG-2● Define tres tipos de frame:

– I (Intracoded) un frame comprimido según JPEG

– P (Predictivos) se transmiten las diferencias entre este frame y el I anterior

– B (Bidireccionales) se transmiten las diferencias entre este, el I o P anterior y el I o P siguiente.

Page 23: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 23

MPEG-2

Predicción de movimiento para codificar los frames I y P.

GOP (Group of pictures) 12,3N=12 (cant de frames en el GOP) M=3 Distancia I-PPara reproducir B1 B2 I3 B4 B5 P6 B7 B8 P9 B10 B11 P12Debe transmitirse I3 B1 B2 P6 B4 B5 P9 B7 B8 P12 B10 B11

Page 24: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 24

MPEG-4● Part 2.

– Compresión de video esencialmente similar a MPEG-2 con soporte de frames B y predictores de movimiento.

● Part 10 (H264).– Inter-picture prediction (hasta 32 “reference pictures”)– Variable block-size motion compensation (VBSMC). Precisión de ¼

de pixel.– Predicción con pesos para efectos especiales (v. g. fade).– Transformación DCT modificada y pesos adaptados para menores

pérdidas.– Transformaciones alternativas a DCT.– Compresión por entropía (en vez de Huffmann).– Numerado de frames para creación de subsecuencias.– Blending.

Page 25: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 25

Influencia sobre el S. O.

● Se deben respetar la velocidad y las restricciones de tiempo del medio continuo. (QOS Quality of Service).– Procesamiento (Velocidad de CPU).– Planificación.– Formato de Archivos.– Características de la red.

Page 26: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 26

Tipos de QOS● Mejor Esfuerzo.

– Se hace lo posible.● Soft Real Time.

– Se admite perder algunos vencimientos (deadlines).

● Hard Real Time.– Garantiza cumplir con los vencimientos.

Page 27: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 27

¿Que queremos de la MM?● Multimedia Information System.

– Tratamiento de los datos continuos como textuales.● Controles de VCR.

● Edición de medios continuos.

Page 28: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 28

Planificación● Asignar intervalos fijos (Clock scheduling).

– No admiten mas tareas que las programadas.– Deben planificarse a priori

● Rate Monotonic (RM).– Prioridades fijas según su período.– Preemptive.

● Earliest Deadline First (EDF).– Prioridades variables– Preemptive– Óptimo (si puede ser planificado por algún otro algoritmo,

EDF también lo planifica.

Page 29: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 29

Control de Admisión● ¿Cuando admitir otra tarea de Tiempo Real?

– Características conocidas: ● Ci= tiempo de cálculo de la tarea i.● Ti= Período de la tarea i.

● Clock Schedule – Hacer las cuentas con los intervalos libres.

● RM ● EDF (admite plena ocupación de la CPU)

∑ Ci /Ti 0.67

∑ Ci /Ti 1

Page 30: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 30

Formato de Archivos

Bloques de disco chicos(a) o grandes(b) respecto al frame

Page 31: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 31

¿Qué hay en un DVD?

● AUDIO_TS: (AUDIO Title Set) forma parte de DVD-Audio. No se usa

● VIDEO_TS: (VIDEO Title Set) contiene los Video Title Sets (VTS) del DVD. Cada VTS tiene:– VOB (Video OBject) Un container con Video,

Audio, Menú y Subtítulos multiplexados.– IFO (InFOrmation) Punteros a escenas y

capítulos. Relaciones de aspecto y cámaras alternativas

– BUP (BackUP) de los anteriores.

Page 32: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 32

Fractales

● Son estructuras geométricas auto-similares en distintas escalas.– Se las propuso como una forma de comprimir

imágenes. Hubo mucha investigación, patentes y hard en los 90.

– Ejemplo online (difícil de usar, busca similitudes en la imagen).

– La página Web de uno de los grupoos que desarrolló la compresión por fractales.

– Se obtuvieron mejores resultados con Wavelets.

Page 33: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 33

Wavelets● Una transformación

como Fourier o DCT.– Es útil para lograr

distintas resoluciones.

– Adoptada en JPEG 2000, ECW (Aerofotografía) y

MrSID (GIS).

Page 34: Sistemas operativos multimedia

75-08 Sistemas OperativosProf. Lic. Ing. Osvaldo ClúaFIUBA 2007 34

La Red - IntServ● Integrated Services:

– Arquitectura que especifica que elementos usar para garantizar la calidad de Servicios en la red (QOS).

● Es de grano fino, al contrario de DiffServ.– Cada router debe implementar IntServ:

● Flow Specs – Describen el tráfico● RSVP (ReSerVation Protocol) el mecanismo.