Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. do {
  2. recvMsgSize = sock.recvFrom(buffer, BUF_LEN, sourceAddress, sourcePort);
  3. //std::cout << recvMsgSize << 'n';
  4. } while (recvMsgSize > sizeof(int));
  5. int total_pack = ((int * )buffer)[0];
  6.  
  7. cout << "exp pack len" << total_pack << endl;
  8.  
  9. char * longbuf = new char[PACK_SIZE * total_pack];
  10. for (int i = 0; i < total_pack; i++) {
  11. recvMsgSize = sock.recvFrom(buffer, BUF_LEN, sourceAddress, sourcePort);
  12. if (recvMsgSize != PACK_SIZE) {
  13. cerr << "Received unexpected size pack:" << recvMsgSize << endl;
  14. continue;
  15. }
  16. memcpy( & longbuf[i * PACK_SIZE], buffer, PACK_SIZE);
  17. }
  18.  
  19. cout << "Received packet from " << sourceAddress << ":" << sourcePort << endl;
  20.  
  21. Mat rawData = Mat(1, PACK_SIZE * total_pack, CV_8UC1, longbuf);
  22. Mat frame = imdecode(rawData, CV_LOAD_IMAGE_COLOR);
  23. if (frame.size().width == 0) {
  24. cerr << "decode failure!" << endl;
  25. continue;
  26. }
  27. imshow("recv", frame);
  28. free(longbuf);
  29.  
  30. while(cap.isOpened()):
  31. ret_val, img = cap.read()
  32. img = cv2.flip(img, 1)
  33. resized_image = cv2.resize(img, (256, 144))
  34. #compress image
  35. r, buf = cv2.imencode('.jpg', resized_image,[int(cv2.IMWRITE_JPEG_QUALITY), 80])
  36. #create byte array
  37. byte_array_buffer = bytearray(buf) + "e"
  38. #calc amount packets
  39. total_packages = 1 + (len(byte_array_buffer) - 1) / PACK_SIZE;
  40. #send packet count
  41. print bytearray(total_packages)
  42.  
  43. #packer = struct.Struct('I')
  44. #packed_data = packer.pack(*[total_packages])
  45. sent = sock.sendto( bytearray(total_packages))
  46.  
  47. data = pickle.dumps(buf) ### new code
  48. sock.send(struct.pack("L", len(data)) + data,(UDP_IP, UDP_PORT))
  49.  
  50. if cv2.waitKey(1) == 27:
  51. break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement