写点什么

声网 Agora 云端录制服务上线,30 分钟即可快速集成

  • 2019-11-30
  • 本文字数:2967 字

    阅读完需:约 10 分钟

声网Agora 云端录制服务上线,30 分钟即可快速集成

录制在很多实时音视频场景中都是必备功能,比如在线教育、金融双录、社交直播等。然而,对于很多不熟悉录制服务原理的人来讲,如果选错了录制服务,会遇到很多问题,例如录制文件丢失、维护与升级成本高等。

录制服务选型该怎么做?

那么在做录制服务的选型时,应该综合考虑哪些指标呢?


我们综合了一下 RTC 行业中实际存在的情况,总结出了以下几个在选择录制服务时刻参考的指标:

1、录制可靠性

录制音视频作为某些重要场景的真实再现与还原,用于质检、回放、存档留证等商业用途。如果所选用的录制服务是不可靠的,经常会出现大规模录制文件丢失,会对业务带来很大麻烦。


如果社交直播的录制文件丢失,则无法应对国家监管;如果在线课程的回放视频丢失了,会导致学生/家长投诉甚至退费;如果在线服务等录制音视频丢失,则在出现纠纷时就无法拿出有效的证据还原事情真相。


技术选型时,需要考虑能够提供端到端可靠性保障的服务供应商。某些解决方案(如 CDN 录制)因涉及多个环节,分别由不同的供应商负责,彼此衔接时很容易出问题造成文件的丢失,而且不容易定位故障问题,进行修复。

2、维护以及升级的便捷性

伴随着业务的发展,录制服务升级是不可避免的。所以在最初做选型时就要考虑服务维护和升级的便捷性。


有些解决方案会将录制作为一个功能耦合在 SDK 中,虽然在初次集成时更加简单,但却给后续的维护和升级埋下了巨大隐患。因为每次升级录制服务,都需要同步升级所有相关的客户端。如果你的服务是面向 C 端用户的,你无法要求所有用户都同时升级 App 吧?如果在部分用户升级、部分用户未升级的情况下,仍提供相同的录制服务,还需要考虑前向兼容,以保证服务可用性。这会给开发、运维增加很多额外的工作量和复杂度。


所以技术选型时,需要考虑将录制服务和 RTC 服务解耦,彼此作为独立的服务进行维护,升级时彼此不会有影响,以保证业务的灵活性。

3、服务集成的易用性

很多情况下,服务集成和后续维护都不会始终是一个人。如果服务的集成比较复杂,那么后续交接时就会非常麻烦。经常会遇到这种情况,一个开发同事踩了很多坑终于把服务集成好并上线,过了一段时间,这位同事离职或调岗,其他同事接手,又要从头踩一遍坑。


技术选型时,需要考虑服务集成的易用性。即使是新人接手,或者重新接入,也能快速完成。

声网云端录制服务

我们很早就推出了本地服务端录制 SDK,可以满足大部分客户对录制功能的需求。为了进一步降低客户的使用门槛,提升使用体验。现在,我们正式推出云端录制服务。不论大家是通过本地服务端录制 SDK ,还是云端录制服务,都可以实现 1 对 1 、1 对多场景的实时音视频录制。

声网云端录制服务特性

从功能上来讲,云端录制服务目前已经支持了录制必备的一些主要功能,近几个月还将有一大波新功能陆续上线。云端录制服务现已支持:


  • Agora Native SDK 和 Agora Web SDK 的高清音视频通话的录制

  • 频道内所有用户的音视频合流录制,录制成一个完整的文件

  • 支持实时录制,录制完成后可立即回看

  • 支持自定义合流布局,并在预设中提供了悬浮、自适应、垂直三种布局样式

  • 支持录制视频与白板课件同步播放

  • 支持自定义合流的画布背景色

  • 支持录制时间戳,方便开发者获取精准的录制开始时间

  • 支持与课件同步回放,满足教学、培训、会议等场景同步播放需求

