Push Media Stream Into Room

功能介绍

输入媒体流进房是一种将 RTMP 流推送到直播间内的技术。您可以将预先录制好的视频、实时生成的画面或其他在线视频流(例如监控画面、游戏画面、会议画面等)通过 OBSFFMPEG 等工具 推送到直播间内,模拟实时直播的效果。
说明:
相关费用如下:
功能位解锁:输入媒体流进房功能需订阅 Live 包月套餐 标准版专业版解锁(体验版也可体验该功能)。
用量费用:
使用推流功能会进行转码操作,产生转码费用,详情请参见 云端混流转码计费说明
收取推流机器人在房产生的音频时长费用(注:输入在线媒体流功能产生的机器人在房费用将限免于2024年8月15日,从2024年8月16日起开始收取)。
房间内观众订阅推流进房的音视频内容会正常产生音视频通话费用,详情请参见 音视频时长计费说明

应用场景

机器人推流专为多样化的直播需求设计,您可以实现如下应用场景:
场景类型
说明
24/7 不间断直播
通过机器人推流,可以实现 24 小时不间断直播,适用于新闻播报、音乐电台、监控画面等场景。
内容重播
将热门直播内容或录播视频重新推流,吸引更多观众观看。
虚拟主播
结合虚拟形象技术,通过机器人推流实现虚拟主播的直播。
企业直播
用于企业会议、产品发布会、培训等场景,将录制的视频推流到内部或外部平台。
游戏直播
将游戏画面推流到直播间,结合解说或背景音乐,提升直播效果。
教育直播
将录制的课程视频推流到教育平台,实现线上教学。
电商直播
通过机器人推流展示商品信息、促销活动等,提升销售转化率。
更多场景
任何基于媒体流的实时互动体验玩法,均可通过 RTMP 推流帮您实现,更多玩法等待您的探索。

使用指引

下面将以使用 RESET APIOBS 工具为例,指引您快速上手机器人推流功能。

机器人推流

说明:
您需按照 创建直播间 > 创建机器人 > 使用 OBS 推 RTMP 流到直播间 > 机器人上麦的步骤实现机器人推流。

步骤1:创建直播间

您可通过 RESET API 创建直播间。(建议您将房主 ID 设置为机器人的 ID)

步骤2:创建机器人

当直播间在一段时间内没有人时,会被自动解散,为确保您的房间不被解散,您需要在房间内创建一个机器人。
您可通过 RESET API 创建机器人

步骤3:使用 OBS 推 RTMP 流到直播间

这里将指引您使用 OBS 工具将 RTMP 流推到直播间内,您可参考文档 RTMP 推流到直播间
说明:
推流时的房间 ID 设置为您在 步骤1 创建直播间时设置的房间 ID
推流时的 userId 设置为您在 步骤2 创建机器人时对应的 机器人 userId。

步骤4:机器人上麦

在线直播的观众会自动拉取麦上主播的音视频流,为确保您房间内的观众接收到 RTMP 推送的音视频流,您需要让机器人处于上麦状态。
您可通过 RESET API 让 机器人上麦
说明:
若您想自定义直播间内观众观看到的音视频流的画面大小和位置,您可通过 RESET API 自定义布局接口 来实现。

机器人停止推流

说明:
您需按照 机器人下麦->删除机器人->解散直播间->RTMP停止推流 的步骤实现机器人停止推流。

步骤1:机器人下麦

您可通过 RESET API 让机器人下麦

步骤2:删除机器人

您可通过 RESET API 删除机器人

步骤3:解散直播间

当您想提前解散直播间时,您可通过 RESET API 解散直播间

步骤4:RTMP 停止推流到直播间

点击停止直播按钮即可停止推流到直播间。


实践说明

使用 OBS 输入媒体流进房流程如下:


常见问题

1.推流失败怎么办?

常见原因:没买套餐包或过期;签名错误或过期;推了B帧(仪表盘上的现象是“推流一秒就结束”),可设置 baseline 编码。
其他原因:如果是嵌入式硬件设备推流,可能将 URL 截断;推了 H.265,改为 H.264;端上 set chunk 太大,改为 1360。

2.出现了卡顿、花屏怎么办?

观察腾讯云实时音视频 控制台仪表盘,查看推流帧率是否稳定,如果稳定则大概率是播放端的问题,建议排查播放端;如果帧率不稳可排查以下几点:
1) 检查推流客户端本地 CPU、内存是否高负载。如果使用的是 OBS 推流,观察软件底部状态栏,有丢帧、网络、CPU、帧率等信息。
2) 检查本地网络带宽是否足够。ping 推流的域名观察 RTT;使用 网络诊断工具 检测推流域名,查看带宽,最好能达到 10M。
3) 推流端可尝试降低码率、帧率减少客户端压力,参考正文中 OBS 的设置,720p 建议码率 1500 Kbps。

3.延迟大怎么办?

拉流端如果使用主播角色,延迟通常低于观众角色,如果不是主播角色可尝试对比一下观察是否有改善。
推流端本地编码和网络影响较大。可尝试不同平台测试,如果使用的是 OBS,可尝试 Windows 系统推流;ping 推流域名观察 RTT。

4.若RTMP推流中断了怎么办?

若您在断流后2分钟内重新恢复 RTMP 推流,同一房间内的观众会再次拉到音视频流,若超过2分钟,则观众端观看的混流中断,您需要调用自定义布局接口恢复混流。

5.推流的布局怎么设置?

您可使用 设置房间混流布局 的 REST API 实现这一功能。LayoutMode 赋值为0时是默认的九宫格布局,LayoutMode 为1000时是自定义布局,您可通过设置 VideoEncode 和 LayoutInfo 这两个字段来设置观众端观看时的画面大小和位置。

6.在线直播的直播列表中看到不到对应的机器人房间怎么办?

在您使用 RESET API 创建直播间时,可将 IsPublicVisible 字段设置为 true。

7.如何监听 OBS 断流事件?

OBS 推流时会进入 TRTC 的房间中,触发 TRTC 进房回调事件。
OBS 断流时会离开 TRTC 的房间,触发 TRTC 退房回调事件。
您可通过监听 服务端房间回调 实现监听 OBS 推流与断流事件。
字段名
含义
EVENT_TYPE_ENTER_ROOM
103
进入房间
EVENT_TYPE_EXIT_ROOM
104
退出房间
注意:
建议机器人的 UserId 统一格式,业务侧收到进退房回调后判断是对应机器人时再处理相应逻辑。