Estoy tratando grabar a un archivo la señal de video que me llega de Movistar, esta me llaga como multicast (RTP) pero no consigo capturar todos los paquetes supongo porque se ve pixelado como si no cogiera toda la informacion.
Este el codigo que estoy usando;
Código PHP:
public static void testRPT()
{
try
{
InetAddress group = InetAddress.getByName("239.0.0.77");
MulticastSocket sock = new MulticastSocket(8208);
sock.joinGroup(group);
byte[] buf = new byte[1024];
DatagramPacket pack = new DatagramPacket(buf,buf.length);
File targetFile = new File("C:\\0\\MiVideo.mpg");
OutputStream outStream = new FileOutputStream(targetFile);
while(true)
{
sock.receive(pack);
outStream.write(pack.getData(), pack.getOffset(), pack.getLength());
}
}
catch(UnknownHostException e){e.printStackTrace();}
catch(IOException e){e.printStackTrace();}
}
He pensado en multihilo con 2 datagramas a la vez pero no se como evitar que se dupliquen los datos o sincronizarlos para que no ocupe mas de lo debido el archivo en disco
Saludos