mirror of
https://github.com/timerring/bilive.git
synced 2026-05-11 07:57:29 +08:00
85 lines
4.4 KiB
Markdown
85 lines
4.4 KiB
Markdown
# record 常见问题
|
||
|
||
> 如果没有找到遇到的问题,请及时在 [issues](https://github.com/timerring/bilive/issues/new/choose) 中提出。
|
||
|
||
## 录制 cookies 用处是什么
|
||
|
||
主要用于录制时验证账号,B 站默认未登录状态下最高画质参数为 250 (超清),如果想要录制更高参数的画质视频,需要登录账号,请在配置文件中指定账号的 cookies。
|
||
|
||
获取 cookies 的方法可以参考:https://zmtblog.xdkd.ltd/2021/10/06/Get_bilibili_cookie/
|
||
|
||
可以在项目目录下的 `settings.toml` 文件中指定 cookies,也可以在录制面板的 `http://localhost:2233/settings` (默认启动端口 2233,可以自行修改)中的 settings 填写 cookies。
|
||
```
|
||
[header]
|
||
user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"
|
||
cookie = "xxxx"
|
||
```
|
||
|
||
重启 record 后,选择更高画质录制即可。
|
||
|
||
> [!TIP]
|
||
> 不建议使用 cookies 登录 blrec 录制,因为 B 站官方有时会风控,导致录制全部失败。此外,cookies 登录后,录制效果不太稳定,可能会出现抓取不到对应流的情况。
|
||
>
|
||
> 因此个人更推荐 **不使用 cookies 的默认录制 250 超清画质**,目前没有获取流的问题。
|
||
|
||
## 如果端口已经占用
|
||
如果端口冲突,请在 `record.sh`启动脚本中重新设置端口 `port`并重启(默认端口号 2233)。
|
||
|
||
## 如何调整目录
|
||
录制部分采用的是 `blrec`,在 `settings.toml` 中设置视频存放目录、日志目录,也可启动后在 blrec 前端界面即`http://localhost:port` 中进行设置。详见 [blrec](https://github.com/acgnhiki/blrec)。
|
||
|
||
> [!TIP]
|
||
> 如果要调整目录,请相应调整 `src/config.py` 中的值。
|
||
|
||
## 完全无法获取直播流信息
|
||
|
||
```
|
||
[2023-06-15 13:07:09,375] [DEBUG] [parse] [xxxxxxxx] Error occurred while parsing stream: ValueError('12 is not a valid CodecID')
|
||
Traceback (most recent call last):
|
||
```
|
||
|
||
通常这种情况发生在录制主播在海外的情况,由于海外直播流编码是 HEVC,但是只支持处理 AVC 编码,因此无法获取直播流信息。
|
||
参考 issue:https://github.com/BililiveRecorder/BililiveRecorder/issues/470
|
||
|
||
解决方法:切换录制编码,选择 hls 编码,然后重新录制。
|
||
|
||
## 添加房间失败
|
||
|
||
```
|
||
[2024-11-22 14:29:04,304] [ERROR] [task_manager] Failed to add task xxxxxxxxx due to: KeyError('sex')
|
||
[2024-11-22 14:29:04,305] [CRITICAL] [exception_handler] KeyError
|
||
```
|
||
|
||
通常是短时间内添加该房间次数过多,api 请求限制了,可以等几分钟再添加该房间,也可以打开 port 对应面板后在面板里手动添加。
|
||
|
||
## 已经在录制状态,重启项目又无法正常工作
|
||
|
||
重启需要等约半分钟,因为它添加房间并且验证启动弹幕服务器需要一点时间,可以尝试关闭该房间录制,再打开。
|
||
|
||
## 录制的弹幕 xml 以及 jsonl 为空
|
||
|
||
From [issue 123](https://github.com/timerring/bilive/issues/123)
|
||
|
||
请填写超过 7 位数的 roomid,84074 是 b 站方便推广的一个短链接,用户跳转是直接映射到真实roomid 去的,真正的 roomid 是申请开播权限时分配的,应该是 7~9 位数字。
|
||
|
||
**弹幕服务器是无法通过短链接获取弹幕的。因为短链接只起到映射跳转作用**。
|
||
|
||
解决方法:在移动端分享里面`图片分享`方式分享直播,然后 b 站移动端会自动生成一个带有真正 roomid 的图片。填写该 roomid 即可。
|
||
|
||
## 添加直播间出错 `aiohttp.client_exceptions.ClientResponseError: 412 `
|
||
|
||
From [issue 148](https://github.com/timerring/bilive/issues/148)
|
||
|
||
```
|
||
aiohttp.client_exceptions.ClientResponseError: 412, message='Precondition Failed',
|
||
```
|
||
|
||
录制部分我采用的是 [blrec](https://github.com/acgnhiki/blrec),根据 [相应的issue](https://github.com/acgnhiki/blrec/pull/264) 情况疑似被风控了。这是请求的[B站 api 报错 412 情况](https://github.com/SocialSisterYi/bilibili-API-collect/issues/872)。
|
||
|
||
解决方法:我建议添加或者更换 UA,还可以考虑添加 cookies,等待几分钟执行 `./record.sh` 重试。或者用 docker 单独部署 blrec 也可以。
|
||
|
||
## `http://localhost:2233/settings` 网页无法访问
|
||
|
||
管理页面主要针对 record 模块,而 docker run 时默认守护进程是 upload,并且只是映射了端口,实际 2233 端口没有程序在运行,因为 record 进程并没有启动。
|
||
|
||
解决方法:进入 docker 后手动运行 record (步骤5)后访问管理页面。 |