stream — Start a multi-camera capture + HTTP/TCP server¶
Starts a capture server for OV2311 (preconfigured) sensors, exposing HTTP endpoints and a TCP stream for clients.
Usage¶
s6 stream
# or
python -m s6.app.stream
Key endpoints and ports¶
HTTP FastAPI on port 8000:
GET /api/spec— JSON capture spec (width,height,num_cameras, etc.).GET /api/current_frame— latest composite frame as PNG (cameras tiled horizontally).
TCP streaming on port 8022 for low-latency
Framemessages (sees6.utils.streamer.VideoStreamClient).
How it works¶
OV2311CaptureServersubclassess6.utils.FastAPIVideoStreamServer.Cameras open by index (default
[0, 1, 2]); capture occurs in an asyncio loop.FastAPI serves spec and composite images; a parallel TCP server pushes JPEG-encoded frames.
Client snapshot helper¶
s6.utils.streamer.take_snapshot(server_url)fetches/api/specand/api/current_frame, returning the individual per-camera images split from the composite.