This section provides instructions for installing the app (CLI and GUI) from source on Windows.
Note
This guide is for Windows. If you're using Linux or WSL, follow the Linux Installation.
Standalone .exe files are available here.
-
Install system dependencies
Open a PowerShell window as Administrator and run the following commands to install required programs via winget:
winget install --id Gyan.FFmpeg -e --source winget winget install --id Git.Git -e --source winget winget install --id astral-sh.uv -e --source winget set-ExecutionPolicy RemoteSigned
Close the PowerShell window once the installation is complete.
-
Get the source code
Open a PowerShell window as a regular user. You will not need an Administrator Shell for any of the remaining steps.
git clone https://codeberg.org/ladaapp/lada.git cd lada
-
Create a virtual environment to install python dependencies
uv venv .\.venv\Scripts\Activate.ps1
-
Install Python dependencies
Extra Supported GPU architectures Graphics Driver / Prerequisites Notes nvida-legacy Nvidia Maxwell(5.0), Pascal(6.0), Volta(7.0), Turing(7.5), Ampere(8.0, 8.6), Hopper(9.0) Nvidia GPU driver version >= 560 For RTX 10xx nvidia Nvidia Volta(7.0), Turing(7.5), Ampere(8.0, 8.6), Hopper(9.0), Blackwell(10.0, 12.0) Nvidia GPU driver version >= 570 For RTX 16xx, RTX 20xx up to including RTX 50xx intel Intel Discrete Arc GPUs: A-series (Alchemist), B-series (Battlemage)
Intel Integrated Arc GPUs of Core Ultra Processors: Meteor Lake-H, Arrow Lake-H, Lunar LakeIntel GPU Driver Installation docs cpu - Running Lada on CPU will be so slow that it's not really practical Based on your hardware, select the appropriate extra from the table above and install it with uv.
You have to choose a single option in case your system contains GPUs of multiple vendors like an integrated Intel GPU and a dedicated Nvidia GPU.
uv sync --extra nvidia # Adjust extra according to your available hardwareBefore continuing let's test if the installation was successful by checking if PyTorch detects your GPU (skip if using CPU):
# Nvidia uv run --no-project python -c "import torch ; print(torch.cuda.is_available())" # Intel uv run --no-project python -c "import torch ; print(torch.xpu.is_available())"
If this prints True then you're good. If False, check your GPU drivers are up-to-date and ensure you've selected the right extra for your hardware.
-
Apply patches
uv pip install patch uv run --no-project python -m patch -p1 -d .venv/lib/site-packages patches/increase_mms_time_limit.patch uv run --no-project python -m patch -p1 -d .venv/lib/site-packages patches/remove_ultralytics_telemetry.patch uv run --no-project python -m patch -p1 -d .venv/lib/site-packages patches/fix_loading_mmengine_weights_on_torch26_and_higher.diff uv pip uninstall patch
-
Download model weights
Download the necessary model weights from HuggingFace
Invoke-WebRequest 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v2.pt?download=true' -OutFile ".\model_weights\lada_mosaic_detection_model_v2.pt" Invoke-WebRequest 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v4_accurate.pt?download=true' -OutFile ".\model_weights\lada_mosaic_detection_model_v4_accurate.pt" Invoke-WebRequest 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_detection_model_v4_fast.pt?download=true' -OutFile ".\model_weights\lada_mosaic_detection_model_v4_fast.pt" Invoke-WebRequest 'https://huggingface.co/ladaapp/lada/resolve/main/lada_mosaic_restoration_model_generic_v1.2.pth?download=true' -OutFile ".\model_weights\lada_mosaic_restoration_model_generic_v1.2.pth"
If you're interested in running DeepMosaics' restoration model you can also download their pretrained model
clean_youknow_video.pthInvoke-WebRequest 'https://drive.usercontent.google.com/download?id=1ulct4RhRxQp1v5xwEmUH7xz7AK42Oqlw&export=download&confirm=t' -OutFile ".\model_weights\3rd_party\clean_youknow_video.pth"
You can now run the CLI with lada-cli.
Tip
Remember: To start Lada ensure you:
cdinto the project root directory- Activate the virtual environment with
.\.venv\Scripts\Activate.ps1 - Run the CLI with
lada-cli
-
Install the CLI as per instructions above
-
Install system dependencies
You can choose between two methods to install system dependencies for the GUI:
- Download the pre-compiled system dependencies from here (
sha256: 171152e8df65556f02065e080ec087153aaaa39634346b3dbe08a4f0f0d3ba1f). - Extract the file and ensure the
build_gtkfolder is located in the project root. The directory should look like this:<lada root> ├── pyproject.toml ├── LICENSE.md ├── lada/ ├── build_gtk/ # <- extracted from lada_windows_dependencies_python313_gvsbuild202611.7z ...
-
Open a PowerShell window as Administrator and install the required build tools using winget:
winget install --id MSYS2.MSYS2 -e --source winget winget install --id Microsoft.VisualStudio.2022.BuildTools -e --source winget --silent --override "--wait --quiet --add ProductLang En-us --add Microsoft.VisualStudio.Workload.VCTools --includeRecommended" winget install --id Rustlang.Rustup -e --source winget winget install --id Microsoft.VCRedist.2013.x64 -e --source winget winget install --id Microsoft.VCRedist.2013.x86 -e --source winget
Then restart your computer.
-
Open a PowerShell as a regular user and prepare the build envirobnment (You will not need an Administrator Shell for any of the remaining steps)
uv venv venv_gtk .\venv_gtk\Scripts\Activate.ps1 uv pip install gvsbuild==2026.1.0 uv pip install patch uv run --no-project python -m patch -p1 -d venv_gtk/lib/site-packages patches/gvsbuild_ffmpeg.patch uv pip uninstall patch
-
Build the dependencies with gvsbuild. Grab a coffee, this will take a while...
gvsbuild build --configuration=release --build-dir='./build_gtk' --enable-gi --py-wheel gtk4 adwaita-icon-theme pygobject libadwaita gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-plugin-gtk4 gst-libav gst-python gettext
-
Once the build is complete, deactivate the build environment and reactivate the project venv:
deactivate .\.venv\Scripts\Activate.ps1
- Download the pre-compiled system dependencies from here (
-
Install python dependencies
Install the Python wheels we've built (or downloaded) in the previous step
uv pip install --force-reinstall (Resolve-Path ".\build_gtk\gtk\x64\release\python\pygobject*.whl") uv pip install --force-reinstall (Resolve-Path ".\build_gtk\gtk\x64\release\python\pycairo*.whl")
Tip
If you intend to hack on the GUI code install also the gui-dev group: uv pip install --group gui-dev.
You can now run the GUI with lada.
Tip
Remember: To start Lada ensure you:
cdinto the project root directory- Activate the virtual environment with
.\.venv\Scripts\Activate.ps1 - Run the GUI with
lada
If you prefer the app in a language other than English, you can use translation files if available.
-
Install system dependencies
We'll need the tool gettext. This program is already available if you've installed the GUI and you can continue with the next step.
Alternatively, if you've only installed the CLI then it might be the easiest to install gettext this way:
- Go to GNU gettext tools for Windows and download the latest release .zip file.
- Extract the archive
- Add the extracted directory to the $PATH environment variable:
$env:Path = "<path/to/gettext/directory>" + ";" + $env:Path
-
Compile translations
powershell -ExecutionPolicy Bypass .\translations\compile_po.ps1
GUI and CLI should now show translations (if available) based on your system language settings (Time & language | Language & region | Windows display language).
Alternatively, you can set the environment variable LANGUAGE to your preferred language e.g. $env:LANGUAGE = "zh_CN". Using Windows settings is the preferred method though as just setting the environment variable may miss to set up the correct fonts.