Desarrollo De Sofwar
Reproducir video en java y netbeans con Java Media Framework
Reproducir un video en java no es imposible menos tan complicado como parece, ademas java nos proporciona herramientas para desarrollar nuestras aplicaciones. Basta de charla y vamos a lo que interesa.
¿que necesitamos?
* Necesitamos el API multimedia de java llamado JavaMedia Framework, descargate la ultima version de su pagina, instalalo y reinicia la pc.
* Netbeans claro, sera nuestra herramienta para desarrollar la aplicacion de prueba.
* Un archivo de video con extension MPG, segun lei, la api de java JMF es capaz de reproducir varios tipos de formatos, en mi caso solo reprodujo MPG y MP3, las causas no lo se aun.
El reproductor
El reproductor consta deuna clase videopanel,java encargada de crear el objeto reproductor y de una clase reproductor,java, nuestra interfaz.
Codigo fuente
Clase videopanel.java
package videojava;
import java.awt.Component;
import java.awt.Dimension;
import java.io.IOException;
import java.net.URL;
import javax.media.CannotRealizeException;
import javax.media.Manager;
importjavax.media.NoPlayerException;
import javax.media.Player;
/**
* @web http://jc-mouse.blogspot.com/
* @author mouse
*/
public class videopanel extends javax.swing.JPanel {
private Player mediaPlayer;
private Component controls;
public videopanel(URL mediaURL, Dimension d){
Manager.setHint( Manager.LIGHTWEIGHT_RENDERER, true );
try
{
// crea un reproductorespecificando la direccion del archivo
mediaPlayer = Manager.createRealizedPlayer( mediaURL );
// optiene los componentes del video
Component video2 = mediaPlayer.getVisualComponent();
video2.setSize(d.width, d.height);
video2.setVisible(true);
//optiene los componentes de control del reproductor
controls =mediaPlayer.getControlPanelComponent();
controls.setSize(d.width, 24);
if ( video2 != null )
add( video2 ); //agrega el componente del reproductor al panel
mediaPlayer.start(); // comienza la reproduccion
} // fin try
catch ( NoPlayerException noPlayerException )
{
System.err.println( "No seencontro medio disponible, osea no se reproduce archivo" );
} // fin catch
catch ( CannotRealizeException cannotRealizeException )
{
System.err.println( "no se pudo realizar el reproductor" );
} // fin catch
catch ( IOException iOException )
{
System.err.println( "Error de lectura del archivo" );
} // fin catch
}
public Component controles (){
return controls;
}
public Component controles(Dimension d){
controls.setSize(d);
return controls;
}
}
Esta clase hace uso del API JMF y la extiende hasta un objeto, en este caso un jPanel, pasando como referencias la URL del video en cuestion, tratando de capturar los errores que se pudieran encontrar en elproceso, el codigo esta por demas comentado y creo que se entiende.
La interfaz
La interfaz del reproductor es sencilla, consta de un jpanel pantalla, lugar donde insertaremos el video, un jpanel control donde se localizara los controles del reproductor, jButton abrir y jTextfiel txturl
Las partes mas importantes del codigo son:
Este codigo debe añadirse en el objeto jButton "abrir" conel evento ActionPerformed, lo que hace es llamar a una ventana de dialogo para buscar el archivo y luego inicializar los objetos reproductor y controles
URL mediaURL = null;
videopanel mediaPanel;
private void abrirActionPerformed(java.awt.event.ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
int result =...
Regístrate para leer el documento completo.