36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
|
|
# from maix import time, rtsp, camera, image
|
|||
|
|
|
|||
|
|
# # 1. 初始化摄像头(注意:RTSP需要NV21格式)
|
|||
|
|
# # 分辨率可以根据需要调整,如 640x480 或 1280x720
|
|||
|
|
# cam = camera.Camera(640, 480, image.Format.FMT_YVU420SP)
|
|||
|
|
|
|||
|
|
# # 2. 创建并启动RTSP服务器
|
|||
|
|
# server = rtsp.Rtsp()
|
|||
|
|
# server.bind_camera(cam)
|
|||
|
|
# server.start()
|
|||
|
|
|
|||
|
|
# # 3. 打印出访问地址,例如: rtsp://192.168.xxx.xxx:8554/live
|
|||
|
|
# print("RTSP 流地址:", server.get_url())
|
|||
|
|
|
|||
|
|
# # 4. 保持服务运行
|
|||
|
|
# while True:
|
|||
|
|
# time.sleep(1)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
from maix import camera, time, app, http, image
|
|||
|
|
|
|||
|
|
# 初始化相机,注意格式要用 FMT_RGB888(JPEG 编码需要 RGB 输入)
|
|||
|
|
cam = camera.Camera(640, 480, image.Format.FMT_RGB888)
|
|||
|
|
|
|||
|
|
# 创建 JPEG 流服务器
|
|||
|
|
stream = http.JpegStreamer()
|
|||
|
|
stream.start()
|
|||
|
|
|
|||
|
|
print("RTSP 替代方案 - HTTP JPEG 流地址: http://{}:{}".format(stream.host(), stream.port()))
|
|||
|
|
print("请在浏览器或 OpenCV 中访问: http://<MaixCAM_IP>:8000/stream")
|
|||
|
|
|
|||
|
|
while not app.need_exit():
|
|||
|
|
img = cam.read()
|
|||
|
|
jpg = img.to_jpeg() # 将 RGB 图像编码为 JPEG
|
|||
|
|
stream.write(jpg) # 推送到 HTTP 客户端
|