miércoles, 5 de octubre de 2011

Avance del proyecto (Primera revision)


Informacion sobre JMF

Sobre JMF la informacion fue bastante escasa ya que manuales para el uso del framework no hay ademas de ser antiguo y tener pocas actualizaciones que lo hacen incompatible con algunos codecs en lo que es reproduccion de audio pero si hay foros en la que publican el uso que le dieron al framework orientado a la utilizacion de webcam y publican los codigos la pagina que fue abstante util fue jc-mouse(Captura de video con webcam) en la que utilizamos arios codigos para nuestro proyecto.


Codigos que se utilizaron para conectar la webcam


import java.util.logging.Level;
import java.util.logging.Logger;
import javax.media.*;
import javax.media.cdm.CaptureDeviceManager;
import java.io.*;
import java.awt.*;
import javax.swing.JOptionPane;
/**
* @web http://jc-mouse.blogspot.com/
* @author Mouse
*/
public class jmfVideo {
//Controlador universal de windows
private String dispositivo = "vfw:Microsoft WDM Image Capture (Win32):0";
private Player player = null;

public Component Componente(){
Component componente_video;
try {
// Se obtiene el dispositivo
CaptureDeviceInfo device = CaptureDeviceManager.getDevice(dispositivo);
//se obtiene la fuente de datos de captura
MediaLocator localizador = device.getLocator();
//El localizador es del tipo "vfw://0" video para windows
//se crea el PLAYER y se ejecuta
player = Manager.createRealizedPlayer(localizador);
player.start();
} catch (IOException ex) {
Logger.getLogger(jmfVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (NoPlayerException ex) {
Logger.getLogger(jmfVideo.class.getName()).log(Level.SEVERE, null, ex);
} catch (CannotRealizeException ex) {
Logger.getLogger(jmfVideo.class.getName()).log(Level.SEVERE, null, ex);
}
//Si se pudo crear el PLAYER, se obtiene el componente de video
if ((componente_video = player.getVisualComponent()) != null) {
//se da un tamaño al componente
componente_video.setSize(320, 240);
return componente_video;
} else {
JOptionPane.showMessageDialog(null,"No se pudo crear el video...");
return null;
}
}

}

public class video extends javax.swing.JFrame {
jmfVideo b = new jmfVideo();
/** Creates new form video */
public video() {
initComponents();
this.setTitle("WebCam - by Mouse");
//formulario al centro de la pantalla
this.setLocationRelativeTo(null);
//se da un tamaño al jFrame
this.setSize(320, 240);
//se coloca un layout tipo CAJA
getContentPane().setLayout(new javax.swing.BoxLayout(getContentPane(), javax.swing.BoxLayout.LINE_AXIS));
//se añade el componente de video
this.add( b.Componente());
}

Video de captura de video con jmf


No hay comentarios:

Publicar un comentario