Files
bilive/docs/installation.md
FLY_MC 91d945414e build: add docker compose file (#222)
* Add Docker Compose file
* docs: update docs

---------

Co-authored-by: John Howe <89397553+timerring@users.noreply.github.com>
2025-03-24 16:40:29 +08:00

5.6 KiB
Raw Blame History

Quick start

Mode

首先介绍本项目三种不同的处理模式:

  1. pipeline 模式(默认): 目前最快的模式,需要 GPU 支持,最好在 blrec 设置片段为半小时以内asr 识别和渲染并行执行,分 p 上传视频片段。
  2. append 模式: 基本同上,但 asr 识别与渲染过程串行执行,比 pipeline 慢预计 25% 左右,对 GPU 显存要求较低,兼顾硬件性能与处理上传效率。
  3. merge 模式: 等待所有录制完成,再进行识别渲染合并过程,上传均为完整版录播(非分 P 投稿),等待时间较长,效率较慢,适合需要上传完整录播的场景。

Important

凡是用到 GPU 均需保证 GPU 显存大于运行程序所需 VRAM具体计算 VRAM 方法可以参考该部分

Installation(有 GPU 版本)

是否有 GPU 以 nvidia-smi 显示 nvidia GPU 驱动以及 nvcc -V 显示 CUDA 版本号为准。如果未配置显卡驱动或未安装 CUDA,即使有 GPU 也无法使用,而会使用 CPU 推理(不推荐,可根据自身硬件条件判断是否尝试 CPU 推理)。

Note

如果你是 windows 用户,请使用 WSL 运行本项目。

1. 安装依赖(推荐先 conda 创建虚拟环境)

cd bilive
pip install -r requirements.txt

此外请根据各自的系统类型安装对应的 ffmpeg,例如 ubuntu 安装 ffmpeg

常见问题收集

2. 设置环境变量用于保存项目根目录

./setPath.sh && source ~/.bashrc

3. 配置 whisper 模型

项目默认采用 small 模型,请点击下载所需文件,并放置在 src/subtitle/models 文件夹中。

Tip

使用该参数模型至少需要保证有显存大于 2.7GB 的 GPU否则请使用其他参数量的模型。

4. biliup-rs 登录

首先按照 biliup-rs 登录b站登录脚本在 src/utils/biliup ,登录产生的cookies.json保留在该文件夹下即可。

然后同样通过 bilitool login 扫码登录biliup 的 list 对应 api 已经失效,因此我写了 bilitool 工具作为替换)。

常见问题收集

5. 启动自动录制

./record.sh

常见问题收集

6. 启动自动上传

请先确保你已经完成步骤 3,正确下载并放置了模型文件。

6.1 启动扫描渲染进程

输入以下指令即可检测已录制的视频并且自动合并分段,自动进行弹幕转换,字幕识别与渲染的过程:

./scan.sh

常见问题收集

6.2 启动自动上传进程

./upload.sh

常见问题收集

7. 查看执行日志

相应的执行日志请在 logs 文件夹中查看,如果有问题欢迎在 issue 中提出。

logs # 日志文件夹
├── blrec # blrec 录制日志
│   └── ...
├── scan # scan 处理日志
│   └── ...
├── upload # upload 上传日志
│   └── ...
└── runtime # 每次执行的日志
    └── ...

Installation(无 GPU 版本)

无 GPU 版本过程基本同上,可以跳过步骤 3需要注意在执行步骤 5 之前完成以下设置将确保完全用 CPU 渲染视频弹幕。

  1. 请将 src/config.py 文件中的 GPU_EXIST 参数设置为 False。(若不置为 False 且则会使用 CPU 推理,不推荐,可自行根据硬件条件进行尝试。)
  2. MODEL_TYPE 调整为 merge 或者 append

Docker 运行

也可以直接拉取 docker 镜像运行,默认 latest。守护进程是 upload而 record 以及 scan 需要在配置后手动启动,相关配置以及启动流程从 3.2 开始即可,此版本 docker 镜像无 GPU 配置。

Important

如果不需要使用可视化页面可以忽略以下提醒:

  • 不推荐在有公网 ip 的服务器上直接暴露 22333 端口访问管理页面,如果使用请自行限制端口入站 ip 规则或者采用 nginx 等反向代理配置密钥限制他人访问。
  • 管理页面主要针对 record 模块,只有手动运行 record 后(步骤5)才能访问到管理页面。

Docker

sudo docker run \
    -itd \
    --name bilive_docker \
    -p 22333:2233 \
    timerring/bilive:0.2.10

Docker Compose

使用镜像

默认 CPU latest version如需使用 GPU 版本,请将 image: ghcr.io/timerring/bilive:latest 修改为 image: ghcr.io/timerring/bilive-gpu:latest

docker compose up -d

自行构建

相关配置已经写好,请自行将 compose.yml 3-6 行替换为:

    build:
        context: .
        dockerfile: Dockerfile # Dockerfile-GPU
    # image: ghcr.io/timerring/bilive:latest # ghcr.io/timerring/bilive-gpu:latest

然后执行以下命令:

docker build
docker compose up -d