Python Kodlarda Hata

alpersamur3

Hectopat
Katılım
10 Mayıs 2020
Mesajlar
156
Python:
import cv2
import numpy as np
import socket
import sys
import pickle
import struct ### new code
cap=cv2.VideoCapture(0)
clientsocket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
clientsocket.connect(('localhost',8089))
while True:
    ret,frame=cap.read()
    data = pickle.dumps(frame) ### new code
    clientsocket.sendall(struct.pack("H",len(data))+data) ### new code
Bunu bir de server kodları var gerekirse atabilirim. Bu program görüntü paylaşımı yapmayı amaçlıyor ama şöyle bir hata aldım ;
Python:
Traceback (most recent call last):
  File "C:\Users\HP\Desktop\client.py", line 13, in <module>
    clientsocket.sendall(struct.pack("H",len(data))+data) ### new code
struct.error: ushort format requires 0 <= number <= 0xffff
Bunu nasıl çözebilirim ?
Python:
import socket
import sys
import cv2
import pickle
import numpy as np
import struct ## new

HOST=''
PORT=8089

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
print ('Socket created')

s.bind((HOST,PORT))
print ('Socket bind complete')
s.listen(10)
print ('Socket now listening')

conn,addr=s.accept()

### new
data = ""
payload_size = struct.calcsize("H")
while True:
    while len(data) < payload_size:
        data += conn.recv(4096)
    packed_msg_size = data[:payload_size]
    data = data[payload_size:]
    msg_size = struct.unpack("H", packed_msg_size)[0]
    while len(data) < msg_size:
        data += conn.recv(4096)
    frame_data = data[:msg_size]
    data = data[msg_size:]
    ###

    frame=pickle.loads(frame_data)
    print (frame)
    cv2.imshow('frame',frame)
server kodları
 
Son düzenleme:
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı