2017-10-07 1 views
0

Ich muss meine Webcam-Feed zu Clients über UDP streamen. Ich habe diesen Code, der für tcp funktioniert, aber für udp muss ich sendto verwenden und ich brauche die Rahmen, um ein udp Datagramm (65507 Bytes) zu passen. Wie komprimiere ich die Bilder?Senden von Frames von der Webcam über UDP-Protokoll in Python

ret, frame = self.device.read() 
data = frame.tostring() 
self.conn.sendall(base64.b64encode(data) + '\r\n') 

Antwort

0

Das Senden von Datagram-Nachrichten maximaler Größe ist selten praktikabel, da solche Nachrichten während der Übertragung wahrscheinlich gelöscht werden. Ich würde eher empfehlen, einen Rahmen in mehrere Nachrichten geringerer Länge aufzuteilen. Pakete der folgenden Struktur tut es ziemlich viel und bietet auch Schutz gegen Paketbestellung:

[frame 1][message 1 of 10][message 1 contents] 
[frame 1][message 2 of 10][message 2 contents] 
[frame 2][message 1 of 24][message 1 contents] 
[frame 1][message 4 of 10][message 4 contents] 
[frame 1][message 3 of 10][message 3 contents] 
and so on... 
Verwandte Themen