在线教育场景下对提供稳定、高质量的音视频服务提出了非常高的要求。而不断推陈出新的课堂形式以及新技术的应用,使得好未来自研音视频SDK面临更多的挑战。
LiveVideoStackCon 2022北京站邀请到好未来音视频开发高级专家郭晓明介绍好未来自研SDK在工程化上所做出的努力,包括遇到的各式各样的挑战以及所采用的对策;同时介绍好未来客户端如何在以客户体验为主旨的前提下,合理调度自研与第三方服务,以提供更加良好的课堂体验。
文/郭晓明
整理/LiveVideoStack
大家好,我是郭晓明,我分享的主题是在线教育场景下客户端的实践与优化。
我先做个自我介绍。我来自好未来直播中台客户端团队,主要提供多引擎支持的RTCSDK,并为前台提供基础的音视频服务。除了RTC,也包括点播云等等各项能力。目前我们的客户端团队为大班云、素质、学习云、1V1,包括大学生等很多的业务线、多个场景都提供了支持。目前我们的自研引擎在很多的业务场景之下都占比超过了90%。
本次分享分为六个部分,第一是在线教育应用的特点,第二是RTC的典型场景,第三是核心指标。第四,在这些场景之下有哪些优化策略,第五是全面的支撑体系,第六是未来的挑战。
-01-
在线教育应用特点
第一个特点是高质量,高稳定性。这是有别于其他RTC场景的特点。没有一个应用能够像在线教育这样要求这么高的质量。一个字,就是稳。为什么要求这么稳?
这里引用了一个示例如图:老师的网卡、软件卡,还有闪退、黑屏什么的,老师讲课需要连贯性,上面这些情况出现一种,调动起来的积极性就没了,出现个两三种,这堂课就白上了。就是说,除了平时的一些质量要求,它(在线教育)要求讲课需要连贯性,过程中不断积累,到了最核心的那一刻——啪——卡了,那就不行了,这堂课就白上了。
第二个特点就是多:业务角色多、课程模式多、业务场景多。
为什么角色多?老师有主讲老师、辅导老师、监课老师。学生分组的时候是同组学生,上完台是上台学生。家长还要旁听。
直播模式分为三分屏、半身、全身、小灶课、真小班、优网、自习室。课程模式多。
接着是复杂的业务场景。旁路转推、跨房间推流、辩论会、辩论赛,一共列全了有50多个。
基于这两个相同的特点,引出SDK的设计理念。首先第一,易用性,得让业务用得爽,简单点不容易出错。第二,可扩展性。灵活、迅速响应,设计的时候有没有足够的扩展性在里面。第三,数据驱动,详细可靠的数据支持。第四是安全合规。
-02-
典型的RTC场景
接着就是典型的RTC的一些场景。场景太重要了,刚才也提到场景很复杂,那到底是怎么玩儿的呢?我们看一下。
首先,举个3V3的例子。为什么举3V3呢?3V3是我们第一个真正全面使用RTC的场景,而且是一上线就取得了非常非常好的反馈的一个场景,就是从RTMP时代转型到RTC时代的标志性的点。这是一个三分屏的3V3。什么叫三分屏呢?老师的屏幕分为了三个部分,右上角是头像区,左边是课件区,右下是聊天区。为什么叫3V3呢?左边三个孩子,右边三个孩子,他们在一块儿互动,所以这是一个3V3的场景。它的整体图是什么样子呢?
如图所示。最上面的是老师的房间。学