billd-live 一款开源、免费、技术先进的直播系统

news/2025/2/6 13:04:23 标签: 开源

一、简介

Billd-Live是一个基于Vue3、WebRTC、Node、SRS和FFmpeg等技术搭建的直播间系统,支持在线Web和安卓端查看。它实现了类似于bilibili的Web在线直播功能,允许用户发布直播并观看他人的直播内容。

二、功能

原生 webrtc 推拉流
srs webrtc 推流,支持 http-flv、hls、webrtc、rtmp拉流
msr 推流,ffmpeg 转码,支持 http-flv、hls、webrtc、rtmp拉流
一对一打 PK
一对多打 PK
多对多打 PK
多平台转推(b 站、虎牙直播)
前端混流
推流鉴权
拉流鉴权
OBS、FFmpeg推流
用户模块(qq 登录)
支付模块(支付宝当面付)
订单模块
商品模块
礼物模块
直播后台
响应式页面
适配多语言(i18n)
移动端App(Flutter)
客户端App(Electron)
接入bilibili直播
接入腾讯云(云直播)
接入腾讯云(实时音视频 TRTC)
私有化部署

三、技术栈

前端相关:Vue3 以及相关技术栈、Typescript、WebRTC、WebCodecs、Web Workder、Web Audio、Canvas
后端相关:Nodejs 以及相关技术栈、Koa2、Sequelize、Mysql、Redis、Socket.io
流媒体服务器相关:SRS、 FFmpeg、Coturn
Docker 相关:Docker

私有化部署
billd直播

接口文档
Apifox:README - billd-live-server

客户端下载
官网下载:billd直播

预览
线上地址:https://live.hsslive.cn

本地启动
b 站教程:从零搭建迷你版 b 站 web 直播间合集,看里面带 从零搭建迷你b站直播间 封面的视频。

billd-live 付费课:⚡️⚡️billd-live付费课火热进行中⚡️⚡️ - Billd博客

billd-live
安装依赖(建议使用 node 版本:v18.19.0)
pnpm i
更新 billd 相关依赖:

pnpm i billd-utils@latest billd-scss@latest billd-deploy@latest billd-html-webpack-plugin@latest
运行
npm run start
打包
npm run build
billd-live-server
安装依赖(建议使用 node 版本:v18.19.0)
pnpm i
更新 billd 相关依赖:

pnpm i billd-utils@latest billd-scss@latest billd-html-webpack-plugin@latest
本地必须要有 docker、ffmpeg 环境!

项目启动后,会在项目的 src/secret/目录下生成 secret.ts 文件,请填写里面的信息,MYSQL_CONFIG、REDIS_CONFIG、SRS_CONFIG 必填!

1.初始化docker容器

pnpm run docker:dev

2.初始化数据库(可选,只需要执行一次)

pnpm run mysql:dev

3.运行(4300端口)

pnpm run dev
兼容性
iphone 14
三星 s10
ipad air 3
常见问题
billd直播

技术支持
billd直播

环境配置
本地开发环境
配置:MacBook Pro 2023 Apple M3 Max,14 核 CPU,36G 内存

操作系统:mac os 14.1
node 版本:v18.19.0
pnpm 版本:8.6.3
docker 版本:24.0.5, build ced0996
mysql 版本:基于 docker,镜像:mysql:8.0
redis 版本:基于 docker,镜像:redis:7.0
srs 版本:基于 docker,镜像:registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5.0.170
ffmpeg 版本:5.1.2
构建/托管服务器环境
配置:4 核 CPU,4G 内存,8M 带宽(广州)

操作系统:CentOS Linux release 8.2.2004
nginx 版本:1.22.1
node 版本:v16.19.1
pnpm 版本:8.6.3
docker 版本:23.0.1, build a5ee5b1
mysql 版本:基于 docker,镜像:mysql:8.0
redis 版本:基于 docker,镜像:redis:7.0
流媒体服务器环境
配置:2 核 CPU,2G 内存,带宽 30M(香港),2G内存也能跑,但偶尔会占满内存导致服务器卡死。

