Reproductor de Videos en Java

7

Click here to load reader

Transcript of Reproductor de Videos en Java

Page 1: Reproductor de Videos en Java

Reproductor de videos en java: La Interfaz - 1ra Parte

PRIMERA PARTE

CREANDO EL PROYECTO Y LA INTERFAZ INICIAL

Cureoseando el API de Java Media Framework que me sirvio para realizar el post

"Reproducir video en java", me decidi a realizar una secuencia de videotutoriales donde ire

explicando paso a paso como crear un reproductor multimedia con las opciones básicas de

reproducción (PLAY, STOP, MUTE, volumen, etc) y al mismo tiempo profundizando un

poco mas en el lenguaje java, asi como en el API JMF.

Pero mejor vamos a lo que importa.

PRIMERA PARTE

CREANDO EL PROYECTO Y LA INTERFAZ INICIAL

El proyecto inicial

Nombre de Proyecto: reproductorjava

La interfaz inicial Esta interfaz es un BETA, solamente trata de mostrar groso modo hacia donde se quiere

llegar con el proyecto y asi tener una idea basica para poder comenzar a programar. La

misma puede llegar a cambiar a medida de que se vaya avanzando con el proyecto

Page 2: Reproductor de Videos en Java

Que necesitamos

El API Java Media Framework, descargatelo de su pagina e instalalo

EL IDE elegido para el proyecto es Netbeans 6.0

Tambien puedes pasar por este post para familiarisarte con el codigo de JMF, tambien

puedes encontrar buenos tutoriales en la pagina de SUN, pero lastimosamente estan en

ingles.

Page 3: Reproductor de Videos en Java

Reproductor de videos en java: La API JMF - 2da parte

SEGUNDA PARTE

INTRODUCCION AL API DE JAVA MEDIA FRAMEWORK

En esta segunda parte se hace una pequeña introduccion al API de Java Media

Framework, es aqui donde se creara una nueva clase "paneldevideo.java" la que sera

encargada de manejar el API asi como de interactuar con la interfaz.

Por el momento esta clase solo consistira en crear un objeto MediaPlayer especificando la

URL de un archivo de video, y su reproduccion sera automatica, los controles de

reproduccion se dejaran para mas tarde.

La clase "paneldevideo.java" que se utiliza en este tutorial es:

import java.awt.Component;

import java.awt.Dimension;

import java.io.IOException;

import java.net.URL;

import java.util.logging.Level;

import java.util.logging.Logger;

import javax.media.CannotRealizeException;

import javax.media.Manager;

import javax.media.NoPlayerException;

import javax.media.Player;

/**

* @web http://jc-mouse.blogspot.com/

* @author Mouse

*/

//la clase se extiende de un Jpanel para heredar sus atributos

public class paneldevideo extends javax.swing.JPanel{

//declarmos la variable como privada

private Player mediaPlayer;

//como datos de entrada tenemos

//URL la url del archivo a reproducir

//Las dimensiones del contenedor que tendra el reproductor

public paneldevideo(URL url, Dimension d){

try {

// se forzara el uso de componentes de render ligero

Page 4: Reproductor de Videos en Java

Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, true);

mediaPlayer = Manager.createRealizedPlayer(url);

//ahora se declara un Component adecuado para el uso en una

GUI

Component video = mediaPlayer.getVisualComponent();

// añadimos al componente las dimensiones del

contenedor

video.setSize(d);

video.setVisible(true);

// finalmente se añade al jPanel

add(video);

// el video se reproducira automaticamnte se cree el objeto

mediaPlayer.start();

//control de excepciones

} catch (IOException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

} catch (NoPlayerException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

} catch (CannotRealizeException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

}

}

}

Page 5: Reproductor de Videos en Java

Reproductor de videos en java: Los controles - 3ra parte

TERCERA PARTE

CONTROLES DE REPRODUCCION DE LA API DE JAVA MEDIA FRAMEWORK

En esta tercera parte del video tutorial "Reproductor de videos en java" se introducen los

controles de reproduccion PLAY, STOP, MUTE, asi como el control de volumen, todo esto

haciendo uso de las herramientas graficas de netbeans.

La clase paneldevideo.java modificada:

import java.awt.Component;

import java.awt.Dimension;

import java.io.IOException;

import java.net.URL;

import java.util.logging.Level;

import java.util.logging.Logger;

import javax.media.CannotRealizeException;

import javax.media.Manager;

import javax.media.NoPlayerException;

import javax.media.Player;

/**

* @web http://jc-mouse.blogspot.com/

* @author Mouse

Page 6: Reproductor de Videos en Java

*/

//la clase se extiende de un Jpanel para heredar sus atributos

public class paneldevideo extends javax.swing.JPanel{

private Player mediaPlayer;

private Component video;

//como datos de entrada tenemos

//URL la url del archivo a reproducir

//Las dimensiones del contenedor que tendra el reproductor

public paneldevideo(URL url, Dimension d){

try {

// se forzara el uso de componentes de render ligero

Manager.setHint(Manager.LIGHTWEIGHT_RENDERER, true);

mediaPlayer = Manager.createRealizedPlayer(url);

//ahora se declara un Component adecuado para el uso en una

GUI

video = mediaPlayer.getVisualComponent();

// añadimos al componente las dimensiones del

contenedor

video.setSize(d);

add(video);

//control de excepciones

} catch (IOException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

} catch (NoPlayerException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

} catch (CannotRealizeException ex) {

Logger.getLogger(paneldevideo.class.getName()).log(Level.SEVE

RE, null, ex);

}

}

//volumen

public float getvolumen(){

return mediaPlayer.getGainControl().getLevel();

}

//coloca un valor float correspondiente al volumen

public void setvolumen(float volumen){

mediaPlayer.getGainControl().setLevel(volumen);

}

//control de MUTE

public void MUTE(){

if(mediaPlayer.getGainControl().getMute())

{

mediaPlayer.getGainControl().setMute(false);

}

else

{

mediaPlayer.getGainControl().setMute(true);

}

}

//controlde PLAY y STOP

Page 7: Reproductor de Videos en Java

public void STOP(){

mediaPlayer.stop();

video.hide();

}

public void PLAY(){

mediaPlayer.start();

video.show();

}

}

1. La Interfaz 2. Introduccion a la API JMF