Skip to main content

Prerequisites

RequirementVersionNotes
Python≥ 3.10Required to run from source
FFmpegAny recentRequired for recording; auto-installed on Windows
Node.jsAny LTSRequired for Douyin and a small number of other platforms

Non-technical users (Windows)

If you don’t want to run from source, download the prebuilt executable from the Releases page. Extract the zip archive and run DouyinLiveRecorder.exe directly — no Python or FFmpeg setup needed.
Some antivirus software on Windows may flag the packaged .exe as suspicious. This is a false positive caused by the PyInstaller bundling method. You can safely dismiss the warning, or run from source instead if you prefer full transparency.

Clone the repository

git clone https://github.com/ihmily/DouyinLiveRecorder.git
cd DouyinLiveRecorder

Install Python

Download and install Python 3.10 or later from python.org. During installation, check Add Python to PATH.Verify the installation:
python --version

Set up a virtual environment and install dependencies

Using a virtual environment keeps project dependencies isolated from your system Python.
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create a virtual environment and install dependencies in one step
uv sync
uv automatically resolves the virtual environment and Python version. If you don’t have Python ≥ 3.10 installed, uv sync will download and use a compatible version automatically.
On Windows, you can also install uv with PowerShell:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Install FFmpeg

FFmpeg is bundled with the prebuilt .exe. When running from source, the tool automatically downloads and installs FFmpeg the first time it starts — no manual action required.If you prefer to install FFmpeg manually, download it from ffmpeg.org and add the bin/ folder to your PATH.

Install Node.js

Node.js is required for Douyin and a small number of other platforms that use JavaScript-based signing. Install any current LTS release from nodejs.org.
Download the LTS installer from nodejs.org and run it.

Verify the setup

Run the tool to confirm everything is working:
uv run main.py
or
python3 main.py
If FFmpeg is missing, the tool will attempt to install it automatically. If Python dependencies are missing, you’ll see an import error — re-run uv sync or pip3 install -r requirements.txt to resolve it.

Next steps

Quickstart

Add your first stream URL and start recording.

Configuration

Customize recording quality, format, proxy settings, and more.

Build docs developers (and LLMs) love