简体中文 | English
Video-subtitle-remover (VSR) is an AI-based software that removes hardcoded subtitles from videos. It mainly implements the following functionalities:

Download the .zip package directly, extract, and run it. If it cannot run, follow the tutorial below to try installing the conda environment and running the source code.
Download Links:
Windows GPU Version v1.1.0 (GPU):
Baidu Cloud Disk: vsr_windows_gpu_v1.1.0.zip Extraction Code: vsr1
Google Drive: vsr_windows_gpu_v1.1.0.zip
Pre-built Package Comparison:
| Pre-built Package Name | Python | Paddle | Torch | Environment | Supported Compute Capability Range |
|---|---|---|---|---|---|
vse-windows-directml.7z | 3.12 | 3.0.0 | 2.4.1 | Windows without Nvidia GPU | Universal |
vse-windows-nvidia-cuda-11.8.7z | 3.12 | 3.0.0 | 2.7.0 | CUDA 11.8 | 3.5 – 8.9 |
vse-windows-nvidia-cuda-12.6.7z | 3.12 | 3.0.0 | 2.7.0 | CUDA 12.6 | 5.0 – 8.9 |
vse-windows-nvidia-cuda-12.8.7z | 3.12 | 3.0.0 | 2.7.0 | CUDA 12.8 | 5.0 – 9.0+ |
NVIDIA provides a list of supported compute capabilities for each GPU model. You can refer to the following link: CUDA GPUs to check which CUDA version is compatible with your GPU.
Docker Versions:
# Nvidia 10, 20, 30 Series Graphics Cards
docker run -it --name vsr --gpus all eritpchy/video-subtitle-remover:1.1.1-cuda11.8
# Nvidia 40 Series Graphics Cards
docker run -it --name vsr --gpus all eritpchy/video-subtitle-remover:1.1.1-cuda12.6
# Nvidia 50 Series Graphics Cards
docker run -it --name vsr --gpus all eritpchy/video-subtitle-remover:1.1.1-cuda12.8
# AMD / Intel Dedicated or Integrated Graphics
docker run -it --name vsr --gpus all eritpchy/video-subtitle-remover:1.1.1-directml
# Demo video, input
/vsr/test/test.mp4
docker cp vsr:/vsr/test/test_no_sub.mp4 ./

Please ensure that you have installed Python 3.12+.
brew install python@3.12
sudo apt update && sudo apt install python3.12 python3.12-venv python3.12-dev
It is recommended to use a virtual environment to manage project dependencies to avoid conflicts with the system environment.
(1) Create and activate the virtual environment:
python -m venv videoEnv
videoEnv\\Scripts\\activate
source videoEnv/bin/activate
Change to the directory where your source code is located:
cd <source_code_directory>
For example, if your source code is in the
toolsfolder on the D drive and the folder name isvideo-subtitle-remover, use:cd D:/tools/video-subtitle-remover-main
This project supports two runtime modes: CUDA (NVIDIA GPU acceleration) and DirectML (AMD, Intel, and other GPUs/APUs).
Make sure your NVIDIA GPU driver supports the selected CUDA version.
Recommended CUDA 11.8, corresponding to cuDNN 8.6.0.
Install CUDA:
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run sudo sh cuda_11.8.0_520.61.05_linux.run
Install cuDNN (CUDA 11.8 corresponds to cuDNN 8.6.0):
Install PaddlePaddle GPU version (CUDA 11.8):
pip install paddlepaddle-gpu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/
Install Torch GPU version (CUDA 11.8):
pip install torch==2.7.0 torchvision==0.22.0 --index-url https://download.pytorch.org/whl/cu118
Install other dependencies:
pip install -r requirements.txt
pip install paddlepaddle==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/ pip install -r requirements.txt pip install -r requirements_directml.txt
python gui.py
python ./backend/main.py
You can greatly increase the removal speed by modifying the parameters in backend/config.py:
MODE = InpaintMode.STTN # Set to STTN algorithm
STTN_SKIP_DETECTION = True # Skip subtitle detection
Modify the values in backend/config.py and try different removal algorithms. Here is an introduction to the algorithms:
- InpaintMode.STTN algorithm: Good for live-action videos and fast in speed, capable of skipping subtitle detection
- InpaintMode.LAMA algorithm: Best for images and effective for animated videos, moderate speed, unable to skip subtitle detection
- InpaintMode.PROPAINTER algorithm: Consumes a significant amount of VRAM, slower in speed, works better for videos with very intense movement
MODE = InpaintMode.STTN # Set to STTN algorithm
# Number of neighboring frames, increasing this will increase memory usage and improve the result
STTN_NEIGHBOR_STRIDE = 10
# Length of reference frames, increasing this will increase memory usage and improve the result
STTN_REFERENCE_LENGTH = 10
# Set the maximum number of frames processed simultaneously by the STTN algorithm, a larger value leads to slower processing but better results
# Ensure that STTN_MAX_LOAD_NUM is greater than STTN_NEIGHBOR_STRIDE and STTN_REFERENCE_LENGTH
STTN_MAX_LOAD_NUM = 30
MODE = InpaintMode.LAMA # Set to LAMA algorithm
LAMA_SUPER_FAST = False # Ensure quality
Place the .condarc file from the project in the user directory (C:/Users/<your_username>). If the file already exists in the user directory, overwrite it.
Solution: https://zhuanlan.zhihu.com/p/260034241
Solution: Upgrade the 7-zip extraction program to the latest version.