1. 简单易用

云端录制服务提供了一套 RESTful API,整个开发过程更加简单。开发者不需要部署、运维 Linux 服务器,调用 3 个 API,30 分钟即可完成集成、测试和部署。

2. 稳定可靠

在前不久,我们的一个客户碰巧遇到某云存储平台出现了 1 个小时左右的故障。在此云平台故障期间,客户一方产生了 2 万多个录制文件,而这些录制文件均通过 Agora 云端录制服务自动缓存。待故障恢复后,我们在 90 分钟内所有文件全部推送至第三方存储平台,有效避免了客户的录制文件损失。


这是在实际场景中,客户可能会遇到的情况之一。为了帮助客户提前规避更多风险,在服务可靠性方面,我们还做了这些事情:


a. 录制过程异常时,自动恢复


因各种异常导致的录制崩溃,都会及时重启服务,保证录制正常进行。录制成切片文件,异常时最多影响一个切片,不会对整体文件造成较大影响。


b. 文件上传异常时,自动缓存


因各种因素导致的录制文件无法上传至用户指定的云存储平台时,会启动自动缓存机制,确保录制文件不会丢失。例如,某日某云存储平台节点故障,导致 1 小时内文件均无法上传,客户生成的 2 万多个切片文件全部缓存在声网录制云平台。待存储节点的故障修复后,全部转存成功。该机制有效避免了录制文件损失。


c. 全流程安全保障


录制数据全部通过软件定义实时网 Agora SD-RTN™ 来获取。录制完成后,所有录制文件自动上传至客户指定的云存储平台。拉流环节采用 Token 鉴权机制、AES 加密机制,传输环节采用传输通道加密机制,确保将文件安全地存储至指定云平台。

与本地服务端录制的不同

云端录制服务是声网实时录制服务的附加增值服务,与我们提供的本地服务端录制相比,分别对应了不同的应用场景。


首先,在易用性方面,云端录制服务更加简单。本地服务端录制需要客户有研发资源能支持 Linux 开发(C++/Java)、部署及运维。如果没有这方面技术能力或不想在这方面投入技术资源,可以直接通过 Restful API 使用云端录制服务。


在灵活性方面,本地服务端录制提供了更加丰富的功能和接口,如获取原始音视频数据等,可供开发者根据自身业务需要,来灵活调配,实现更丰富的场景。而云端录制服务目前提供录制所需的主要功能。


在扩展性方面。本地服务端录制在扩容时需要准备服务器资源并部署上线,云端录制不需要,可实时扩容。


在部署方面也有区别。如果你的团队需要私有化部署,即需要将音视频录制的内容存放在企业内部的服务器上,那么目前我们推荐使用本地服务端录制来实现。云端录制服务目前提供的是通用的录制云服务,客户不需要考虑部署运维方面的难题。而且云端录制服务支持第三方云存储,所有的录制文件都可存储到指定的第三方云平台上。不过殊途同归,最终所有的录制文件都将储存于客户自己的服务器上,这也能以最大地限度来保证用户录制数据的安全。


在成本方面,声网云端录制服务也会比常见的“SDK+服务器+运维”更低。

实时录制的应用场景

目前,很多实时场景都需要通过录制功能,来满足存档、留证、回放、质检的需求。例如在在线教育中,家长会需要通过录制的视频来查看孩子上课的表现,以及老师的教学过程。而学生也需要利用回放视频来温故知新。


在泛金融理财场景下,整个交易过程要遵循规定进行双录。一方面,这些录制文件会被抽查,检视整个交易流程是否符合监管要求;另一方面,在出现纠纷时,录制文件也可作为关键证据,对于用户和相关金融机构都有重要意义。


现在,实时音视频已成为在线客服的重要交流方式之一。“为了保证服务质量,您的通话可能会被录音”,这样的提示音,大家应该都不陌生。这也是实时录制服务在客服场景下的重要应用。


