Foros del Web » Programación para mayores de 30 ;) » Java »

Video en java

Estas en el tema de Video en java en el foro de Java en Foros del Web. Saludos::: Sera posible introducir un vídeo en una aplicación java de escritorio? existe algún plugin para ello? Uso netbeans. Gracias!...
  #1 (permalink)  
Antiguo 01/03/2010, 18:25
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Pregunta Video en java

Saludos:::

Sera posible introducir un vídeo en una aplicación java de escritorio?
existe algún plugin para ello?
Uso netbeans.

Gracias!
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #2 (permalink)  
Antiguo 06/03/2010, 22:17
 
Fecha de Ingreso: marzo-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Video en java

Claro que se puede, yo estoy en los mismo.

Debes bajar el Java Media Framework (la última versión fue la 2.1.1) e instalarlo:

[url]http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.html[/url]

Los videos que logré reproducir estuvieron en formato mpg.

En la siguiente página dan un ejemplo sobre esto.

http://www.apuntes.delibertad.com/java/reproducir-video-en-java

Ok.
  #3 (permalink)  
Antiguo 07/03/2010, 07:43
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Gracias por responder, pero como funciona eso que dices?
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #4 (permalink)  
Antiguo 07/03/2010, 07:47
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Lo que necesito es, por ejemplo, que al dar click a un boton resproduzca un video en el mismo Jframe.
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #5 (permalink)  
Antiguo 07/03/2010, 12:28
 
Fecha de Ingreso: marzo-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Video en java

Asi es, con el código de la pagina puedes incrustar un video en un Jframe o JDialog. Lo que yo hice fue en un JDialog poner unos RadioButton, si le da clic entonces me invoca una nueva ventana ya sea JFrame o JDialog y entonces reproduce el video. Lo que tu harias seria que en la misma ventana en donde esta el reproductor poner un boton en el cual al hacer clic reproduzca el video (también se puede ya que también hice una prueba sobre esto).

Si es así solo es cuestión de modificar un poco el código y pasar variables con la dirección del archivo.

Ok?
  #6 (permalink)  
Antiguo 07/03/2010, 20:28
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Gracias de nuevo, y disculpa la molestia.
Se necesita de algun .jar extra para que corra bien la aplicacion?
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #7 (permalink)  
Antiguo 07/03/2010, 22:27
 
Fecha de Ingreso: marzo-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Video en java

Un jar no, sólo la instalación del JavaMediaFramework, es todo. En internet encontré un ejemplo mas claro realizado en netbeans, solo que perdí la dirección.
  #8 (permalink)  
Antiguo 08/03/2010, 06:38
(Desactivado)
 
Fecha de Ingreso: octubre-2009
Mensajes: 95
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Video en java

Hola!
Mira ahora mismo yo estoy trabajando en un proyecto similar, por lo que se, como dice rookie0 tienes que instalarte la Java Media Framework, una vez hecho esto, tienes que crear una clase, llamemosla reproductor, en ella, crearas un DataSource, con el que a traves de una URL le indicaras donde esta el archivo a reproducir, luego con un Player reproduciras el video.

Bueno, asi mas o menos pasando por alto todo, esto creo que seria algo de lo que necesitas, te dejo varios links que pueden servirte, yo tambien estoy metido de lleno y necesito informacion.. aprobecho este post? no,, mejor creare otro, jeje,

LINKS AYUDA_:

- http://www.it.uc3m.es/~labsimitis/se...1_IntroJMF.pdf

- http://www.apuntes.delibertad.com/ja...video-en-java/

- http://www.adictosaltrabajo.com/tuto...php?pagina=rmi

- http://www.danielstolfi.com/vigia/archivos/JMF.pdf

- http://es.kioskea.net/contents/internet/rtcp.php3

- http://www.lcc.uma.es/~pinilla/Tutor...cesamiento.htm

Aqui encontraras tema fresco!
  #9 (permalink)  
Antiguo 08/03/2010, 08:49
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Gracias por la ayuda.
He estado adaptando el codigo que aparece aqui
para que el video salga en el mismo Jframe despues de que ocurra x evento, pero solo sale el audio mas no el video.
Código JAVA:
Ver original
  1. MediaPanel mediaPanel = new MediaPanel(mediaURL);
  2.                 jPanel1.add(mediaPanel);
  3.                 jPanel1.setSize(250, 250);
  4.                 this.setVisible(true);
tengo un JFrame que tiene un panel llamado jPanel1, lo que quiero es que despues de pulsar un boton(que tambien esta en el mismo JFrame) se reproduzca el video en el jPanel1..
es posible?

Gracias de antemano.
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #10 (permalink)  
Antiguo 08/03/2010, 11:48
 
Fecha de Ingreso: marzo-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Video en java