配置:2 核 CPU,4G 内存,带宽 30M(香港)

操作系统:Alibaba Cloud Linux release 3 (Soaring Falcon)
node 版本:v16.20.0
pnpm 版本:8.6.3
pm2 版本:5.3.0
docker 版本:24.0.2, build cb74dfc
srs 版本:基于 docker,镜像:registry.cn-hangzhou.aliyuncs.com/ossrs/srs:5.0.170
ffmpeg 版本:6.0

四、功能演示图

五、开源地址

https://github.com/galaxy-s10/billd-live

文章参考自:billd-live 一款开源、免费、技术先进的直播系统 | 秋天的童话博客


http://www.niftyadmin.cn/n/5843014.html

相关文章

通过docker安装部署deepseek以及python实现

前提条件 Docker 安装:确保你的系统已经安装并正确配置了 Docker。可以通过运行 docker --version 来验证 Docker 是否安装成功。 网络环境:保证设备有稳定的网络连接,以便拉取 Docker 镜像和模型文件。 步骤一:拉取 Ollama Docker 镜像 Ollama 可以帮助我们更方便地管理…

20250205确认荣品RK3566开发板在Android13下可以使用命令行reboot -p关机

20250205确认荣品RK3566开发板在Android13下可以使用命令行reboot -p关机 2025/2/5 16:10 缘起:荣品RK3566开发板在Android13下,希望通过Native C语言程序来控制RK3566的关机。 通过ADB,很容易通过reboot -p命令关机。 最开始以为需要su/root…

高级java每日一道面试题-2025年01月28日-框架篇[SpringBoot篇]-如何使用Spring Boot实现异常处理?

如果有遗漏,评论区告诉我进行补充 面试官: 如何使用Spring Boot实现异常处理? 我回答: 在 Java 高级面试中讨论如何使用 Spring Boot 实现异常处理时,我们可以从多个角度进行详细阐述。这包括全局异常处理、特定异常处理、使用 ResponseStatus 注解、自定义异常…

GitHub Copilot 越狱漏洞

研究人员发现了两种操控 GitHub 的人工智能(AI)编码助手 Copilot 的新方法,这使得人们能够绕过安全限制和订阅费用、训练恶意模型等。 第一种技巧是将聊天交互嵌入 Copilot 代码中,利用 AI 的问答能力,使其产生恶意输…

PyQt6/PySide6 的 QTreeView 类

QTreeView 是 PyQt6 或 PySide6 库中用于显示分层数据的控件。它适用于展示树形结构的数据,如文件系统、组织结构等。QTreeView 也是基于模型-视图架构的,通常与 QAbstractItemModel 的子类(如 QStandardItemModel 或自定义模型)一…

最新EFK(Elasticsearch+FileBeat+Kibana)日志收集

文章目录 1.EFK介绍2.操作前提3.FileBeat8.15下载&安装4.编写FileBeat配置文件5.启动FileBeat6.模拟实时日志数据生成7.查看索引(数据流)是否创建成功8.创建数据视图:9.查看数据视图10.使用KQL对采集的日志内容进行过滤11.给日志数据配置保留天数(扩展知识) 1.E…

【力扣】48.旋转图像

AC截图 题目 思路 以矩阵 1 2 3 4 5 6 7 8 9 为例&#xff0c;想要翻转90度&#xff0c;可以先沿着对角线翻转一次 1 4 7 2 5 8 3 6 9 然后再逐行翻转&#xff0c;即可得到所求矩阵 7 4 1 8 5 2 9 6 3 代码 class Solution { public:void rotate(vector<vector…

亚远景-从SPICE到ASPICE:汽车软件开发的标准化演进

一、SPICE标准的起源与背景 SPICE&#xff0c;全称“Software Process Improvement and Capability dEtermination”&#xff0c;即“软件流程改进和能力测定”&#xff0c;是由国际标准化组织ISO、国际电工委员会IEC、信息技术委员会JTC1联合发起制定的ISO 15504标准。该标准旨…