注释掉非必要的docker容器,添加文档等 (#553)
* Adding docs * change readme * document refine
No files matched your search
@@ -7,7 +7,7 @@
|
||||
|
||||
Bililive-go是一个支持多种直播平台的直播录制工具
|
||||
|
||||

|
||||

|
||||
|
||||
## 支持网站
|
||||
|
||||
@@ -123,7 +123,7 @@ Bililive-go是一个支持多种直播平台的直播录制工具
|
||||
<tr align="center">
|
||||
<td>快手</td>
|
||||
<td>live.kuaishou.com</td>
|
||||
<td>滋瓷</td>
|
||||
<td>滋瓷(不稳定)</td>
|
||||
<td>滋瓷</td>
|
||||
</tr>
|
||||
<tr align="center">
|
||||
@@ -142,33 +142,77 @@ Bililive-go是一个支持多种直播平台的直播录制工具
|
||||
|
||||
### cookie 在 config.yml 中的设置方法
|
||||
|
||||
cookie的设置以域名为单位。比如想在录制抖音直播时使用 cookie,那么 config.yml 中可以像下面这样写:
|
||||
cookie的设置以域名为单位。比如想在录制抖音直播时使用 cookie,那么 `config.yml` 中可以像下面这样写:
|
||||
```
|
||||
cookies:
|
||||
live.douyin.com: __ac_nonce=123456789012345678903;name=value
|
||||
```
|
||||
这里 name 和 value 只是随便举的例子,用来说明当添加超过一条 cookie 的键值对时应该用分号隔开。
|
||||
至于具体应该添加哪些键,就需要用户针对不同网站自己获取了。
|
||||
|
||||
## 在网页中修改设置
|
||||
|
||||
点击网页左边的 `设置` 可以在线修改项目的配置文件,之后点击页面下面的 `保存设置` 按钮保存设置。
|
||||
如果保存后窗口提醒设置保存成功,那就是配置文件已经被写入磁盘了。如果是保存失败,那可能是配置文件格式问题或者遇到程序 bug,总之磁盘上的配置文件没变。
|
||||
|
||||
在网页中即使保存配置成功也不一定表示相应的配置会立即生效。
|
||||
有些配置需要停止监控后再重新开始监控才会生效,有些配置也许要重启程序才会生效。
|
||||
|
||||
## 网页播放器
|
||||
|
||||
点击对应直播间行右边的 `文件` 链接可以跳转到对应直播间的录播目录中。
|
||||
当然你点左边的 `文件` 一路找过去也行。
|
||||
|
||||
https://github.com/hr3lxphr6j/bililive-go/assets/2352900/6453900c-6321-417b-94f2-d65ec2ab3d7e
|
||||
|
||||
## Grafana 面板
|
||||
|
||||
> 请自行部署 prometheus 和 grafana
|
||||
docker compose 用户可以取消项目根目录下 `docker-compose.yml` 文件中 prometheus 和 grafana 部分的注释以启用统计面板。
|
||||
这里是 [设置说明](docs/grafana.md)
|
||||
|
||||
非 docker compose 用户需要自行部署 prometheus 和 grafana。
|
||||
这里是 [一些建议](docs/grafana.md#%E6%89%8B%E5%8A%A8%E5%AE%89%E8%A3%85%E7%AC%94%E8%AE%B0)
|
||||
|
||||

|
||||
|
||||
增加说明
|
||||
[grafana](docs/grafana.md)
|
||||
|
||||
## 依赖
|
||||
* [ffmpeg](https://ffmpeg.org/)
|
||||
|
||||
## 使用例子
|
||||
- 本地
|
||||
```
|
||||
./bililive-go -i https://live.bilibili.com/1030 -i https://www.douyu.com/6655
|
||||
```
|
||||
- docker
|
||||
```
|
||||
docker run --restart=always -v ~/config.yml:/etc/bililive-go/config.yml -v ~/Videos:/srv/bililive -p 8080:8080 -d chigusa/bililive-go
|
||||
```
|
||||
## 安装和使用
|
||||
|
||||
### Windows
|
||||
https://github.com/hr3lxphr6j/bililive-go/wiki/Install-Windows
|
||||
|
||||
### macOS
|
||||
https://github.com/hr3lxphr6j/bililive-go/wiki/Install-macOS
|
||||
|
||||
### Linux
|
||||
https://github.com/hr3lxphr6j/bililive-go/wiki/Install-Linux
|
||||
|
||||
### docker
|
||||
|
||||
使用 https://hub.docker.com/r/chigusa/bililive-go 镜像创建容器运行。
|
||||
|
||||
例如:
|
||||
```
|
||||
docker run --restart=always -v ~/config.yml:/etc/bililive-go/config.yml -v ~/Videos:/srv/bililive -p 8080:8080 -d chigusa/bililive-go
|
||||
```
|
||||
|
||||
### docker compose
|
||||
|
||||
使用项目根目录下的 `docker-compose.yml` 配置文件启动 docker compose 运行。
|
||||
|
||||
例如:
|
||||
```
|
||||
docker compose up
|
||||
```
|
||||
此时默认使用 `config.docker.yml` 文件作为程序的配置文件,`Videos/` 目录作为录制视频的输出目录。
|
||||
|
||||
NAS 用户使用系统自带 GUI 创建 docker compose 的情况请参考群晖用 docker compose 安装 bgo 的 [图文说明](./docs/Synology-related.md#如何用-docker-compose-安装-bgo)
|
||||
|
||||
## 常见问题
|
||||
[docs/FAQ.md](docs/FAQ.md)
|
||||
|
||||
## 开发环境搭建(linux系统)
|
||||
```
|
||||
|
||||
@@ -13,33 +13,33 @@ services:
|
||||
ports:
|
||||
- 8080:8080
|
||||
|
||||
prometheus:
|
||||
image: quay.io/prometheus/prometheus
|
||||
restart: unless-stopped
|
||||
container_name: bililive-prom
|
||||
volumes:
|
||||
- prometheus_data:/prometheus
|
||||
- ./contrib/prometheus:/etc/prometheus
|
||||
command:
|
||||
# retention 建议大于30天
|
||||
- '--storage.tsdb.retention.time=30d'
|
||||
- '--config.file=/etc/prometheus/prometheus.yml'
|
||||
- '--storage.tsdb.path=/prometheus'
|
||||
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
|
||||
- '--web.console.templates=/usr/share/prometheus/consoles'
|
||||
ports:
|
||||
- 9090:9090
|
||||
|
||||
grafana:
|
||||
image: grafana/grafana-oss
|
||||
restart: unless-stopped
|
||||
container_name: bililive-graf
|
||||
volumes:
|
||||
- ./contrib/grafana/provisioning:/etc/grafana/provisioning
|
||||
environment:
|
||||
- GF_SECURITY_ADMIN_USER=${ADMIN_USER}
|
||||
- GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD}
|
||||
- GF_USERS_ALLOW_SIGN_UP=false
|
||||
- GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/etc/grafana/provisioning/dashboards/bilipanel.json
|
||||
ports:
|
||||
- 3000:3000
|
||||
# prometheus:
|
||||
# image: quay.io/prometheus/prometheus
|
||||
# restart: unless-stopped
|
||||
# container_name: bililive-prom
|
||||
# volumes:
|
||||
# - prometheus_data:/prometheus
|
||||
# - ./contrib/prometheus:/etc/prometheus
|
||||
# command:
|
||||
# # retention 建议大于30天
|
||||
# - '--storage.tsdb.retention.time=30d'
|
||||
# - '--config.file=/etc/prometheus/prometheus.yml'
|
||||
# - '--storage.tsdb.path=/prometheus'
|
||||
# - '--web.console.libraries=/usr/share/prometheus/console_libraries'
|
||||
# - '--web.console.templates=/usr/share/prometheus/consoles'
|
||||
# ports:
|
||||
# - 9090:9090
|
||||
#
|
||||
# grafana:
|
||||
# image: grafana/grafana-oss
|
||||
# restart: unless-stopped
|
||||
# container_name: bililive-graf
|
||||
# volumes:
|
||||
# - ./contrib/grafana/provisioning:/etc/grafana/provisioning
|
||||
# environment:
|
||||
# - GF_SECURITY_ADMIN_USER=${ADMIN_USER}
|
||||
# - GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD}
|
||||
# - GF_USERS_ALLOW_SIGN_UP=false
|
||||
# - GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/etc/grafana/provisioning/dashboards/bilipanel.json
|
||||
# ports:
|
||||
# - 3000:3000
|
||||
@@ -0,0 +1,25 @@
|
||||
# 常见问题
|
||||
|
||||
## 录制的视频频繁分段
|
||||
|
||||
可能是网络波动导致的。
|
||||
|
||||
## 录制的直播视频中途绿屏花屏
|
||||
|
||||
这通常是因为主播开始 pk 之后直播间的分辨率发生了微小的变化,而默认的 ffmpeg 程序无法处理这种分辨率变化导致的花屏。
|
||||
|
||||
在配置文件中启用 `use_native_flv_parser` 可以改为使用自制的 flv parser 录制视频。好处是遇到 pk 之类直播间分辨率变化的情况可以自动给视频分段来避免花瓶。坏处好像是遇到网络波动时视频更容易频繁分段?
|
||||
|
||||
## 快手录制不稳定
|
||||
|
||||
确实不稳定。快手网站对录播程序很严格...
|
||||
|
||||
## 程序崩溃啦
|
||||
|
||||
目前已知的崩溃方式有两种。
|
||||
|
||||
第一种会在直播间录制结束的瞬间崩溃,崩溃log参考 [这里](https://github.com/hr3lxphr6j/bililive-go/issues/383#issuecomment-1424675413)
|
||||
|
||||
|
||||
第二种在录制开始的瞬间崩溃,崩溃 log 参考 [这里](https://github.com/hr3lxphr6j/bililive-go/issues/546)
|
||||
这种崩溃似乎是因为程序虽然找到了 ffmpeg 程序,但是在启动 ffmpeg 程序的时候发生了错误。有可能是你下载的 ffmpeg 程序不是你的电脑架构的可执行程序。你可以在命令行启动一下程序使用的 ffmpeg 看看有没有什么错误提醒。
|
||||
@@ -0,0 +1,54 @@
|
||||
# 群晖 (Synology) 相关信息汇总
|
||||
|
||||
## 如何用 docker compose 安装 bgo
|
||||
|
||||
1. 下载项目代码的 zip 压缩包到本地
|
||||
|
||||

|
||||
|
||||
2. 上传到NAS
|
||||
|
||||

|
||||
|
||||
3. 解压代码
|
||||
|
||||

|
||||
|
||||
4. 从 Container Manager 的 `项目` 中创建 bgo 的 docker compose 项目
|
||||
|
||||

|
||||
|
||||
5. 后面一路 下一步,直到完成。
|
||||
|
||||
完成后默认在 NAS 的 8080 端口访问 bgo
|
||||
|
||||
|
||||
### 启用 grafana 统计面板
|
||||
|
||||
1. 将 `example.env` 文件重命名为 `.env`
|
||||
|
||||

|
||||
|
||||
2. 为 `contrib/grafana` 和 `contrib/prometheus` 目录添加可读权限 (因为他们的docker镜像中的用户权限比较复杂= =)
|
||||
|
||||
这里仅以修改 prometheus 目录的访问权限为例。
|
||||
|
||||
右键文件夹点属性
|
||||
|
||||

|
||||
|
||||
为文件夹添加所有人可以访问的权限
|
||||
|
||||

|
||||
|
||||
后面一路完成保存
|
||||
|
||||
3. 修改 yaml 配置
|
||||
|
||||
删除 `docker-compose.yml` 文件中 prometheus 和 grafana 部分的`#`字符以启用统计面板。
|
||||
|
||||
如果已经按照上面的步骤创建了项目并且项目正在运行中,那么需要先停止项目后,才能修改 yaml 配置。修改后保存配置并重新构建和启动项目。
|
||||
|
||||

|
||||
|
||||
如果还没有创建项目,那现在可以按照上面 [如何用 docker compose 安装 bgo](#如何用-docker-compose-安装-bgo) 的步骤创建项目啦~
|
||||
|
After Width: | Height: | Size: 27 KiB |
@@ -38,3 +38,6 @@ scrape_configs:
|
||||
- targets: ["bililive-go:8080"] #自行修改ip端口
|
||||
```
|
||||
grafana 需要打开浏览器,然后复制[面板内容](/contrib/grafana/dashboard.json)导入
|
||||
|
||||
# 群晖(Synology)的情况
|
||||
[启用 grafana 统计面板](./Synology-related.md#启用-grafana-统计面板)
|
||||
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 45 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 8.2 KiB |