UDP视频测试
This commit is contained in:
+34
@@ -0,0 +1,34 @@
|
||||
import socket
|
||||
import cv2
|
||||
import numpy as np
|
||||
|
||||
PORT = 9999
|
||||
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
sock.bind(('0.0.0.0', PORT))
|
||||
|
||||
print("📡 [笔记本地面站] 已启动,正在等待香橙派连线...")
|
||||
|
||||
# 初始化地面站的强悍 CPU 录像(对应发送端压缩后的分辨率)
|
||||
fourcc = cv2.VideoWriter_fourcc(*'mp4v')
|
||||
video_writer = cv2.VideoWriter("./saved_video/ground_station_record.mp4", fourcc, 24.0, (640, 480))
|
||||
|
||||
try:
|
||||
while True:
|
||||
packet, _ = sock.recvfrom(65535)
|
||||
data = np.frombuffer(packet, dtype=np.uint8)
|
||||
frame = cv2.imdecode(data, cv2.IMREAD_COLOR)
|
||||
|
||||
if frame is not None:
|
||||
# 1. 地面站录像
|
||||
video_writer.write(frame)
|
||||
|
||||
# 2. 实时显示监控
|
||||
cv2.imshow("🚀 UAV AI Ground Station Monitor", frame)
|
||||
|
||||
if cv2.waitKey(1) & 0xFF == ord('q'):
|
||||
break
|
||||
finally:
|
||||
sock.close()
|
||||
video_writer.release()
|
||||
cv2.destroyAllWindows()
|
||||
print("地面站已安全关闭,视频成功保存在本地。")
|
||||
Reference in New Issue
Block a user