英文:
Socket.IO emit function inside Loop Java
问题
尝试在 while 循环内发送
Socket socket = IO.socket("http://18.223.196.164:9000");
socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
@Override
public void call(Object... objects) {
int i = 0;
while (camera.read(mat)) {
byte[] data = new byte[(int) (mat.total() * mat.channels())];
mat.get(0, 0, data);
obj.addProperty("data", Base64.getEncoder().encodeToString(data));
socket.emit("liveFeed", obj);
logger.info("Inside loop" + (++i) + " ");
}
}
});
socket.connect();
通过 while 循环连续发送帧,但显然服务器只收到一个(第一个)帧。
英文:
Trying to emit inside while loop
Socket socket = IO.socket("http://18.223.196.164:9000");
socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
@Override
public void call(Object... objects) {
int i=0;
while (camera.read(mat)) {
byte[] data = new byte[(int) (mat.total() * mat.channels())];
mat.get(0, 0, data);
obj.addProperty("data", Base64.getEncoder().encodeToString(data));
socket.emit("liveFeed",obj);
logger.info("Inside loop"+(++i)+" ");
}
}
});
socket.connect();
Sending frames continuously through while loop But apparently server receives only one(First) frame.
专注分享java语言的经验与见解,让所有开发者获益!
评论