Java Media Framework

 

Tutorial

 

Índice
Introducción
Conceptos básicos
Ejemplo 1
Reproducción
Ejemplo 2
Procesamiento
Ejemplo 3
   

Conceptos básicos:

 

Aplicaciones multimedia

Una aplicación multimedia es aquella que produce, reproduce, procesa o maneja uno o varios contenidos multimedia. A su vez un contenido multimedia es aquel que está compuesto de diversos “medios”, como pueden ser audio, video, texto, etc. Decimos que un contenido multimedia está basado en el tiempo en tanto que cada uno de sus medios cambia significativamente con él. Esta característica hace que un contenido multimedia requiera ser proporcionado y procesado en unas condiciones temporales estrictas. Por ejemplo cuando se reproduce un video, si los datos multimedia no pueden ser proporcionados lo suficientemente rápido pueden producirse pausas y retardos en la reproducción; por otro lado si los datos no pueden ser recibidos y procesados lo suficientemente rápido el video se reproduce a saltos en tanto que se desechan cuadros como medio para mantener la tasa de reproducción.

Cada uno de los medios de los que se compone un contenido multimedia se denomina pista . Por ejemplo un contenido multimedia correspondiente a una videoconferencia puede contener una pista de audio y otra de video. Se dice que las pistas que componen un contenido multimedia están multiplexadas, al proceso de extracción de las distintas pistas que componen un contenido multimedia se le denomina demultiplexación. Existen distintos tipos de pistas en función del tipo de datos que contienen, como audio y/o video; a su vez cada pista posee un formato que define como están estructurados los datos que forman parte de ella. Los distintos formatos se distinguen en función de:

• La calidad que proporcionan

• Su exigencia de recursos de CPU para ser procesados

• La cantidad de ancho de banda requerida para su transmisión

Tabla 1 - Formatos multimedia soportados por JMF y sus características

Formato

Calidad

Uso CPU

Ancho de banda

Cinepak

Media

Bajo

Alto

MPEG 1

Alta

Alto

Alto

H.261

Baja

Medio

Medio

H.263

Media

Medio

Bajo

JPEG

Alta

Alto

Alto

Indeo

Media

Medio

Medio

PCM

Alta

Bajo

Alto

Mu-Law

Baja

Bajo

Alto

ADPCM (DVI, IMA)

Media

Medio

Medio

MPEG 1

Alta

Alto

Alto

MPEG 1 Layer 3

Alta

Alto

Medio

GSM

Baja

Bajo

Bajo

G.723.1

Media

Medio

Bajo

Cada formato está destinado a diferentes tipos de aplicaciones y servicios. Formatos como MPEG 1 de gran calidad pero altos requerimientos de ancho de banda están destinados usualmente a aplicaciones que trabajan con almacenamiento local o en dispositivos ópticos como CD-ROM o DVD donde el ancho de banda y la capacidad de almacenamiento no son limitantes. En cambio otros formatos como H.261 y H.263 se usan para aplicaciones de videoconferencia donde el ancho de banda es un bien muy escaso; de la misma forma G.723 se usa para producir voz codificada con tasa de bits reducida para aplicaciones de telefonía IP por ejemplo.

 

Fuentes de datos multimedia

En Java Media Framework los datos multimedia pueden proceder de diversas fuentes, como archivos locales o remotos y video y audio en tiempo real o bajo demanda.

Una fuente de datos multimedia se modela mediante un objeto DataSource. Podemos crear una DataSource directamente a través de una URL (Universal Resource Locator) o bien mediante un objeto de tipo MediaLocator.

 

     

Copyright Universidad de Málaga 2003