另外,还有一个更大的领域,就是社交直播。为了方便对直播内容进行实时审核,防止黄、恐、暴等不当内容。一些社交直播平台也需要利用实时录制服务,将直播内容录制下来,存储备查。


目前,由本地服务端录制 SDK 与云端录制 SDK 组成的声网 Agora 的实时录制服务,已经广泛应用于多种实时场景中。


本文转载自公众号声网 Agora(ID:shengwang-agora)。


原文链接:


https://mp.weixin.qq.com/s/MT0wT4JLxMKNdDG76tAbBw


2019-11-30 15:331304

评论

发布
暂无评论
发现更多内容

认认真真的聊聊"软"中断

编程 架构 后端 计算机

清华毕业20年从业经验马士兵建议所有Java高工必看的高并发编程

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

八位阿里大牛耗时三年总结出Java面试复盘手册!带你实现逆风翻盘

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

PM2实用指南及容器Docker部署

devpoint

Docker Node 8月日更

GitHub程序调优「黑马」!阿里大牛的Java性能优化实战笔记已上线

Java~~~

Java 架构 面试 JVM 性能调优

集字节大神面试经验诚意出品:微服务(耀世版),助你向大厂迈进

Java~~~

Java 架构 面试 分布式 微服务

难以置信!阿里新产微服务架构进阶笔记我粉了!理论实战齐飞

Java 编程 架构 面试 架构师

阿里二面:怎么解决MySQL死锁问题的?

Java MySQL 架构 面试 后端

教你一招疯狂拿Offer!用微服务设计一个超大型分布式电商平台

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

难以置信!网易首席架构师竟用了500页笔记,把网络协议给趣谈了

Java~~~

Java 架构 面试 TCP 网络

架构实战营 - 模块六作业

思梦乐

泪目!跳槽太不容易,蚂蚁金服三轮面试,四个小时灵魂拷问

Java~~~

Java spring 架构 面试 微服务

我说想去京东面架构师,阿里表哥手甩我Java大厂技术题,让我滚蛋

Java~~~

Java spring 架构 面试 Spring Cloud

爱了!阿里巴巴内部出品“SpringBoot+微服务指南”,理论与实战

Java~~~

Java spring 架构 面试 微服务

系统对接阿里云短信接口(Java开发实践)

Python研究者

8月日更

基于Netty,20分钟手撸一个RPC框架

码农参上

netty 8月日更

Vue进阶(八十二):updated 应用详解

No Silver Bullet

Vue 8月日更

无意发现,某东买来的Redis核心实践PDF,竟在GitHub数据库榜第一

Java~~~

Java redis 架构 面试 架构师

Golang:并发操作中常见的读写锁

Regan Yue

读写锁 Go 语言 8月日更

阿里P8整理的《百亿级并发系统设计》实战教程,实在是太香了

Java 架构 后端 高并发

业界良心啊!第五次更新的Spring Cloud Alibaba升级太多内容

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

架构实战营模块6作业

宁静志远

架构实战营

架构实战营模块 6 作业指导

华仔

#架构实战营

秀出新天际的SpringBoot笔记,让开发像搭积木一样简单

Java~~~

Java spring 架构 面试 微服务

Scrum Patterns:持续改进脉冲(Kaizen Pulse)(译)

Bruce Talk

敏捷开发 译文 Agile Scrum Patterns

面试进阶双飞!Alibaba新产SpringBoot深度历险(嵩山版)开源

Java~~~

Java spring 架构 面试 JVM

架构实战营模块六作业-电商微服务架构

王晓宇

架构实战营

☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(下)

码界西柚

Java JUnit 8月日更 testNG

模块六作业

俊杰

架构实战营

详解Java方法句柄MethodHandle

Java 方法句柄

华为18级工程师耗时三年才总结出这份Java亿级高并发核心编程手册

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

声网Agora 云端录制服务上线,30 分钟即可快速集成_文化 & 方法_声网_InfoQ精选文章