Skip to main content

flask-cctv-stream

A minimal Flask-based MJPEG video streaming server with fullscreen responsive client UI, camera auto-open/close logic, frame limiting, and resolution scaling.

Quick start

pip install flask-cctv-stream
# then open http://localhost:8080/

Configuration

You can configure via CLI args (highest priority) or environment variables (fallback). Defaults are shown below.

CLI flags

--camera-index   int    Camera index (default 0)
--width          int    Frame width (default 1280)
--height         int    Frame height (default 720)
--fps            int    FPS limit (default 15)
--timeout        int    Inactivity timeout seconds (default 2)
--host           str    Bind host (default 0.0.0.0)
--port           int    Bind port (default 8080)
--log-level      str    Logging level (default INFO)

Environment variables (used when the corresponding flag is not provided)

CAMERA_INDEX      FRAME_WIDTH           FRAME_HEIGHT
FPS_LIMIT         INACTIVITY_TIMEOUT
HOST              PORT                  LOG_LEVEL

Running with overrides

flask-cctv-stream \
  --camera-index 0 --width 1280 --height 720 \
  --fps 15 --timeout 2 --host 0.0.0.0 --port 8080 --log-level DEBUG

# or via env vars
CAMERA_INDEX=0 FRAME_WIDTH=1280 FRAME_HEIGHT=720 \
FPS_LIMIT=15 INACTIVITY_TIMEOUT=2 PORT=8080 LOG_LEVEL=DEBUG \
flask-cctv-stream

Metadata

Release files for flask-cctv-stream 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flask-cctv-stream 0.0.1
File Size Uploaded
flask_cctv_stream-0.0.1.tar.gz 4.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for flask-cctv-stream 0.0.1
File Interpreter ABI Platform
flask_cctv_stream-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 10.2 kB

Release files / flask_cctv_stream-0.0.1.tar.gz

Download URL flask_cctv_stream-0.0.1.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b3395e6248bb89209de4c5bdaf87ac7c7e94bceb2a91bfb2122584af76776dc9
BLAKE2b-256 checksum
How to use checksums
8bc4e0d9f43ac82745044c547b17c1bd07cd250761be66b4f956540fff226e2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.

Transparency log

Release files / flask_cctv_stream-0.0.1-py3-none-any.whl

Download URL flask_cctv_stream-0.0.1-py3-none-any.whl
Size 5.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
df14fd4acbd8d814921b2b66c1e0a51291a13f48dab6e615c3ba28e9134f0bfc
BLAKE2b-256 checksum
How to use checksums
4b3c24f64e86f7e7ee17a6beded973d42db6f3c187f3fdc7e9a7a79bb50c358b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page