2026-03-19 03:27:15 -05:00
's'
2025-12-01 15:04:45 +08:00
's'
2026-01-31 21:00:05 -06:00
's'
2026-01-22 02:52:01 -06:00
's'
2026-03-19 03:27:15 -05:00
's'
2025-09-27 10:06:54 +08:00
's'
2025-12-01 15:04:45 +08:00
's'
2026-01-26 23:16:25 -06:00
's'
2025-09-27 10:06:54 +08:00
's'
2026-01-22 02:38:47 -06:00
's'
2026-01-31 21:00:05 -06:00
's'
2025-09-27 10:06:54 +08:00
's'
2026-03-19 03:24:58 -05:00
's'
2025-09-27 10:06:54 +08:00
's'
2025-09-27 10:06:54 +08:00
's'
2026-03-19 03:27:15 -05:00
's'
2025-09-27 10:06:54 +08:00
's'
2025-09-27 10:06:54 +08:00
s
2026-01-27 09:17:04 +00:00
s
2026-02-23 01:55:23 +00:00
's'
2026-01-26 23:16:25 -06:00
's'
2025-09-27 10:06:54 +08:00
s
2026-01-15 01:09:47 +00:00
2026-01-27 08:55:32 +00:00
's'
2025-12-01 16:18:28 +08:00
's'
2026-03-19 02:30:31 -05:00
s''
2026-03-19 02:32:38 -05:00
's'
2026-03-19 02:30:31 -05:00
's'
2025-12-01 16:18:28 +08:00
's'
2026-03-19 03:14:57 -05:00
's'
2026-01-26 23:16:25 -06:00
's'
2026-02-28 09:07:11 -06:00
's'
2026-02-28 09:07:11 -06:00
's'
2026-01-26 23:45:47 -06:00

DouyinLiveRecorder 转播版

Python Version Supported Platforms License

基于 DouyinLiveRecorder转播增强版,将原本的录制下载功能扩展为实时推流转播,支持抖音/TikTok 等直播推送到 YouTube、HDMI 等目标。

与原版的主要区别

功能 原版 DouyinLiveRecorder 本转播版
核心用途 录制直播到本地文件 实时转播到 YouTube / HDMI
抖音 → YouTube 不支持 支持,含 AI 人声分离防版权
抖音 → HDMI/SRS 不支持 支持TikTok 模式)
录制到本地 支持 保留支持
平台支持 40+ 平台 继承全部平台

功能特性

转播模式

  • YouTube 转播:抖音直播 → YouTube Live支持 AI 人声分离Demucs降低音乐版权识别
  • TikTok/HDMI 转播:抖音直播 → SRS 推流 → HDMI 采集卡或 OBS
  • 本地录制:保留原版全部录制能力

防版权识别YouTube 专用)

  • Demucs AI 人声分离:只保留人声,去除背景音乐,从源头避免 Content ID 匹配
  • NVIDIA GPU 加速:自动检测 CUDA优先使用 GPU 加速 Demucs
  • 无 GPU 回退:无显卡时自动回退到 CPU不报错
  • 可配置开关:可在 config/youtube.ini 中关闭 Demucs使用原始音频

循环值守与多直播间

  • 自动轮询直播间状态
  • 主播下播后自动停止推流,并快速重检
  • 支持多直播间 URL 配置,单路推流时自动切换
  • 直播状态推送钉钉、微信、Telegram 等)

项目结构

.
├── main.py                    # 主入口(本地录制 + SRS 转播)
├── youtube.py                 # YouTube 转播入口
├── tiktok.py                  # TikTok/HDMI 转播入口
├── douyin_youtube_ffplay.py   # 抖音 → YouTube 推流(含 Demucs 管道)
├── douyin_srs_ffplay.py       # 抖音 → SRS/HDMI 推流
├── web.py                     # Web 配置界面
├── config/
│   ├── config.ini             # 通用配置
│   ├── youtube.ini            # YouTube 推流配置stream key、Demucs 开关)
│   └── URL_config.ini         # 直播间 URL 列表
├── src/                       # 爬虫、流解析等核心逻辑
├── backup/                    # 备份与辅助模块
├── requirements.txt
├── pyproject.toml
└── README.md

快速开始

