Skip to content

Releases: Abdullah-Masood-05/vigilo-stream

vigilo-stream v1.0.1

Choose a tag to compare

@github-actions github-actions released this 19 Sep 12:07

vigilo-stream 1.0.1

vigilo-stream 1.0.1 delivers the complete 1.0 release series, introducing a high-performance cross-platform on-demand GPU acceleration architecture across Windows, Linux, and macOS, alongside the official documentation site.


🚀 Key Highlights & Capabilities

1. Cross-Platform On-Demand GPU Acceleration

  • Zero-Bloat Default Package: The default wheel distributed via PyPI is lightweight (~18 MB) and CPU-optimized, avoiding forced multi-gigabyte or multi-hundred megabyte GPU dependency downloads for CPU users.
  • On-Demand Lazy Download: When GPU execution is requested (Pipeline(device="gpu") or vigilo_stream.enable_gpu()), the platform-specific GPU runtime backend is automatically fetched from GitHub Releases on first use and cached in ~/.cache/vigilo_stream/backends/.
  • Native Platform Execution Providers:
    • Windows: Microsoft DirectML (DirectX 12) — hardware acceleration across AMD Radeon, NVIDIA GeForce, Intel Arc, and Qualcomm Adreno GPUs without requiring CUDA toolkits.
    • Linux: NVIDIA CUDA acceleration for discrete NVIDIA GPUs.
    • macOS: Apple CoreML / Metal taking full native advantage of Apple Silicon (M1/M2/M3/M4) Neural Engines and unified memory GPUs.

2. Python API & Device Control

  • Pipeline(device=...) Parameter:
    • "auto" (default): Automatically engages GPU acceleration if available and already cached; otherwise runs on CPU with zero network overhead.
    • "gpu": Explicitly requires GPU execution. Automatically downloads and activates the platform GPU backend on demand.
    • "cpu": Forces lightweight, deterministic CPU execution.
  • Runtime Inspection APIs:
    • vigilo_stream.detect_gpu_support() -> (bool, str): Inspects system hardware for DirectX 12, CUDA drivers, or Apple Silicon Metal.
    • vigilo_stream.device_info() -> (str, bool): Reports the active execution provider (e.g. ("DirectML", True) or ("CPU", False)).
    • vigilo_stream.enable_gpu(verbose=True) -> bool: Explicitly downloads and hot-swaps to the GPU runtime backend.
    • vigilo_stream.is_gpu_cached(version) -> bool: Checks whether the GPU backend is already cached locally.

3. Core Engine & Zero-Copy Sharing

  • Zero-Copy Frame Interop: Exposes camera frame buffers directly to NumPy and PyTorch via __array_interface__ and Python buffer protocol without memory copying across the FFI boundary.
  • Lock-Free Multimodal Pipeline: ArcSwap buffer slots decouple capture cadences from inference cadences (Face/Pose/Gaze at 15–30 Hz, Object Detection at 1 Hz).
  • Deterministic Stream Fusion: FusionEngine provides temporal hysteresis smoothing, hold timers, and session replay from JSONL recordings.

4. Official Documentation Website


📦 Installation

pip install --upgrade vigilo-stream

💻 Quickstart with GPU Acceleration

import vigilo_stream
from vigilo_stream import Pipeline

# 1. Check hardware support
supported, provider = vigilo_stream.detect_gpu_support()
print(f"GPU Hardware: {supported} ({provider})")

# 2. Run pipeline with GPU acceleration
with Pipeline(source_spec="camera:0", device="gpu") as pipeline:
    while pipeline.is_running():
        frame = pipeline.poll_frame()
        signals = pipeline.snapshot()
        events = pipeline.events()

📦 Release Assets

  • Wheels (PyPI):
    • vigilo_stream-1.0.1-cp39-abi3-win_amd64.whl (Windows x86_64)
    • vigilo_stream-1.0.1-cp39-abi3-manylinux_2_28_x86_64.whl (Linux x86_64)
    • vigilo_stream-1.0.1-cp39-abi3-macosx_11_0_arm64.whl (macOS arm64 Apple Silicon)
  • GPU Runtime Bundles (Downloaded on-demand):
    • vigilo-stream-gpu-windows-x86_64.zip (DirectML backend)
    • vigilo-stream-gpu-linux-x86_64.zip (CUDA backend)
    • vigilo-stream-gpu-macos-arm64.zip (CoreML backend)
  • Source Distribution:
    • vigilo_stream-1.0.1.tar.gz

