Local Video Studio is a local-first, restartable AI video-production application for Ubuntu and a single 24 GB-class NVIDIA GPU. It keeps prompts and media on your machine, uses FFmpeg for deterministic assembly, and stores projects in portable, human-readable directories.
The deterministic mock pipeline works without model downloads. Real image, video, speech, music, and caption models are optional local backends with separate installation and licensing requirements.
Repository note (Sep 5, 2026): the
mainhistory was cleaned up; no code changed. If an existing clone reports divergent branches on pull, rungit fetch origin, thengit checkout main && git reset --hard origin/main(back up any unpushed work first).
PATH (or an existing imageio-ffmpeg installation)git clone https://github.com/awesomecon/local-video-studio.git
cd local-video-studio
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .
scripts/bootstrap.sh
export LOCAL_VIDEO_STUDIO_MOCK_MODE=1
python -m backend.pipeline.cli \
--topic "How Roman aqueducts worked" \
--duration 30 \
--resolution 640x360 \
--output-root ./projects
The command prints the portable project directory and renders/final.mp4. Rerunning completed
stages reuses their saved outputs.
To use the local web interface:
export LOCAL_VIDEO_STUDIO_MOCK_MODE=1
python scripts/check_ports.py --verify-external
python -m uvicorn backend.api.main:app --host 127.0.0.1 --port 8009
Open http://127.0.0.1:8009/. The frontend is plain HTML, CSS, and JavaScript served by FastAPI;
there is no Node.js build step.
Portable defaults are in config/default.yaml. For machine paths, copy
config/local.example.yaml to ignored config/local.yaml; environment overrides take precedence.
Never store API keys in YAML. Port 1234 is reserved for an externally managed OpenAI-compatible
local LLM, and the application never starts or stops that service.
Local Video Studio binds to loopback by default, does not enable telemetry, and never downloads model weights automatically. See installation, architecture, local LLM, model backends, multi-shot scenes, and rendering.
python -m pip install -e '.[dev]'
python -m pytest
python3 frontend/tests/static_checks.py
The project is under active development. Start in mock mode and treat optional real-model setup as experimental until its backend-specific health check succeeds.
Local Video Studio's original source code and documentation are licensed under the Apache License 2.0.
Model weights, third-party dependencies, ComfyUI custom nodes, fonts, media, and other externally sourced materials retain their own licenses and usage restrictions. Review those terms separately before redistribution or commercial use.
47 commits
Python
75.7%
JavaScript
22.4%
CSS
1.4%
Local Video Studio is a local-first, restartable AI video-production application for Ubuntu and a single 24 GB-class NVIDIA GPU. It keeps prompts and media on your machine, uses FFmpeg for deterministic assembly, and stores projects in portable, human-readable directories.
The deterministic mock pipeline works without model downloads. Real image, video, speech, music, and caption models are optional local backends with separate installation and licensing requirements.
Repository note (Sep 5, 2026): the
mainhistory was cleaned up; no code changed. If an existing clone reports divergent branches on pull, rungit fetch origin, thengit checkout main && git reset --hard origin/main(back up any unpushed work first).
PATH (or an existing imageio-ffmpeg installation)git clone https://github.com/awesomecon/local-video-studio.git
cd local-video-studio
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .
scripts/bootstrap.sh
export LOCAL_VIDEO_STUDIO_MOCK_MODE=1
python -m backend.pipeline.cli \
--topic "How Roman aqueducts worked" \
--duration 30 \
--resolution 640x360 \
--output-root ./projects
The command prints the portable project directory and renders/final.mp4. Rerunning completed
stages reuses their saved outputs.
To use the local web interface:
export LOCAL_VIDEO_STUDIO_MOCK_MODE=1
python scripts/check_ports.py --verify-external
python -m uvicorn backend.api.main:app --host 127.0.0.1 --port 8009
Open http://127.0.0.1:8009/. The frontend is plain HTML, CSS, and JavaScript served by FastAPI;
there is no Node.js build step.
Portable defaults are in config/default.yaml. For machine paths, copy
config/local.example.yaml to ignored config/local.yaml; environment overrides take precedence.
Never store API keys in YAML. Port 1234 is reserved for an externally managed OpenAI-compatible
local LLM, and the application never starts or stops that service.
Local Video Studio binds to loopback by default, does not enable telemetry, and never downloads model weights automatically. See installation, architecture, local LLM, model backends, multi-shot scenes, and rendering.
python -m pip install -e '.[dev]'
python -m pytest
python3 frontend/tests/static_checks.py
The project is under active development. Start in mock mode and treat optional real-model setup as experimental until its backend-specific health check succeeds.
Local Video Studio's original source code and documentation are licensed under the Apache License 2.0.
Model weights, third-party dependencies, ComfyUI custom nodes, fonts, media, and other externally sourced materials retain their own licenses and usage restrictions. Review those terms separately before redistribution or commercial use.
47 commits
Python
75.7%
JavaScript
22.4%
CSS
1.4%