Java 在套接字中发送网络摄像头的BuffereImage
我正在尝试将网络摄像头捕获的视频从服务器发送到客户端 我用netbeans中的Jmyron来获取相机 首先,我使用了Java 在套接字中发送网络摄像头的BuffereImage,java,sockets,video,webcam,jmyron,Java,Sockets,Video,Webcam,Jmyron,我正在尝试将网络摄像头捕获的视频从服务器发送到客户端 我用netbeans中的Jmyron来获取相机 首先,我使用了BufferedImage.toString(),并试图通过套接字发送我要获取的字符串。我还尝试将buffereImage转换为字节数组并发送它,以便在另一端执行相反的过程。 似乎插座正在发送一条线路,然后停止。 那么,你能告诉我是否有其他方法可以做到这一点吗。或者我做错了什么 Jmyron是否也提供RTP?因为我想实时发送视频 我正在从服务器发送此消息: BuffereImage
BufferedImage.toString()
,并试图通过套接字发送我要获取的字符串。我还尝试将buffereImage
转换为字节数组并发送它,以便在另一端执行相反的过程。
似乎插座正在发送一条线路,然后停止。
那么,你能告诉我是否有其他方法可以做到这一点吗。或者我做错了什么
Jmyron是否也提供RTP?因为我想实时发送视频
我正在从服务器发送此消息:
BuffereImage captureImage
boolean Test= true;
while (Test) {
ServerSocket ser = new ServerSocket(25000);
Socket sock = ser.accept();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write( captureImage, "jpg", baos );
baos.flush();
byte[] imageInByte = baos.toByteArray();
baos.close();
DataOutputStream dOut = new DataOutputStream(sock.getOutputStream());
dOut.write(imageInByte);
}
从客户处收到:
布尔检验=真
public Clientcam() throws IOException {
initComponents();
while (Test) {
Socket ser = new Socket("localhost",25000);
byte[] b = null ;
DataInputStream dIn = new DataInputStream(ser.getInputStream());
dIn.readFully(b);
InputStream in = new ByteArrayInputStream(b);
newImage = ImageIO.read(in);
newlbl.setIcon(new ImageIcon(newImage));
}
}
toString
机制将不起作用。您是如何将buffereImage
转换为字节[]
?您是否尝试使用ImageIO写入缓冲图像,例如通过套接字输出流写入jpeg?“实时”可以是任何内容,具体取决于您对实时的定义。。。无论如何,为了让我们帮助您,有必要显示一些代码。从你写的来看,我想是的,你实际上做错了什么。但是如果没有代码,就不可能准确地说出是什么。嗨@BrettOkken,谢谢回复。我已经编辑了我的文字,并把我的一些代码,你可以看看它请!您好@Fildor thnx,谢谢您的回复。我已经编辑了我的文字,并把我的一些代码,你可以看看它请!这不是在向客户扔NPE吗?