Full Changelog: v0.1.1...v1.0.1

vigilo-stream v1.0.0

Choose a tag to compare

@github-actions github-actions released this 19 Sep 11:46

vigilo-stream 1.0.0

vigilo-stream 1.0.0 introduces a major architecture upgrade: cross-platform on-demand GPU acceleration across Windows, Linux, and macOS, alongside a new VitePress documentation website.


🚀 Highlights & Features

1. Cross-Platform On-Demand GPU Acceleration

  • Lightweight Default Install: Standard pip install vigilo-stream remains tiny (~18 MB) and CPU-optimized with zero external GPU bloat.
  • On-Demand Lazy Download: When GPU acceleration is requested (Pipeline(device="gpu") or vigilo_stream.enable_gpu()), the platform-specific GPU runtime backend is downloaded automatically from GitHub Releases on first use and cached in ~/.cache/vigilo_stream/backends/.
  • Platform Execution Providers:
    • Windows: Microsoft DirectML (DirectX 12) — accelerates neural networks across AMD Radeon, NVIDIA GeForce, Intel Arc, and Qualcomm Adreno without requiring CUDA.
    • Linux: NVIDIA CUDA for discrete NVIDIA GPUs.
    • macOS: Apple CoreML / Metal taking full advantage of Apple Silicon (M1/M2/M3/M4) Neural Engines and GPUs.

2. Python API Enhancements

  • Pipeline(device=...) Parameter:
    • "auto" (default): Automatically uses GPU acceleration if available and already cached; otherwise runs on CPU with zero network delay.
    • "gpu": Requires GPU execution. Downloads and activates the platform GPU backend on demand.
    • "cpu": Forces lightweight CPU execution.
  • Hardware Inspection & Control Helpers:
    • vigilo_stream.detect_gpu_support() -> (bool, str): Auto-detects DirectX 12, CUDA drivers, or Apple Silicon Metal.
    • vigilo_stream.device_info() -> (str, bool): Reports the active execution provider (e.g. ("DirectML", True) or ("CPU", False)).
    • vigilo_stream.enable_gpu(): Explicitly downloads and activates the GPU backend.
    • vigilo_stream.is_gpu_cached(version): Checks if the GPU backend is already cached locally.

3. Documentation Website

  • Complete documentation website built with VitePress and deployed to GitHub Pages: https://abdullah-masood-05.github.io/vigilo-stream/
  • Interactive API reference, hardware acceleration guides, and OpenCV HUD live visualization examples.
  • Amber-themed dark mode by default with light mode switch.

📦 Installation

pip install --upgrade vigilo-stream

💻 Quickstart with GPU

import vigilo_stream
from vigilo_stream import Pipeline

# 1. Inspect hardware support
supported, reason = vigilo_stream.detect_gpu_support()
print(f"GPU Supported: {supported} ({reason})")

# 2. Run pipeline with GPU acceleration
with Pipeline(source_spec="camera:0", device="gpu") as pipeline:
    while pipeline.is_running():
        frame = pipeline.poll_frame()
        signals = pipeline.snapshot()
        events = pipeline.events()

📦 Release Assets

  • Wheels (published to PyPI):
    • vigilo_stream-1.0.0-cp39-abi3-win_amd64.whl (Windows x86_64)
    • vigilo_stream-1.0.0-cp39-abi3-manylinux_2_28_x86_64.whl (Linux x86_64)
    • vigilo_stream-1.0.0-cp39-abi3-macosx_11_0_arm64.whl (macOS arm64 Apple Silicon)
  • GPU Runtime Bundles (downloaded on-demand):
    • vigilo-stream-gpu-windows-x86_64.zip (DirectML backend)
    • vigilo-stream-gpu-linux-x86_64.zip (CUDA backend)
    • vigilo-stream-gpu-macos-arm64.zip (CoreML backend)
  • Source Distribution:
    • vigilo_stream-1.0.0.tar.gz

Full Changelog: v0.1.1...v1.0.0

vigilo-stream v0.1.1

Choose a tag to compare

@github-actions github-actions released this 16 Sep 12:42

Full Changelog: v0.1.0...v0.1.1

vigilo-stream v0.1.0

Choose a tag to compare

@github-actions github-actions released this 16 Sep 12:11