# 抖音直播录制工具
## 特点
- 支持无人值守自动监测和录制多个主播的直播。
- **支持录制弹幕**。
- 未知直播间地址时,也可以通过**主播主页**来监测直播,因此可以监测没开过直播的、开播时间~~阴间~~导致从未赶上直播的主播。
- 支持自动获取 cookie,并在 cookie 失效时自动重新获取。无需手动获取 cookie。
- 不使用 selenium,不需要安装浏览器,几乎开箱即用。
- 支持自定义脚本、插件,以自定义开播推送等功能。
- 高性能,~~奶奶家的老爷机~~、1核2G的经济型服务器都能录制。
- 支持 linux。
- 理论上支持 mac,但未测试,如果是 mac 用户可以参考 linux 的安装和使用方法,勤使用搜索引擎。
## 缺点
- 由于是根据作者本人自用的需求而开发的,因此不支持诸如更改清晰度(直接录制最高清晰度)、最大文件长度之类的功能,以后可能会加入这些功能。
- 高级功能如插件、推送等的使用门槛较高,可能要会写 python 代码。
- 因新鲜出炉,尚未测试足够长时间,可能有较多 bug。
- 不能保证失效时及时维护
## 说明
如果有bug或有什么建议的话请发issues,**建议贴上日志( logs 文件夹下遇到 bug 时对应的日志)**。
软件仅供个人科研性质使用,禁止商业使用,禁止不正当使用,不接受定制,不接受捐助。
本人从未也不会从本软件中获利,没有义务保证软件长期有效和及时更新,没有义务对所有遇到的问题都作解答,任何对软件的不正当修改和使用所造成的危害由使用者负责。
目前更新软件的方式是下载最新软件,并把旧软件的 room.json 复制到新目录下,config.txt 可能要重新配置,因为新旧版本配置不兼容。
## 使用方法
下载软件并解压,进入到解压后的目录,你能看到在这个目录下的 运行命令行版.bat 等文件,这个目录称为软件*根目录*。
### Windows平台安装
首先安装 python **并将其添加到环境变量**(可以在安装过程中勾选 *Add Python x.x to PATH*),如果是新手的话可以百度搜索 *Python 安装*,有手把手教程。
Windows平台可以按键盘上的 *Win + R*,并在文本框中输入`cmd`,回车,打开命令提示符,并在命令提示符中输入`python --version`,如果输出了python的版本,则表明安装成功。
如果是 Windows 10/11,执行命令`python`后可能什么都不输出,甚至会出现打开微软应用商店的迷惑行为,可以百度搜索*python弹出微软应用商店*。
### Linux平台(无图形化界面)安装
如果使用 Linux 应该会安装 python吧。
使用方法见下方
### 配置文件
在软件根目录下找到 config.txt,用文本编辑器打开它。里面对各选项都作了说明,可以根据自己的需求调整。
linux 服务器可以考虑使用 bypy 来上传录制到的文件,以便在自己的 PC 中转码和渲染弹幕。可以使用插件(下面说明)来实现自动上传。
### 设置房间
可以在 GUI 界面中点击下方的 *添加主播* 来添加房间,支持 Web_Sid、直播间地址、直播间短链、主播主页。
使用纯命令行的用户,可以先在有 GUI 的平台下添加好房间,再把 room.json 复制到纯命令行平台下。或者:
在软件根目录下找到 room.json,用文本编辑器打开它,下面是几个例子:
``` text
[
{
"id": 71034333127,
"name": "主播名1",
"auto_record": true,
"record_danmu": true,
"important": false
},
{
"id": 851917085931,
"name": "主播名2",
"auto_record": true,
"record_danmu": true,
"important": false
}
]
```
id 是房间的 Web_Rid,即用网页版打开直播间(也可以自己在网页输入直播分享的短链,会跳转另一链接),链接为 live.xxx.com/123456789?roomid=...
这个 123456789 就是 Web_Rid 。
name 可以填主播名,同时也是录制到的文件所存放的目录名,由于一些主播会经常改名,所以不自动获取名称,你可以自己填一个容易记的名字。
auto_record 是否自动监测和录制,一般是 true,如果不想录了又怕删掉它下次不方便加回来,可以改成 false。
record_danmu 为是否录制弹幕,对性能要求较高,根据实际需求和录制设备性能决定。
important 为 true 的情况下,该主播使用独立线程检测,以保证第一时间录到直播。**不建议添加太多重要主播**。
### 运行
双击 main.pyw 即可运行 GUI 版。
运行命令行版,Windows 平台直接打开 运行命令行版.bat 就可以了。
Windows 或 Linux 下,在软件根目录下执行指令 `python3 main.pyw`。
对于命令行版,当配置或房间修改时,需要重新启动软件才能生效。
下载的文件存放于 *根目录/download* 下。
### 自动转码
需要下载 ffmpeg,可以放在软件根目录下或其他位置,在 config.txt 中配置 ffmpeg 所在目录,并配置自动转码选项。
### 插件
在 src/plugin/plugin.py 中编写你的插件,比如当直播开始时向一个 api POST 一个信息以便通知你开播了:
``` python
def on_live_start(room, filename):
requests.post(f'123.45.67.89:65565/?room_name={room.room_name}')
```
### 对录制到的文件进行处理
下载到的文件是flv格式,由于时间戳错误等,许多软件播放有异常,可以使用 PotPlayer 播放,但仍存在拖拽进度条卡顿等问题,你可以尝试转码:
下载 ffmpeg 并将其添加到环境变量中(网上有教程),假设录到的文件名是 *20230114_123456.flv*,执行指令:
``` bash
ffmpeg -i 20230114_123456.flv -c copy 20230114_123456.mp4
```
可以进行无损转码,且速度非常快,还能修复部分由于时间戳错误造成的问题。
建议使用 [b站录播姬](https://rec.danmuji.org/) 的录播修复工具进行修复,ffmpeg容易修坏。不过不能保证 100% 的修复成功率,建议保留录制到的原始文件以便以后修复。
如果不嫌转码麻烦费时的话,可以只保留原始 flv 格式,要用的时候才转为 mp4 格式,以免日后发现转码后的视频有问题时,原flv文件已经删了。
下载的弹幕是类 b站xml 格式的,可以使用 [nicovert](https://github.com/muzuiget/niconvert) 来转为 ass 格式字幕文件,播放时拖入 PotPlayer 就能显示弹幕了。
如果要将弹幕渲染到视频中,可以使用命令:
``` bash
ffmpeg -i 20230114_123456.flv -vf ass=20230114_123456.ass 有弹幕.mp4
```
但是这样如果原视频模糊或帧数低的话,弹幕也会模糊或一卡一卡的,你可以先生成一个高质量中间文件,再渲染弹幕:
``` bash
ffmpeg -i 20230114_123456.flv -c:v h264 -b:v 5824k -vf scale=iw*2:ih*2 -c:a copy -r 60 hq.mp4
ffmpeg -i hq.mp4 -c:v h264 -b:v 5824k -vf ass=20230114_123456.ass -c:a copy 有弹幕.mp4
```
## 参考项目
- [抖音弹幕协议逆向 douyin-live](https://github.com/YunzhiYike/douyin-live)
- [X-Bogus逆向](https://github.com/B1gM8c/X-Bogus)
没有合适的资源?快使用搜索试试~ 我知道了~
抖音直播录制工具,,支持通过 直播间链接、直播间分享短链、主播主页 的方式添加监测房间
共36个文件
py:27个
txt:3个
bat:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 3 下载量 133 浏览量
2023-12-30
17:18:34
上传
评论 2
收藏 58KB ZIP 举报
温馨提示
支持无人值守自动监测和录制多个主播的直播。 支持录制弹幕。 未知直播间地址时,也可以通过主播主页来监测直播,因此可以监测没开过直播的、开播时间阴间导致从未赶上直播的主播。 支持自动获取 cookie,并在 cookie 失效时自动重新获取。无需手动获取 cookie。 不使用 selenium,不需要安装浏览器,几乎开箱即用。 支持自定义脚本、插件,以自定义开播推送等功能。 高性能,奶奶家的老爷机、1核2G的经济型服务器都能录制。 支持 linux。 理论上支持 mac,但未测试,如果是 mac 用户可以参考 linux 的安装和使用方法,勤使用搜索引擎。
资源推荐
资源详情
资源评论
收起资源包目录
DouyinLiveRecorder-main.zip (36个子文件)
DouyinLiveRecorder-main
更新记录.txt 2KB
config.txt 2KB
dylr
__init__.py 15B
core
__init__.py 37B
room.py 536B
recorder.py 5KB
app.py 3KB
room_info.py 1KB
browser.py 2KB
dy_api.py 9KB
monitor.py 5KB
transcode_manager.py 2KB
dy_protocol.py 208KB
recording.py 3KB
add_room_manager.py 4KB
danmu_recorder.py 6KB
record_manager.py 2KB
monitor_thread_manager.py 430B
video_recorder.py 4KB
config.py 5KB
plugin
__init__.py 15B
plugin.py 2KB
gui
grip_frame.py 6KB
app_win.py 4KB
util
__init__.py 15B
ffmpeg_utils.py 12KB
win_utils.py 536B
cookie_utils.py 3KB
logger.py 2KB
main.pyw 330B
启动命令行版.bat 21B
rooms.json 2KB
安装依赖.bat 91B
requirements.txt 56B
.gitignore 91B
README.MD 7KB
共 36 条
- 1
资源评论
- 玄威2024-01-17简直是宝藏资源,实用价值很高,支持!
- 핸섬보이곽2024-02-15感谢资源主分享的资源解决了我当下的问题,非常有用的资源。
- 2301_768893672024-03-23这个资源对我启发很大,受益匪浅,学到了很多,谢谢分享~
代码讲故事
- 粉丝: 2w+
- 资源: 59
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功