本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文介绍远程监考所需的基础配置,通过阅读本文,您可以在15分钟内快速完成配置。
方案架构
关键流程
考生进入考场后,默认采用WebRTC协议(超低延时直播RTS 2.0)推一路高清流至阿里云GRTN网络,在阿里云提供的示例代码中,默认采用720P推流。
考生推的流将被旁路转推一路至直播,流被推到直播中心后您可以选择对流进行录制、转码或截图等操作。示例代码中包含如下配置:
把每一路流均进行录制,以便考试结束后进行回溯。
对每一路720P的高清流进行转码,形成100~200Kbps码率的240P小流,减轻监考端的网络压力。
监考端拉取经过转码为小流的考生视频,并在PC网页端进行25宫格展示,延时小于1500ms。
当监考老师想查看某个考生的视频时,可以双击画面,直接拉取该考生的720P高清视频,此时延时小于400ms。
监考老师在观看考生的720P高清视频时,可以选择与该考生进行一对一连麦。
创建直播互动消息应用
登录视频直播控制台。
在左侧导航栏选择
,进入应用管理页面。单击创建应用。
在创建应用对话框中,选择区域,填写应用名称,暂不开启回调设置和安全审核。
单击创建。应用列表会新增创建的应用,并自动生成AppId、AppKey、AppSign、创建时间等信息。
创建成功后,在控制台的结果如下。
在查看详情中查看并保存AppId、AppKey和AppSign,以便后续部署服务端时使用。
添加与配置域名
在这部分我们分为两套配置,如果你只是需要体验Demo或者考生量不是很大,我们推荐使用体验配置方案,在这部分只需配置两个域名,无需对服务端AppServer的代码进行修改。如果你要用于真实的生产环境或者考生量非常大,推荐你使用完整配置方案,在这部分你需要配置四个域名,并修改服务端AppServer的代码进行进一步开发。
体验配置方案
在监考系统的体验配置中,您一共需要添加2个域名
推流域名配置
在视频直播控制台配置推流域名的相关配置。
添加推流域名
选择左侧导航栏推/播流域名管理,进入域名管理页面,单击添加域名。
添加域名中相关参数的填写。
业务类型选择推流域名。
关于如何选择加速区域,请参见如何选择域名的CDN加速区域?
加速域名填写准备好的推流域名。
关于如何选择直播中心,请参见如何选择直播中心?
重要直播推流域名与播流域名的直播中心所在地域要保持一致,初次配置后不可更改。
说明当开发者首次将一个新域名添加至阿里云视频直播时,需要您完成验证域名的归属权,只需根据控制台的提示进行操作,如有疑问请参见验证域名归属权。
单击下一步,配置CNAME启用直播加速。DNS的CNAME记录值可让终端用户访问导向直播节点,达到加速效果。需要开发者按照控制台的提示进行操作,当配置成功后,CNAME生效验证结果如下。
开发者按照上面步骤完成后,就可以得到配置好参数的推流域名,在控制台的结果如下。
注意控制台的CNAME状态变为已配置可能有延迟,CNAME是否配置成功以CNAME生效验证为准。
开通RTS 2.0
超低延时直播RTS(Real-time Streaming)是视频直播的重要增值功能,可以提供客户端易接入、超低延时、高并发、高清流畅的视频直播服务,关于超低延时直播简介。找到目标推流域名,单击域名配置,在左侧导航栏选择超低延时推流RTS,如果RTS推流开关未打开,则开启RTS推流,选择低延时推流(RTS 2.0),单击确定。正常开启RTS 2.0推流后,在控制台的结果如下。
转推配置体验时可以不开启,正式使用时建议按照完整配置方案配置对应的推转。
查看鉴权值
URL鉴权功能旨在保护用户站点的内容资源不被非法站点下载盗用。域名初次添加时,默认开启URL鉴权。
在视频直播控制台推/播流域名管理页面,选择目标推流域名,单击域名配置。
选择直播管理下的访问控制,进入访问控制页面。
记录并保存推流域名的鉴权主KEY,以便后续部署服务端使用。鉴权主KEY的控制台位置如下图。
播流域名配置
在视频直播控制台配置播流域名的相关配置。
添加播流域名
添加播流域名的步骤和添加推流域名一致,只需将添加域名的业务类型参数选择播流域名。
播流域名与推流域名的直播中心所在地域要保持一致。
开发者完成添加播流域名后,就可以得到配置好参数的播流域名,在控制台的结果如下。
开通RTS 2.0
开启方式和上文推流域名的开通RTS 2.0一致。
查看鉴权值
URL鉴权功能默认开启,记录保存播流域名的鉴权主KEY,步骤和上文推流域名的查看鉴权值一致。
关联推流域名
接下来需要将推流域名关联到对应的播流域名。
在左侧导航栏选择推/播流域名管理,进入域名管理界面。
选择目标播流域名,单击域名配置。
在直播管理 > 基本配置中,单击推流信息页签,然后点击添加推流信息按钮。
选择准备好的相同直播中心下的推流域名,单击确定。
通过上述步骤实现了播流域名和推流域名的相关联。关联成功后,在控制台的结果如下。
配置跨域资源共享
跨域资源共享CORS(Cross-Origin Resource Sharing)简称跨域访问,是HTML5提供的标准跨域解决方案,允许网页从不同源加载和访问跨域资源,使得跨域数据传输得以安全进行。更多信息可以参考跨域资源共享。因为本项目允许web端播放课堂直播,所以需要配置播流域名的消息头,使其允许跨域资源共享。
点击左侧导航栏推/播流域名管理,进入域名管理页面,找到目标播流域名,单击域名配置。
在直播管理 > HTTPS头配置中,点击添加。
参数选择Access-Control-Allow-Origin,取值填写*。
详细介绍请参见配置HTTP消息头。配置成功后,在控制台的结果如下。
启用HTTPS功能
配置HTTPS加速可以在传输过程中对用户的关键信息进行加密,防止类似Session ID或者Cookie内容被攻击者捕获造成的敏感信息泄露等安全隐患。传输过程中对数据进行完整性校验,防止DNS或内容遭第三方劫持、篡改等中间人攻击(MITM)隐患。具体操作,请参见配置HTTPS安全加速。
需要注意的是,证书购买成功后需要登录控制台进行证书申请,通过后才可以使用。详细请参见购买SSL证书的后续操作。
配置成功后,在控制台的结果如下。
配置转码模板
直播转码服务可以解决推流端码率较高或较低而导致播放效果不好、视频播放卡顿等问题。对于通用转码的配置详细见通用转码配置。
AppName是生成推流地址的必要参数,只有推流地址与转码模板的AppName 名称对应时,模板才能生效。
如果您使用的是AppServer Demo,AppName默认值是live,您也可以在Server\Java\code\src\main\resources
目录下的application.yml
文件中修改 live_stream.app_name
自定义配置AppName。
完整配置方案
在一套监考系统的完整配置中,您一共需要添加4个域名,示例如下(下文将以此示例域名为演示进行配置):
LIVE直播推流与播放域名
推流域名: livepush.example.com
播放域名: livepull.example.com
WebRTC(RTS2.0)推流与播放域名
推流域名:webrtcpush.example.com
播放域名:webrtcpull.example.com
4个域名的配置说明如下:
示例域名 | 配置说明 |
直播推流域名 livepush.example.com | 说明 添加域名时建议选择华北2(北京)作为直播中心。
|
直播播放域名 livepull.example.com | 重要 所有云上媒体处理相关业务(如转码、录制、截图)均需要由WebRTC转推至直播后,在直播的播放域名上进行配置。 说明 添加域名时建议选择华北2(北京)作为直播中心。
重要 所有云上媒体处理相关业务(如转码、录制、截图)均需要由WebRTC转推至直播后 , 在直播的播放域名上进行配置。
|
WebRTC(超低延时RTS2.0)推流域名 webrtcpush.example.com |
|
WebRTC(超低延时RTS2.0)播放域名 webrtcpull.example.com |
|