共享体验社交和在线协作场景逐渐涌现出很多新玩法,例如一起看场景下,通过 TRTC 可以实现音视频实时互动交流,然而各端如何能够保证看到进度相同的电影和演出呢?各端进度同步对齐就会是第一个实现难点,此外还有很多特殊情况和业务需求需要兼容,比如:
如果大家都通过在线视频平台观看,喊321播放然后小伙伴们一起点击播放按钮可行吗?
那么一起看「高能片段」需要大家同时跳转到某个时刻的视频进度开始怎么办?
如果是一起看的是直播流,各端无法控制播放进度无法保证对齐怎么处理?
其中一个小伙伴的视频卡住一会儿,缓冲转圈圈后比其他人进度慢怎么解决?
要是有一种技术解决方案解决以上痛点就好了~
另外有些小伙伴目前线上稳定运行的业务是通过 RTMP 推流,或者推流端仅支持 RTMP/RTSP 推流(比如安防视频画面流、赛事直播在线媒体流、移动端推出直播流等),这种情况能否实现通过 TRTC 拉流观看?
TRTC 最近上线了新功能,支持 RTMP 标准协议推流,现已完美支持此类场景,我们详细聊聊。
- 方案 -
TRTC 实时音视频服务架构如图所示,上行推流和下行拉流的全链路是通过自研 UDP 私有协议 / Web 端 WebRTC 实现各个终端和Web小程序之间的互通。
如下图所示,TRTC 最新支持以 RTMP 协议推流至 RTC 房间的方案,常见 RTMP 流的来源:
在 PC 端通过 OBS 或 其他直播平台工具 进行RTMP推流;
在服务端通过FFMPEG推在线媒体流;
使用第三方资源,如直播平台、赛事流、视频网站VOD资源等提供的流媒体,甚至是无人机航拍实时画面、监控摄像头画面等等
OBS 是一款好用的第三方开源程序直播流媒体内容制作软件,为用户提供免费使用,它可支持 OS X、Windows、Linux 操作系统,适用多种直播场景,满足大部分直播行为的操作需求。目前国内外直播平台有大量主播正在使用 OBS 采集画面、布置直播间以及推流,无需改变使用习惯,即可快速将直播内容 RTMP 推流到实时音视频TRTC房间中 。在此基础上配合 RTC 音视频能力可以实现主播和观众连麦互动,将游戏直播、户外直播、唱歌舞蹈直播,秒变一起看一起聊的互动直播间。
同时配合FFmpeg 能够将其他媒体格式都推到实时音视频TRTC房间中,进一步扩展使用场景并降低业务接入和升级至超低延时直播的门槛。
- 扩展场景 -
在线教育行业的各类班型场景,老师展示视频课件教学视频时,可以通过 PC 端 OBS 或者 FFmpeg 把绝大多数媒体格式以 RTMP 推流至 RTC 房间,房间内的学生通过 TRTC SDK 拉流,可以保证观看到相同进度的教学视频,课件播放跳转进度、调整速度、切换下一章等全部可由老师控制,各学生端观看对齐课堂秩序好,教学质量更稳定。
在 AI 课堂的场景,学生跟着课程进度进行答题和互动,比如提交选项答题后会观看对应的答题反馈讲解视频,那么可以通过服务端推流的方式统一控制视频素材的播放,将媒体推流至 RTC 房间让学生低延迟观看,给学生流畅及时的 AI 互动课堂体验,比点播课程更生动有趣。
一起看球赛的场景下,比赛流媒体是赛事供应方固定以 RTMP 格式流的方式提供赛事画面,通过推流至 RT-ONE™ 的方案,实现 RTC 房间内同步观看超低延时的比赛直播,配合 RTC 的实时互动能力,与好友语音/视频讨论,一起喝彩加油,不会错过每一个精彩瞬间的共享体验。
在赛场有多视角机位画面的场景也可以完美支持,多路流都可以分别推流至 RTC 房间,用户可以根据自己喜好选择想要看的一个或者多个视频画面,同时进行实时互动聊天;并且除了赛事直播外,这类功能可以拓展应用在一起看云演唱会、一起看春晚,辅以千人同屏互动的能力展示在现场大屏幕,营造更有沉浸感和参与感的直播互动体验。
- RTMP 协议推流使用手册 -
OBS 推流设置
安装并打开 OBS 工具进行下述操作。
查看底部工具栏的来源标签,单击+按钮,根据您的业务需要选择输入源。常用来源输入有:
1. 通过底部工具栏的 控件>设置 按钮进入设置界面。
2. 单击 推流 进入推流设置页签,选择服务类型为自定义。
服务器填写:
rtmp://rtmp.rtc.qq.com/push/
填写串流密钥格式如下:
房间号?sdkappid=应用&userid=用户名&usersig=签名
其中房间号、应用、用户名、签名需要换成业务的,例如:
22998?sdkappid=140*****66&userid=******rtmp2&usersig=eJw1jdE***************ZLgi5UAgOzoMhrayt*cjbmiCJ699T09juc833IMT94Ld7I0iHZqVDzvVAqkZsG-IKlzLiXOnEhswHu1iUyTc9pv*****D8MQwoA496Ke6U1ip4EAH4UMc5H9pSmv6MeTBWLamhwFnWRBZ8qKGRj8Yp-wVbv*mGMVZqS7w-mMDQL
为简化参数,只支持字符串房间号,不超过64个字符,字符只能是数字、字母、下划线。TRTC 其他端如果要观看 RTMP 流,需要使用字符串房间号进房。
usersig 的生成规则,请参见 UserSig (https://cloud.tencent.com/document/product/647/17275)相关 (请注意签名要在有效期内)。
以上服务器地址 + 串流密钥组成 RTMP 推流地址,也可以供 FFmpeg 或其他 RTMP 库推流。
RTMP 后台不支持传输 B 帧,用户可以通过如下设置调整推流端软件的视频编码参数来去除 B 帧。
在设置中单击输出页签进行配置;
在输出模式中选择高级,关键帧间隔建议填写1或2,单击确定保存设置。
在设置中单击视频页签,设置分辨率和帧率。分辨率决定了观众看到的画面清晰程度,分辨率越高画面越清晰。FPS 是视频帧率,它控制观看视频的流畅,普通视频帧率有24帧 - 30帧,低于16帧画面看起来有卡顿感,而游戏对帧率要求比较高,一般小于30帧游戏会显得不连贯。
建议不启用串流延迟以减少端到端延迟。
启动自动重连,建议设置重试延迟时长尽量短,网络抖动时如果连接断开可尽快重连上。
1. 查看 OBS 底部工具栏的 控件,单击 开始推流。
2. 推流成功后,正常情况在界面底部会展示推流状态,TRTC 控制台仪表盘上有该用户进房记录。
如前面 设置推流参数所说,TRTC 其他端进房需要使用字符串房间号,Web 端观看 RTMP 流的效果如下所示:
更多产品了解
欢迎扫码加入云巴巴企业数字化交流服务群
产品交流、问题咨询、专业测评
都在这里!
在数字化浪潮席卷全球的今天,互联网已成为我们生活中不可或缺的一部分。然而,每当提及IP地址,许多人或许会感到困惑:是电脑主机决定了它,还是网络背后的神秘力量在操控?今天,让我们一同探讨这个谜题,并借助IP数据云的力量,揭开IP地址背后的真相。
在网络世界中,IP地址192.168.x.x如同一张熟悉的“名片”,频繁出现在家庭网络环境里。你是否想过,为什么我们电脑中的IP地址通常以192.168开头?这背后又隐藏着怎样的秘密?今天,让我们借助IP数据云的力量,一同揭开192.168的神秘面纱,并深入探讨公网IP与私网IP的区别。
在数字化时代,互联网已成为我们日常生活和工作中不可或缺的一部分。然而,许多人在使用互联网时可能并未深思过一个关键问题:我们是如何通过简洁易记的域名访问网站的呢?这背后其实隐藏着一个复杂而精妙的过程——域名解析。今天,让我们一同揭开域名解析的神秘面纱,并探讨IP数据云在这一过程中所扮演的重要角色。
在互联网时代,流量数据的真实性已成为一个备受关注的问题。近期,浙江慈溪警方成功捣毁了几个专门从事虚假刷人气、转载、评论及点赞的水军工作室,揭露了背后庞大的黑色产业链。据悉,这些工作室通过控制六百多部手机,利用群控软件制造虚假流量,涉案资金高达1000多万元。面对这一现象,我们不禁要问:如何才能有效识别并打击这些“网络水军”?
近年来,电信网络诈骗犯罪屡打不尽,犯罪数量依旧处于高位,严重影响公众的财产安全和互联网生态环境,甚至破坏社会秩序的和谐与稳定,危害性极大。