Yo lo tengo así, y me reproduce el video en la misma pantalla. Creo un método con todos los componentes y despues los mando llamar por medio de un botón.

El único error que le he encontrado es que si intento reproducir un video y luego reproduzco el otro, el audio se ejecuta simultaneamente.

Código:
    public void m(){

                txturl.setText("" + mediaURL);
                //se obtiene el tamaño del panel de video
                Dimension dp = new Dimension(pantalla.getWidth(), pantalla.getHeight());
                //se crea el reproductor pasando como parametros
                // el archivo y dimensiones
                mediaPanel = new videopanel( mediaURL ,dp );
                pantalla.add(mediaPanel);
                pantalla.setVisible(true);
                //se obtiene dimensiones del contenedor de los controles
                // y se pasa como parametro para crear los controles de reproduccion
                Dimension d = new Dimension(control.getWidth(),control.getHeight());
                control.add(mediaPanel.controles(d));
                control.setVisible(true);
                
    }


    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         

        if ( jRadioButton1.isSelected()==true ){
            try {
                        //se asigna a mediaURL el archivo de video seleccionado
                java.net.URL u = new File("src/Videos/x.mpg").toURL();
                mediaURL = u;
                m();           
            }
            catch (IOException ex) {
                Logger.getLogger(reproductor.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        else{
            dispose();
        }
    }                                        
    
    
   URL mediaURL = null;
   videopanel mediaPanel;
  #11 (permalink)  
Antiguo 08/03/2010, 15:32
(Desactivado)
 
Fecha de Ingreso: octubre-2009
Mensajes: 95
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Video en java

Oirme! primero decirte que si que es posible...
segundo preguntar que entorno de desarrollo utilizas y tambien el sistema operativo, por ultimo saber si en algun momento, hos salto algun error relacionado con las librerias de jmf, pues a mi me salta un error al crear un MediaLocator o parecido, me pone:
Acces restricted: the type X is not accesible due to restriction ............

Hos suena de algo? puede ser pork uso el windows Vista..? o pork uso Eclipse?


Gracias de antemano
  #12 (permalink)  
Antiguo 08/03/2010, 16:18
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

no me salta ningun error, el IDE que estoy usando es Netbeans 6.7, S.O -> windows xp
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #13 (permalink)  
Antiguo 08/03/2010, 16:20
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Voy a postear el codigo ke estoy usando haber si pueden encontrar el error:

Clase Video.java
Código JAVA:
Ver original
  1. import java.net.MalformedURLException;
  2. import java.net.URL;
  3. import javax.swing.JFileChooser;
  4. import javax.swing.JPanel;
  5.  
  6. public class video extends javax.swing.JFrame {
  7.  
  8.     public video() {
  9.         initComponents();
  10.  
  11.     }
  12.  
  13.     @SuppressWarnings("unchecked")
  14.     // <editor-fold defaultstate="collapsed" desc="Generated Code">
  15.     private void initComponents() {
  16.  
  17.         jPanel1 = new javax.swing.JPanel();
  18.         jButton1 = new javax.swing.JButton();
  19.  
  20.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  21.  
  22.         jPanel1.setBackground(new java.awt.Color(51, 51, 255));
  23.  
  24.         javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
  25.         jPanel1.setLayout(jPanel1Layout);
  26.         jPanel1Layout.setHorizontalGroup(
  27.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  28.             .addGap(0, 330, Short.MAX_VALUE)
  29.         );
  30.         jPanel1Layout.setVerticalGroup(
  31.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  32.             .addGap(0, 223, Short.MAX_VALUE)
  33.         );
  34.  
  35.         jButton1.setText("Ver");
  36.         jButton1.addActionListener(new java.awt.event.ActionListener() {
  37.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  38.                 jButton1ActionPerformed(evt);
  39.             }
  40.         });
  41.  
  42.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  43.         getContentPane().setLayout(layout);
  44.         layout.setHorizontalGroup(
  45.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  46.             .addGroup(layout.createSequentialGroup()
  47.                 .addGap(32, 32, 32)
  48.                 .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  49.                 .addContainerGap(38, Short.MAX_VALUE))
  50.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  51.                 .addContainerGap(177, Short.MAX_VALUE)
  52.                 .addComponent(jButton1)
  53.                 .addGap(172, 172, 172))
  54.         );
  55.         layout.setVerticalGroup(
  56.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  57.             .addGroup(layout.createSequentialGroup()
  58.                 .addContainerGap()
  59.                 .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  60.                 .addGap(18, 18, 18)
  61.                 .addComponent(jButton1)
  62.                 .addContainerGap(25, Short.MAX_VALUE))
  63.         );
  64.  
  65.         pack();
  66.     }// </editor-fold>
  67.  
  68.     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
  69.         // TODO add your handling code here:
  70.         ponervideo();
  71.     }
  72.  
  73.     public void ponervideo() {
  74.         JFileChooser fileChooser = new JFileChooser();
  75.  
  76.         int result = fileChooser.showOpenDialog(null);
  77.  
  78.         if (result == JFileChooser.APPROVE_OPTION) // user chose a file
  79.         {
  80.             URL mediaURL = null;
  81.  
  82.             try {
  83.                 // get the file as URL
  84.                 mediaURL = fileChooser.getSelectedFile().toURL();
  85.             } // end try
  86.             catch (MalformedURLException malformedURLException) {
  87.                 System.err.println("Could not create URL for the file");
  88.             } // end catch
  89.  
  90.             if (mediaURL != null) {
  91.  
  92.                 JPanel panel = new JPanel();
  93.                 MediaPanel mediaPanel = new MediaPanel(mediaURL);
  94.                 jPanel1.add(mediaPanel);
  95.                 this.add(panel);                
  96.                 this.setVisible(true);
  97.             }
  98.         }
  99.     }
  100.  
  101.     public static void main(String args[]) {
  102.         java.awt.EventQueue.invokeLater(new Runnable() {
  103.  
  104.             public void run() {
  105.                 new video().setVisible(true);
  106.             }
  107.         });
  108.     }
  109.     // Variables declaration - do not modify
  110.     private javax.swing.JButton jButton1;
  111.     private javax.swing.JPanel jPanel1;
  112.     // End of variables declaration
  113. }
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #14 (permalink)  
Antiguo 08/03/2010, 16:21
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

