Skip to main content

A tool for processing video files using opencv numpy matplotlib vidgear pyffmpeg moviepy and vidgear.

Project description

FFTrix Enterprise Security & Streaming Server

FFTrix is a professional-grade, multi-threaded NVR (Network Video Recorder), AI Surveillance, and Streaming Production server built entirely in Python. It combines high-performance video handling with real-time AI analytics, auto-discovery, PTZ control, and a modern, secure web-based Command Center.

🚀 Key Features

  • Multi-Threaded Node Architecture: Every camera stream runs in its own isolated background thread for maximum stability and low latency.
  • AI Analytics Suite: Real-time Motion Intrusion, Facial Detection, Human Personnel tracking, and License Plate Recognition (LPR).
  • Auto-Discovery & PTZ: WS-Discovery for automatic ONVIF camera configuration and zero-friction Pan/Tilt/Zoom continuous control.
  • Smart Zoning & Alerts: Draw custom security boundaries directly on the video feed to trigger Email and Webhook notifications on high-value intrusions.
  • Enterprise DVR: Automated 24/7 continuous recording with intelligent event flagging, time-ranged Clip Exports, and Auto-Retention cleanup policies.
  • Professional Watermarking: Customizable static or dynamic (floating) alpha-blended text and image overlays for branding and anti-theft.
  • Secure Remote Access: Built-in Zero-Trust tunneling (via Tailscale Funnel & Angie) and session-based authentication for worldwide secure monitoring.
  • Dynamic Surveillance Matrix: Scalable 1x1 to 4x4 hardware-accelerated monitoring grid.

🛠 Tech Stack

  • UI Framework: NiceGUI (Pure Python Web UI)
  • Streaming Engine: VidGear (High-performance FFmpeg wrapper)
  • Computer Vision: OpenCV and Tesseract OCR (for LPR)
  • Device Management: ONVIF protocol over SOAP
  • Database: SQLite3
  • Automation: uv (Package & Environment Management)

🚦 Quick Start

Prerequisites

  • Python 3.14+
  • FFmpeg installed on your system path.
  • Tesseract OCR (Optional, for OCR mode).

Installation

Using uv (Recommended):

uv add fftrix

Using pip:

pip install fftrix

Running the Server

# Launch the Dashboard (Local Network)
fftrix serve

# Launch with Secure Remote Tunnel (Public Internet)
fftrix serve --remote

# Force CLI Mode (No UI)
fftrix serve --cli-mode --mode motion --source 0

Default Credentials:

  • Username: admin
  • Password: admin
  • Change these immediately using: fftrix user add admin

🛠 Development

To install for development:

git clone https://github.com/your-username/fftrix.git
cd fftrix
uv sync

📖 Documentation

Detailed documentation is available in the docs/ directory:

📄 License

MIT License - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fftrix-1.3.1.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fftrix-1.3.1-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file fftrix-1.3.1.tar.gz.

File metadata

  • Download URL: fftrix-1.3.1.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for fftrix-1.3.1.tar.gz
Algorithm Hash digest
SHA256 842e00cf6016d9e60198ee5a5787c6a02b8cacc25580bcffc57ed5e1e3e51c42
MD5 0337066f6553103045f4b148ce70f4b6
BLAKE2b-256 af8fc9b5b88b75caac90029b0b99fdbaa1426685df0f2807d0d65c13702be6ea

See more details on using hashes here.

File details

Details for the file fftrix-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: fftrix-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 34.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for fftrix-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b6ea47e8e94adb7ae971ad091031d948f388a51bcb04bd16f03eac61e9b44954
MD5 5767b9b9a4f8401392398197e39cf27d
BLAKE2b-256 ea9d07eb2325693d5b746d4a11e66976dba2ee99c51e18a0912dcf7eb86b965b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page