Skip to content
/ Qili Public

Qili is a subtitle spearker for live broadcasting at bilibili.com.

License

Notifications You must be signed in to change notification settings

sauntor/Qili

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9476e06 · Apr 10, 2024

History

13 Commits
Apr 10, 2024
Jan 12, 2024
Jan 28, 2024
Jan 12, 2024
Jan 12, 2024
Apr 10, 2024
Jan 12, 2024
Jan 28, 2024
Jan 16, 2024
Jan 12, 2024
Jan 12, 2024
Jan 12, 2024
Jan 12, 2024
Jan 12, 2024
Jan 28, 2024
Jan 28, 2024
Jan 12, 2024

Repository files navigation

Qili弹幕姬 中文|English

介绍

Qili 是一款免费且开源的B站直播弹幕语音播报软件,主要适配适配 WindowsLinux 平台。

主站: https://github.com/sauntor/Qili 镜像:https://gitee.com/sauntor/Qili

版权声明

本软件使用 GPL v3 进行授权。

软件架构

语音播报功能依赖Qt的TextToSpeech引擎,Qt会利用平台系统的TTS组件, 所以(可能)需要安装一些系统组件。
本软件采用模拟浏览器登录的方式从B站获取弹幕数据,当然,不登录也可使用基本功能。

计划实现的功能

  • [] 适配暗色模式
  • [] 历史弹幕存储
  • [] 弹幕数据分析

已适配系统

  1. Windows 10+ x86_64/amd64
  2. Ubuntu/Kylin 22.04
  3. openSUSE Tumbleweed

安装教程

Windows
  1. 下载 安装包
  2. 双击软件包,按照引导进行安装
  3. 打开软件并登录(可匿名),在 设置 中测试并选择合适的语音
openSUSE
  1. 安装系统语音组件
    sudo zypper in --recommends speech-dispatcher speech-dispatcher-configure speech-dispatcher-module-espeak espeak-ng
  2. 下载 RPM 安装包
  3. 单/双击软件包安装,或执行命令
    sudo zypper in me.sauntor.qili-1.0.0-opensuse-tumbleweed.20240105_x86_64.rpm
  4. (可选)编译安装mbrola(自行百度)
  5. (可选)运行 spd-conf -u 按照引导为当前用户生成 speech-dispatcher 配置
  6. 打开软件并登录(可匿名),在 设置 中测试并选择合适的语音
Ubuntu/Kylin 22.04
  1. 下载 DEB 安装包
  2. 打开终端,并用下面的命令安装
    sudo apt install --fix-broken --install-recommends me.sauntor.qili-1.0.0-ubuntu.22.04_x86_64.deb
  3. (可选)sudo apt install python3-speechd
  4. (可选)运行 spd-conf -u 按照引导为当前用户生成 speech-dispatcher 配置
  5. 打开软件并登录(可匿名),在 设置 中测试并选择合适的语音

使用说明

  1. 房间号 不限于自己的直播间
  2. 匿名登录可能会接收不到直播间的弹幕数据,(由于B站隐私策略,)即使收到弹幕也无法看到用户全名,但仍能接收到用户进入、本场观众数等信息。
  3. 连接B站成功后,此程序会隐藏到系统托盘
  4. 单击系统托盘图标可显示本场弹幕记录
  5. 双击或中键单击系统托盘图标可以 暂停/继续 语音播报(如果系统支持的话)
  6. 本软件不会收集用户的任何信息(纯本地软件,无服务端)

参与贡献

  1. 代码风格:KDE Code Style
  2. 在龙芯等国产硬件上测试并打包本软件
  3. bug修复、帮助实现计划实现的功能Pull Request

编译打包

  1. 主要依赖:Qt(Widgets Network, WebSockets TextToSpeech), brotli
  2. 发布时请添加: -DCMAKE_BUILD_TYPE=Release 或者 -DCMAKE_BUILD_TYPE=RelWithDebInfo
  1. openSUSE Tumbleweed
    # 安装依赖
    sudo zypper in -t pattern devel_C_C++ devel_qt6
    # 下面的命令可能不需要执行
    sudo zypper in --recommends cmake qt6-texttospeech-devel qt6-websockets-devel libbrotli-devel
    # 创建编译文件夹
    mkdir build && cd build
    # (A)初始化编译配置
    cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -B . -S /path/to/source/of/Qili
    # 编译
    cmake --build . --clean-first --verbose --target all
    # 打包,在 (A) 处的命令上增加参数: -DUSE_CPACK=ON
    cpack --config CPackConfig.cmake -G RPM -V
    # Qt Creator集成
    #     将 (A) 处命令换成
    cmake -DDEV_MODE=ON \
        -DCMAKE_BUILD_TYPE=Debug \
        -DCMAKE_INSTALL_PREFIX=$HOME/QiliDev \
        -B . \
        -S /path/to/source/of/Qili
    #     安装
    cmake --build . --clean-first --verbose --target install
    #     启动QtCreator
    LD_LIBRARY_PATH=$HOME/QiliDev/lib64 \
    QT_PLUGIN_PATH=$HOME/QiliDev/plugins \
    qtcreator
    
  2. Ubuntu/Kylin 22.04
    # 安装依赖
    sudo apt install --install-recommends \
    build-essential \
    cmake \
    qtbase5-dev \
    qtbase5-dev-tools \
    qttools5-dev \
    qttools5-dev-tools \
    libqt5texttospeech5-dev \
    libqt5websockets5-dev \
    libbrotli-dev
    # 创建编译文件夹
    mkdir build && cd build
    # (A) 初始化编译配置
    cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DUSE_QT5=ON -B . -S /path/to/source/of/Qili
    # 编译
    cmake --build . --clean-first --verbose --target all
    # 打包,另需在 (A) 处的命令上增加参数: -DUSE_CPACK=ON
    cpack --config CPackConfig.cmake -G DEB -V

鸣谢

本项目使用或参考了以下项目

  1. https://github.com/SocialSisterYi/bilibili-API-collect
  2. https://www.qt.io/
  3. https://github.com/google/brotli
  4. https://github.com/nayuki/QR-Code-generator

About

Qili is a subtitle spearker for live broadcasting at bilibili.com.

Resources

License

Stars

Watchers

Forks

Packages

No packages published