Skip to content

Vigilo StreamReal-time AI stream fusion in Python

Zero-copy video buffers, multi-worker inference, and deterministic temporal fusion backed by Rust.

Vigilo Stream Logo

Quick installation

bash
pip install vigilo-stream
bash
uv add vigilo-stream
bash
poetry add vigilo-stream

Example: Live camera with temporal fusion

python
import vigilo_stream
import numpy as np

# Initialize pipeline with automatic model download on first run
with vigilo_stream.Pipeline(models_dir="models", auto_download=True) as pipe:
    pipe.start("camera:0")  # Accepts camera index, video file, or frame folder

    while pipe.is_running():
        # Zero-copy frame access: raw Rust memory exposed to NumPy
        frame = pipe.poll_frame()
        if frame:
            img = np.asarray(frame)

        # Instantaneous model output
        snapshot = pipe.snapshot()
        if snapshot:
            print(f"Faces: {snapshot.face_count}, Pose: {snapshot.head_pose}")

        # Temporal violation events from fusion engine
        for event in pipe.events():
            print(f"Event: {event.event_type} -> {event.violation}")

Released under the AGPL-3.0 License.