Voltar ao ranking

iyear/pure-live-core

Gogithub.com/iyear/pure-live-core

✨ Make Live Pure Again

livelivestreambilibilibilibili-livehuyadouyudouyulivetwitch
Crescimento de estrelas
Estrelas
1.2k
Forks
143
Crescimento semanal
Issues
11
6008001k1.2k
dez. de 2021jun. de 2023jan. de 2025jul. de 2026
ArtefatosGo Modulesgo get github.com/iyear/pure-live-core
README

🎉 简介

Go Report Card

该项目仅供学习,请勿用于商业用途。任何使用该项目造成的后果由使用者自行承担。

一个想让直播回归纯粹的项目

没有礼物、粉丝团、弹窗,只有直播、弹幕

✨ 特性

  • 🔎 直播间信息、直播流、弹幕流、发送弹幕
  • ⌛ 平台 Websocket 协议封装,支持转发弹幕消息、直播间热度消息
  • 🗝️ 解决跨域问题,支持直播流本地转发
  • 📂 简易的收藏夹功能支持
  • 🎯 资源占用低,5开百万热度直播间、蓝光直播流转发、弹幕全开占用 40M 内存
  • 🧬 跨平台支持,甚至可以运行在路由器上
  • 🔨 支持设置 Socks5 代理 (未测试)
  • 🧱 良好的项目结构设计,解耦直播平台和核心功能
  • ⚙️ 同时它也是一个简单的命令行工具。

......

🛠️ 部署

Docker

支持 amd64 386 arm64 arm/v6 arm/v7 架构

#启动
docker run --name pure-live -p <HOST_PORT>:8800 -d --restart=always iyear/pure-live:latest
#或添加-v参数
docker run --name pure-live -p <HOST_PORT>:8800 -v /HOST/PATH/DATA:/data -v /HOST/PATH/LOG:/log -d --restart=always iyear/pure-live:latest

#查看log
docker logs -f pure-live

#设置账户配置文件
docker cp PATH/TO/account.yaml pure-live:/config/account.yaml
docker restart pure-live

#设置服务器配置文件
docker cp PATH/TO/server.yaml pure-live:/config/server.yaml
docker restart pure-live

#备份数据库
docker cp pure-live:/data/data.db .

#备份配置文件
docker cp pure-live:/config .

#复制log到宿主机
docker cp pure-live:/log .

二进制部署

下载 Release 的最新打包文件

解压后重命名 config 目录下的 server.yaml.exampleserver.yaml , config/account.yaml.exampleaccount.yaml ,填写相关信息。

chmod +x ./pure-live
./pure-live run

打开对应的本地地址 localhost:<port> ,即可看到前端界面,开始使用 pure-live 吧!

pure-live 的初衷是本地或局域网的直播流推送,对于 websocket 推送没有做压缩或优化处理。

pure-live 运行在局域网内的 NAS 或其他小型服务器上,就可以使整个局域网内享受到 pure-live 的支持。

前端

Release 都已经内置了默认的前端页面

如果前端有小BUG修复,请前往前端仓库下载最新版本替换 static 目录下的所有文件

前端自己快速看了一下 Vue 一把梭写出来的,仅仅是能用的水平,代码结构也很庞杂凌乱,期待更好的第三方前端页面出现。

前端仓库: https://github.com/iyear/pure-live-frontend

其他前端页面:

  • ......

⚙️ 命令行(仅支持二进制文件)

查看版本:

./pure-live -v
v0.1.0.211224-beta
go1.17.3 windows/amd64

查看帮助:

./pure-live -h
./pure-live run -h
./pure-live get -h
./pure-live export -h

run

启动本地服务器

-s : 服务器配置文件路径,默认为 config/server.yaml

-a : 账号配置文件路径,默认为 config/account.yaml

./pure-live run
./pure-live run -s myserver.yml
./pure-live run -s my/myserver.yml -a my/myaccount.yml

get

获取直播信息、直播流、弹幕流

-p :平台名。涉及的平台参数在 API文档 中查询

-r : 房间号。长短号均可

--stream : 下载对应的直播流(暂时只支持 flv),不传入则不下载,传入文件名。此方式下载的 flv 文件较大,如需要更精细的控制请使用 ffmpeg

--danmaku : 抓取对应的弹幕流,以 xlsx 格式保存,不传入则不抓取,传入文件名

--roll : 抓取弹幕是否显示弹幕滚动信息

./pure-live get -p bilibili -r 6
./pure-live get -p bilibili -r 6 --stream b.flv
./pure-live get -p bilibili -r 6 --stream b.flv --danmaku dm.xlsx
./pure-live get -p bilibili -r 6 --danmaku dm.xlsx --roll
./pure-live get -p bilibili -r 6 --stream b.flv --danmaku dm.xlsx --roll

成功获得相关信息

Room: 7734200
Upper: 哔哩哔哩英雄联盟赛事
Title: 直播:全明星周末选人仪式
Link: https://live.bilibili.com/7734200
Stream: https://d1--cn-gotcha03.bilivideo.com/live-bvc/842331/live_50329118_9516950.flv?cdn=cn-gotch......