Clase MediaPanel.java
Código JAVA:
Ver original
  1. import java.awt.BorderLayout;
  2. import java.awt.Button;
  3. import java.awt.Component;
  4. import java.io.IOException;
  5. import java.net.URL;
  6. import javax.media.CannotRealizeException;
  7. import javax.media.Manager;
  8. import javax.media.NoPlayerException;
  9. import javax.media.Player;
  10. import javax.swing.JPanel;
  11.  
  12. public class MediaPanel extends JPanel
  13. {
  14.    public MediaPanel( URL mediaURL )
  15.    {
  16.       setLayout( new BorderLayout() ); // use a BorderLayout
  17.      
  18.       // Use lightweight components for Swing compatibility
  19.       Manager.setHint( Manager.LIGHTWEIGHT_RENDERER, true );
  20.      
  21.       try
  22.       {
  23.          // create a player to play the media specified in the URL
  24.          Player mediaPlayer = Manager.createRealizedPlayer( mediaURL );
  25.          Button a = new Button("ok");
  26.          // get the components for the video and the playback controls
  27.          Component video = mediaPlayer.getVisualComponent();
  28.          Component controls = mediaPlayer.getControlPanelComponent();
  29.          
  30.          if ( video != null ){
  31.             add( video, BorderLayout.CENTER ); // add video component
  32.             add(a,BorderLayout.LINE_END);
  33.          }
  34.  
  35.          if ( controls != null )
  36.             add( controls, BorderLayout.SOUTH ); // add controls
  37.          
  38.          mediaPlayer.start(); // start playing the media clip
  39.       } // end try
  40.       catch ( NoPlayerException noPlayerException )
  41.       {
  42.          System.err.println( "No media player found" );
  43.       } // end catch
  44.       catch ( CannotRealizeException cannotRealizeException )
  45.       {
  46.          System.err.println( "Could not realize media player" );
  47.       } // end catch
  48.       catch ( IOException iOException )
  49.       {
  50.          System.err.println( "Error reading from the source" );
  51.       } // end catch
  52.    } // end MediaPanel constructor
  53. } // end class MediaPanel
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #15 (permalink)  
Antiguo 08/03/2010, 16:22
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

EL problema que tengo es que al dar clic en el boton solo reproduce el audio.
logran ver el error?
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse
  #16 (permalink)  
Antiguo 08/03/2010, 18:49
(Desactivado)
 
Fecha de Ingreso: octubre-2009
Mensajes: 95
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Video en java

La verdad esque no veo ningun fallo. Respecto a mi, lo que yo busco es informacion, a poder ser un codigo de ejemplo, sobre como recibir una sesion RTP, necesito, ke, al transmitir desde una pc con JMStudio, de la JavaMediaFramework, hacia una ip y puerto fijos... en esta ip necesito instalar. bueno primero necesito crear una aplicacion que este esperando esa sesion.... espero que me entendais.. porfavor ayuda!!!
  #17 (permalink)  
Antiguo 17/03/2010, 08:55
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 14 años, 8 meses
Puntos: 13
Respuesta: Video en java

ya logre reproducir en video en el mismo Frame, pero ahora cuando ocurre otro evento el video sigue corriendo, y quiero que se pause o se destruya..
como puedo hacer eso?
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse

Etiquetas: video
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:43.