关于使用OBS-Studio连接已有Dlive.tv流并实现录制/转推及滚动日志录制的技术咨询
使用OBS-Studio连接已有Dlive.tv流并实现录制/转推及滚动日志录制的技术咨询
嘿,别担心,这绝对不是愚蠢的问题!很多刚接触OBS的新手都会有类似需求,尤其是想要捕获他人直播并实现滚动式日志录制的时候。下面我一步步给你讲清楚Linux版OBS上的操作方法:
第一步:获取Dlive.tv的直播流源地址
浏览器打开的dlive.tv/[主播用户名]是网页地址,OBS无法直接识别,你需要先提取真正的流媒体URL。推荐用Linux上的yt-dlp工具来获取:
- 如果你用Debian/Ubuntu系发行版,先安装工具:
sudo apt install yt-dlp - 运行命令提取流地址:
yt-dlp -g https://dlive.tv/[主播的用户名]
这个命令会输出两个URL:一个是视频流地址,一个是音频流地址(部分直播的音视频是分开传输的),把这两个地址都记下来备用。
第二步:在OBS中添加流媒体源
打开OBS Studio后,按以下步骤操作:
- 在左侧「来源」面板点击加号,选择「媒体源」,给它起个名字比如「Dlive直播流」
- 在弹出的设置窗口里,取消「本地文件」的勾选,在「输入」框粘贴刚才
yt-dlp得到的视频流URL - 点击「显示更多选项」,勾选「分离音频」(这样音频会单独被OBS捕获,不用额外添加音频源)
- 点击「确定」,此时你应该能在OBS预览窗口看到Dlive的直播内容了。如果没有音频,再添加一个媒体源,粘贴音频流URL并勾选「仅音频」即可。
第三步:设置滚动式循环录制(保留最近5-20分钟内容)
OBS的循环录制功能正好能满足你“保留最近N分钟内容,自动覆盖旧文件”的需求,设置方法如下:
- 点击顶部「文件」菜单 → 「设置」,切换到「输出」选项卡下的「录制」子页面
- 先设置「录制路径」(选一个存储空间充足的文件夹),录制格式推荐选
MKV(即使意外中断,文件也不会损坏,后续可转成MP4) - 找到「录制类型」,选择「循环录制」,然后在「循环录制分段时长」里填入对应秒数:5分钟填
300、10分钟填600、20分钟填1200 - 勾选「自动删除旧录制文件」,然后设置「最大录制文件数」:比如要保留20分钟且分段是5分钟一段,就填
4(4×5=20分钟),这样新分段生成时,最旧的文件会被自动删除,始终保留最近20分钟的内容 - 点击「确定」,再点击右下角的「开始录制」,就能启动循环录制了。当看到有趣内容时,直接点击「停止录制」,或者在「文件」菜单选「保存录制」,当前的循环片段就会被留存,不会被后续覆盖。
第四步:转推直播(可选)
如果你还想把捕获的Dlive流转推到其他平台,可按以下操作:
- 进入OBS「设置」→「推流」选项卡
- 填入目标平台的推流URL和密钥(各平台的推流信息需要你在对应平台的直播后台获取)
- 点击「开始推流」即可,注意转推会占用更多带宽,确保你的网络稳定。
一些注意事项
- 请务必确认你有录制该Dlive直播的权利,遵守平台的用户条款和版权规定,避免法律风险
yt-dlp需要定期更新(运行yt-dlp -U),因为流媒体平台的流地址格式可能会变化- 如果媒体源加载失败,检查流地址是否正确,OBS支持HLS流(
yt-dlp输出的就是兼容的地址) - 若遇到音频问题,可在OBS「设置」→「音频」里调整音频设备,确保分离的音频被正确识别
备注:内容来源于stack exchange,提问作者reikred
相关产品推荐
相关产品推荐