export

导出收藏及收藏夹信息

-d : 数据库路径。默认 data/data.db

-p : 导出路径。默认 export.xlsx

./pure-live export
./pure-live export -d mydata/data.db
./pure-live export -d mydata/data.db -p mydata.xlsx

🌲 生态

目前 pure-live 的生态并不完善,最终的目标是做到开源社区驱动的维护模式。

在发展到一定规模后, pure-live 将会以 organization 的形式维护 core 与不同平台的客户端。

📝 文档

如何写一个自己的前端? API文档

如何添加新的平台支持? Client文档

移动平台 gomobile 支持? TODO

📷 预览

WEB前端预览

🔩 贡献

ISSUE

请使用 issue 发起任何问题,非重要事情请勿私聊。

  • 提出新的特性帮助 pure-live 成长。特性的支持效率取决于其重要程度。
  • 提出 BUG 解决使用中的问题。 BUG 的修复将优先考虑。
  • ......

PR

dev 分支签出一个自己的分支,请勿向 master 发起 PR

🔌 TODO

基本直播功能(直播流+弹幕接收)

  • 哔哩哔哩
  • 虎牙
  • 斗鱼
  • 企鹅电竞
  • 映客
  • 网易CC
  • Twitch (等待第三方库支持 m3u8 拉流)
  • 咪咕体育

发送弹幕

  • 哔哩哔哩
  • 虎牙
  • 斗鱼

get

  • 弹幕JSON保存
  • 弹幕ASS保存

📈 趋势

stars

🧑 贡献者

contrib

🗒️ 参考

https://github.com/wbt5/real-url

https://github.com/flxxyz/douyudm

https://github.com/BacooTang/huya-danmu

🔖 LICENSE

AGPL-3.0 License

Repositórios relacionados
ossrs/srs

SRS is a simple, high-efficiency, real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181, with codec support for H.264, H.265, AV1, VP9, AAC, Opus, and G.711.

C++MIT Licensertmplive-streaming
ossrs.io
29.1k5.7k
fanmingming/live

✯ 可直连访问的电视/广播图标库与相关工具项目 ✯ 🔕 永久免费 直连访问 完整开源 不断完善的台标 支持IPv4/IPv6双栈访问 🔕

JavaScriptnpmGNU General Public License v3.0radioiptv
live.fanmingming.com
28.3k4.2k
Guovin/iptv-api

⚡️IPTV直播源自动更新工具:自动采集、校验、测速并生成可播放结果,支持 M3U/TXT/API 输出、自定义频道、IPv4/IPv6、Docker、GitHub Actions、CLI 与 GUI 多端部署

PythonPyPIOtheriptvtvbox
24.7k7.2k
ZLMediaKit/ZLMediaKit

WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT/STUN/TURN server and client framework based on C++11

C++Otherrtsprtmp
docs.zlmediakit.com
17.3k4.1k
owncast/owncast

Take control over your live stream video by running it yourself. Streaming + chat out of the box.

GoGo ModulesMIT Licensevideostreaming-video
owncast.online
11.4k1.2k
nilaoda/N_m3u8DL-RE

Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文.

C#MIT Licensem3u8m3u8-downloader
8.4k855
xufuji456/FFmpegAndroid

FFmpeg实现视频裁剪、水印、转码、编解码、转Gif动图;FFmpeg本地推流、H264与RTMP实时推流直播;OpenGL滤镜特效,视频拍摄。音视频学习路线,音视频知识总结、流媒体协议

Cffmpegtranscode
5.8k1.4k
andandroidor/ourtv

稳定、蓝光、高清、电视直播

gamelive
4.7k301
FormidableLabs/react-live

A flexible playground for live editing React components

TypeScriptnpmMIT Licensereactcomponent-playground
commerce.nearform.com/open-source/react-live/
4.6k256
steveseguin/vdo.ninja

VDO.Ninja is a powerful tool that lets you bring remote video feeds into OBS or other studio software via WebRTC.

JavaScriptnpmOthervdoninja
vdo.ninja
3.9k1.2k
mindskip/xzs

在线考试系统

JavaScriptnpmGNU Affero General Public License v3.0examination-systemexamination
mindskip.net
3.9k767
starrtc/starrtc-android-demo

🚀starRTC,即时通讯(IM)系统,免费IM系统(含单聊,群聊,聊天室,文件传输),免费一对一视频聊天,VOIP,语音对讲(回音消除),直播连麦,视频直播,RTSP拉流,RTMP推流,webRTC服务端,在线教育,白板,小班课,在线会议,视频会议,视频监控,局域网直连(无需服务器),兼容webRTC, 支持webRTC加速,P2P高清传输,安卓、iOS、web互通,支持门禁对讲,可视对讲,电视盒子,树莓派,海思,全志,任天堂switch,云游戏,OTT设备,物联网平台,C语言自研方案,支持二次开发成类微信,类映客等APP,✨万水千山总是情,来个star行不行✨,更多示例请访问:

freeim
docs.starrtc.com/en/download/
3.8k921