Exemplo n.º 1
0
def sendFrames(host, port, cap, protocol):
    global exitThread
    # setup udp socket to send video from webcam, to controller
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    # setup video streaming class
    transfer = DataTransfer.DataTransfer(sock, host, port, protocol)
    # send video to the controller
    while exitThread != True:
        ret, frame = cap.read()
        if ret == True:
            try:
                # send the frame to the controller
                transfer.sendFrames(frame)
            except KeyboardInterrupt:
                print('keyboard interrupt')
            except BrokenPipeError:
                print('broken pipe')
            except ConnectionAbortedError:
                print('connection aborted')

    # stop all threads and clean everything up
    exitThread = True
    sock.close()
    cap.release()
    cv2.destroyAllWindows()
Exemplo n.º 2
0
def getFrames(host, port, protocol):
    global exitThread
    # setup udp socket to receive video from rover
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.settimeout(0.001)
    sock.bind((host, port))
    # create transfer class to receive video
    transfer = DataTransfer.DataTransfer(sock, None, None, 'udp')
    while exitThread != True:
        # receive video frame from rover
        frame = transfer.receiveFrames()
        try:
            # show the rover video stream
            cv2.imshow('client [receiver]', frame)
            cv2.waitKey(1)
        except cv2.error:
            pass
        except KeyboardInterrupt:
            # force close
            exitThread = True