Reproductor de Videos en Java
Click here to load reader
-
Upload
herberthfigueroa -
Category
Documents
-
view
304 -
download
0
Transcript of 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
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.
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
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);
}
}
}
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
*/
//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
public void STOP(){
mediaPlayer.stop();
video.hide();
}
public void PLAY(){
mediaPlayer.start();
video.show();
}
}
1. La Interfaz 2. Introduccion a la API JMF