1. 环境要求

  • Python >= 3.10
  • FFmpeg(需支持 libx264、h264_nvenc
  • 可选NVIDIA GPU + CUDA用于 Demucs 加速)

2. 安装依赖

# 克隆或下载项目
cd douyinyoutube

# 创建虚拟环境(推荐)
python -m venv .venv
# Windows:
.venv\Scripts\activate
# Ubuntu/Linux:
source .venv/bin/activate

# 安装基础依赖
pip install -r requirements.txt

# 若使用 YouTube 转播 + Demucs 防版权,需额外安装:
pip install -r requirements-youtube.txt
# GPU 版本NVIDIA需先安装 CUDA 版 PyTorch
# pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu118

3. 配置

YouTube 转播

  1. 编辑 config/youtube.ini
[youtube]
# YouTube 直播 stream key从 YouTube 直播控制台获取)
key = xxxx-xxxx-xxxx-xxxx

# 是否启用 Demucs 人声分离(防版权识别)
# 是 = 启用,否 = 使用原始音频
enable_demucs = 

# Demucs 是否优先使用 GPU有 NVIDIA 显卡时)
# 是 = 优先 GPU否 = 强制 CPU
demucs_use_gpu = 
  1. 编辑 config/URL_config.ini,添加抖音直播间地址:
https://live.douyin.com/745964462470
https://live.douyin.com/xxx,主播名
  1. config/config.ini 中将 视频保存格式 设为 ts(触发 YouTube 推流逻辑)

TikTok/HDMI 转播

  • 使用 tiktok.py 入口,配置 SRS 推流地址
  • 详见 tiktok/ 目录说明

4. 运行

# YouTube 转播
python youtube.py

# 或使用 uv
uv run youtube.py

详细配置说明

config/youtube.ini

配置项 说明 默认值
key YouTube 直播 stream key 必填
enable_demucs 是否启用 Demucs 人声分离
demucs_use_gpu 是否优先使用 NVIDIA GPU

config/config.ini

  • 视频保存格式:设为 tsyoutube.py 会走 YouTube 推流逻辑,而非本地录制
  • 循环时间:轮询间隔(秒)
  • 代理:海外平台需配置代理

URL_config.ini 格式

# 单行一个直播间
https://live.douyin.com/745964462470

# 可加画质和备注
超清,https://live.douyin.com/xxx
https://live.douyin.com/yyy,主播名

# 注释掉不监测
# https://live.douyin.com/zzz

Demucs 防版权说明

原理

  • 使用 Demucs 对混音进行人声分离
  • 只保留人声轨道推送到 YouTube背景音乐被物理移除
  • Content ID 无法匹配已移除的音乐

延迟与性能

  • 延迟:约 48 秒(与 chunk 大小相关)
  • GPU:有 NVIDIA 显卡时自动使用 CUDA 加速
  • CPU:无 GPU 时自动回退,不影响运行

回退机制

  1. Demucs 未安装:自动使用原始 FFmpeg 推流
  2. GPU 不可用:自动使用 CPU 运行 Demucs
  3. enable_demucs = 否:直接使用原始音频

平台兼容性

平台 录制 YouTube 转播 Demucs
Windows CPU/GPU
Ubuntu Server (优先)
其他 Linux

Web 配置界面

python web.py
  • 浏览器访问配置页面
  • 支持编辑 youtube.iniURL_config.ini
  • 选择 youtube / tiktok / obs 等模式

常见问题

1. Demucs 安装失败

# 仅 CPU
pip install demucs torch torchaudio

# 使用国内镜像
pip install demucs torch torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 无 NVIDIA 显卡

  • 程序会自动使用 CPU 运行 Demucs
  • 可在 youtube.ini 中设置 demucs_use_gpu = 否 以跳过 GPU 检测

3. 推流中断

  • 检查网络与代理
  • 检查 YouTube stream key 是否有效
  • 查看控制台日志定位错误

4. 抖音风控

  • 适当增大循环时间
  • 确保 Cookie 有效(录制抖音需配置)

致谢


许可证

MIT License

Description
No description provided
Readme 22 MiB
Languages
Python 76.2%
JavaScript 21.4%
HTML 1.7%
VBScript 0.6%
Dockerfile 0.1%