python opencv实现视频UDP传输

changhe713 2018-01-25 11:26:15
新人小白勿怪。

python实现服务器录制视频,UDP实时传输到客户端,实时显示。
报错
data, addr = s.recvfrom(4096),socket.error: [Errno 10040]
Buffer已经设置为65536,按说不应该会有buffer不足的情况。
感谢大佬们指点。

代码如下:

host.py

import cv2
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(('127.0.0.1', 9999))
cap = cv2.VideoCapture(1)
cap.set(3, 320)
cap.set(4, 240)
while True:
data, addr = s.recvfrom(4096)
if data != '0':
_, fra = cap.read()
_, enfra = cv2.imencode('.jpg', fra)
s.sendto(enfra, ('127.0.0.1', 9999))
s.close()

client.py

import cv2
import socket
port = 9999
host = '127.0.0.1'
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(b'1', (host, port))
cv2.namedWindow('img')
while True:
data, addr = s.recvfrom(400000)
if data:
imde = cv2.imdecode(data, 1)
cv2.imshow('img', imde)
k = cv2.waitKey(1)
if k == ord('q'):
s.sendto(b'0', (host, port))
break

s.close()
cap.release()
cv2.destroyAllWindows()
...全文
1508 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
TT是个小可爱 2018-10-09
  • 打赏
  • 举报
回复
大佬还在吗。我总是出现这种错误:
data, addr = s.recvfrom(400000)
ConnectionResetError: [WinError 10054] 远程主机强迫关闭了一个现有的连接。
>>>

4,357

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