Un amigo de guatemala me hizo una consulta acerca de la transmisión de video y bueno, Dos horas antes de escribir este post me propuse darle una mano. La idea era transmitir video pero sin usar R.T.P. sino transmitiendo uno a uno los frames provenientes de una fuente de video, que en este caso es una cámara web.
Servidor

Cliente

Anteriormente posteé la forma de cómo acceder a los frames de video usando el Java Media Framework, si no lo has leído aún te recomiendo lo hagas http://rolandopalermo.blogspot.com/2010/06/procesamiento-de-video-en-tiempo-real.html y en este post vamos a transmitir esos frames capturados. No explicaré el código porque en internet hay bastante información así como ejemplos de cómo usar sockets en java.
Aquí les dejo el proyecto desarrollado usando Netbeans.

Saludos y espero te sea de utilidad!... No olvides dejar tu comentario que motiva el seguir compartiendo el conocimiento y las experiencias.












No se como agradecerte, era lo unico que me faltaba, y no tenia la mas remota idea de como hacerlo. Cualquier otra cosa te estare molestando. Muchisimas gracias.
Rolando, estube probando pero no me funciona el transmisor de video, al ejecutarlo me salen 2 errores: Linea 58 y Linea 196. No se que sea.
Es cuestion de que configures tu java media framework. Ejecuta el JMStudio y busca configura tu cámara web o lee la documentación de JMF.
Probe un proyecto que solo captura una fotografia y si funciona la aplicacion, pero no funciona el Acceder2Frames.java. Ya vi el JMStudio pero no se que sea
Problema resuelto, tenia una IP fija, por estar probando el proyecto en red, lo restaure y funciona de maravilla. Que tendria que agregarle para eviar sonido. Agradezco tu ayuda.
Vas a tener que agregarle mucho empeño y ganas de investigar. ^^
Saludos.
Ok, me has ayudado mucho y lo agradezco, me sacaste de un gran apuro. Te cuidas.
Amigos estoy tratando de mostrar el video capturado de la camara wep integrada de mi portatil en un frame, y que al hacer clicl muestre en otro frame la imagen o ofto de ese instante, par lograrlo intente poner a funcionar este programa pero me salen dos errores
at com.blogspot.rolandopalermo.sockets.Acceder2Frames.(Acceder2Frames.java:58)
at com.blogspot.rolandopalermo.sockets.Acceder2Frames.main(Acceder2Frames.java:196)
por favor si me puedes ayodar te lo agradeceria inmensamente.
Ya instalaste el JMF, si ya lo hiciste, tienes que configurar la camara en el panel del JMF, saludos.
hola buenas tardes rolando lei tu publicacion y quiero q m ayudes me pidieron q transmitiera el video de una webbcam en tiempo real asi como tu lo haces pero de ahi insertarlo a una pagina web para q se vea me podras ayudar dame tu correo o algo para contactarte en verdad me urge para un proyecto espero y me contestes pronto
mi correo es roberto860205@hotmail.com
ava.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - package javax.media does not exist
at com.blogspot.rolandopalermo.sockets.Acceder2Frames.(Acceder2Frames.java:25)
Could not find the main class: com.blogspot.rolandopalermo.sockets.Acceder2Frames. Program will exit.
Exception in thread "main" Java Result: 1 me marca ese errror ayuda
Aprender a detectar el origen de una excepción es parte de aprender a programar en Java.
Saludos.
es que soy nuevo en esto por eso me atrevo a recurrir a tu ayuda y espero no te nolestes
LA APLICACIÓN ES UN MUY BUEN EJEMPLO... ME GUSTARÍA SABER COMO HACER PARA CAPTURAR EL SONIDO TAMBIÉN... GRACIAS
Wenas está muy weno el programa, pero tengo un problema me tira un NullPointerException en la clase acceder2Frames y creo que es xq el dispositivo que esta escrito o al menos lo que se le envia en ese momento no existe esta es la linea dispositivo = CaptureDeviceManager.getDevice(source);, entonces investigué un poco y encontré el método CaptureDeviceManager.getDeviceList(); pero no me devuelve nada sabes si ese es el error o ando buscando el error por mal camino si puedes me respondes a zevox11@gmail.com
muchas gracias me ayudo mucho!!!
Gracias por el aporte.
Solo quiero mencionar a todas aquellas personas que apenas comienzan a emplear multimedia en java, que despues de instalar el JMF, ejecuten el archivo "jmfinit.exe" localizado en la carpeta bin del JMF. Lo que permitira reconocer los dispositivos, posteriormente abran la aplicacion "jmstudio.exe" localizada en la misma carpeta y en la opcion de File-Preferences-Capture devices, debe aparecer su camara algo como "vfw:Microsoft WDM Image...". En su momento si descargan alguna aplicacion y la ejecutan, les sugiero utilizar los JAR´s que se encuentran en la carpeta de lib. Ya que en muchos foros algunos compañeros tienen ese problema, pero si funciona con los JAR´s que se descargan con el proyecto, pues que mejor.
Oye Rolando primeramente te agradesco por tu aportacion, me ha ayudado de mucho, pero tengo un problema, al ejecutarlo me funciona bien, pero despues de unos 10 o 15 minutos la memoria del BufferedImage se desborda y me manda el siguiente mensaje:"java.lang.OutOfMemoryError" en la siguiente linea de codigo: "BufferedImage bufferedImage = (BufferedImage)buffer_image.createImage(buffer);"
Ya intente vaciar la memoria del BufferedImage despues de usarla, pero me sigue dando el mismo error, ¿Tienes alguna idea para solucionar este error?.
hola muy agradecido por tu tuto
hola muchas gracias por tu tuto
quiciera saber com puedo hacer para mostar en el servidor varios clientes es decir si tengo 6 equipos mas un servidor como hago para que desde el servidor pueda ver los 6 equipos al mismo tiempo ????
Disculpa la pregunta, pero ¿Como ejecuto el cliente? al momento de compilarlo solamente aparece el servidor, soy muy nuevo en java y debido a que sigo sin poder usar el JMF para guardar video me pareció mejor idea transmitirlo como imagenes.
Bien Hermano ya con esto me solucionado el proyecto final te agradesco mucho solo unos cuantos arreglos pero gracias hermano,saludos
hhoolllaa
salu2 amigos muii bueno tu proyecto pero me salen erroes
import javax.media.Buffer;
import javax.media.CaptureDeviceInfo;
import javax.media.CaptureDeviceManager;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.Player;
import javax.media.Processor;
import javax.media.control.FrameGrabbingControl;
import javax.media.format.VideoFormat;
import javax.media.util.BufferToImage;
package javax.media doesnt exit como puedo solucionar este incoveniente..
http://www.oracle.com/technetwork/java/javase/download-142937.html