https://github.com/lovegaoshi/bili-music-segmenter
b站自动录播+歌切+上传脚本,支持docker部署
https://github.com/lovegaoshi/bili-music-segmenter
Last synced: 3 months ago
JSON representation
b站自动录播+歌切+上传脚本,支持docker部署
- Host: GitHub
- URL: https://github.com/lovegaoshi/bili-music-segmenter
- Owner: lovegaoshi
- Created: 2022-05-29T19:16:28.000Z (almost 3 years ago)
- Default Branch: inaseg-cloud
- Last Pushed: 2025-01-22T19:17:27.000Z (3 months ago)
- Last Synced: 2025-01-22T20:23:41.388Z (3 months ago)
- Language: Python
- Homepage:
- Size: 4.39 MB
- Stars: 23
- Watchers: 1
- Forks: 5
- Open Issues: 3
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
- awesome-bilibili-extra - Bili-music-segmenter - b 站自动录播 + 歌切 + 上传脚本,支持 docker 部署.   (UP 工具 / 直播脚本)
README
# 在云服务器上用 docker 部署
参考配置:1 核 1GB 内存 ubuntu22 云机器
1. 使用一键脚本安装 docker(https://docs.docker.com/engine/install/ubuntu/)
```
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
```2. 配置虚拟内存 swap (例:配置 5G 虚拟内存)
```
sudo fallocate -l 5G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free -h
```注意:您可能需要也可能不需要 sudo 来执行 docker 命令。
注意:下面的所有 docker 命令都包含用户名和组 ID。 这些映射到 1001:1001,因为它们是 Oracle 服务器的默认值。 如果您找不到此信息,只需删除它们并在 root 下运行 docker 容器即可。
注意:对于 Windows 服务器,运行 `${pwd}` 而不是 `"$(pwd)"`
3. git clone repo
```
git clone -b inaseg-cloud https://github.com/lovegaoshi/ipynb.git
cd ipynb
```3a. 安装 docker 镜像
```
sudo docker build -t ipynb-inaseg .
```OR:
3b. 拉一个预制的 docker 镜像
https://hub.docker.com/repository/docker/gaoshi/ipynb-inaseg/tags?page=1&ordering=last_updated
```
sudo docker pull gaoshi/ipynb-inaseg:nightly
sudo docker tag gaoshi/ipynb-inaseg:nightly ipynb-inaseg
```4. 用 biliup-rs 登录 b 站账号
```
sudo docker run -v "$(pwd)":/inaseg -u 1001:1001 -it --rm ipynb-inaseg
biliup login
``````
nano configs/biliWrapper.json
``````
nano configs/biliWatcher.yaml
```5.配置
configs/biliWrapper.json:填 b 站投稿的相关信息。格式为:
```
"VUP名": [
"VUP直播间(转载地址)",
"视频简介",
[
"视频标签"
]
],
```configs/biliWatcher.yaml:填监控的相关信息。格式为:
```
- extractor: biliseries
filter: karaoke
last_url: true
url: b站录播合集url
```6. 使用
切 MP3,适用于自留,做https://steria.vplayer.tk/ 无需登录 b 站账号。
`sudo docker run -v "$(pwd)":/inaseg -u 1001:1001 ipynb-inaseg python /inaseg/inaseg.py --shazam --shazam_multithread=2 --cleanup --outdir=/inaseg --aria=8 --media={回放网址,或本地录播文件地址}`
上传 b 站
`sudo docker run -v "$(pwd)":/inaseg -u 1001:1001 --rm ipynb-inaseg python /inaseg/biliupWrapper.py --media https://www.bilibili.com/video/BV19W4y157Vj/ `
监控 b 站录播合集
`sudo docker run -v "$(pwd)":/inaseg -u 1001:1001 --rm ipynb-inaseg python /inaseg/watcher.py --watch_interval=12800`
# WINDOWS
windows 下也推荐用 docker:https://github.com/lovegaoshi/ipynb/issues/9
# 附加功能
问:更好的系统? 更多内存?
将 `inaseg.py` 中的 batch_size: `segment_wrapper(media: str, batch_size: int = 32` 从 `32` 更改为较大的值,如 `128` 或 `512`;较大的批次可能会带来 100% 的性能提升。
将媒体滑动窗口大小:“inaseg.py”中的“SEGMENT_THRES = 600”更改为较大的值; 这是在几秒内要处理的最大媒体块。 更大的块将节省磁盘读取。
问:有 CUDA 吗?
改为拉取此图像:
```
sudo docker pull gaoshi/ipynb-inaseg:nightly-gpu
sudo docker tag gaoshi/ipynb-inaseg:nightly-gpu ipynb-inaseg
```运行 docker 时,添加 `--gpus all`。
要检查 GPU 是否已启用,请运行:
```
sudo docker run -v "$(pwd)":/inaseg -it --rm ipynb-inaseg
python3
import tensorflow as tf
print(tf.config.list_physical_devices('GPU'))
```请注意,计算机的 CUDA 版本可能需要大于 docker 中的 CUDA 版本 (11.3?)。
问:速度测试
inaseg 获取 1 小时的媒体文件:
Oracle E2.micro(1C2T): ~1hrAMD Ryzen 3700X(8C16T): ~2min?
NVIDIA 1070, 2070S: < 20s