音视频通信 RTC(Real-Time Communication)是阿里云覆盖全球的实时音视频开发平台,依托核心音视频编解码、信道传输、网络调度技术,提供高可用、高品质、超低延时的音视频通信服务,让用户快速搭建多端实时应用,适用于在线教育、视频会议、互动娱乐、音视频社交等场景。
产品链接:https://www.aliyun.com/product/rtc
阿里云 RTC 为您提供录制服务,将正在进行实时音视频通话时频道的画面同步到云端进行云端混流,并将混流后的频道内容进行录制,同时您也可以根据业务场景自由选择录制的内容。通过本文,您可以快速了解录制服务的基本概念和功能说明。
前提条件
在使用录制服务前,您需要完成以下操作:
- 您已经完成注册阿里云账号,并完成实名认证。具体操作,请参见阿里云账号注册流程
- 您已经开通音视频通信服务。具体操作,请参见开通服务
- 您需要在阿里云音视频通信 RTC 控制台创建应用。具体操作,请参见创建应用
- 您需要开通阿里云 OSS 服务存储录制文件。具体操作,请参见开通服务。
- 您需要开通阿里云 MNS 服务接收录制回调消息。具体操作,请参见开通服务。
流程图
录制存储到 OSS
阿里云 RTC 服务支持将接收到的源视频流进行录制,支持 M3U8(同时会有.ts 分片文件) 格式,也支持周期录制时长的配置,视频文件会保存至您指定的 OSS 存储位置。录制任务结束时,自动生成本次的录制索引文件(M3U8 文件)。还支持按您指定的录制开始时间和录制结束时间生成自定义录制索引文件。
说明
- 为了便于您对录制内容进行回看,录制的视频存储在 OSS bucket 中。本文以录制存储至 OSS 为例进行说明。
- 如果将录制的视频存储至 OSS 中,您需要授权阿里云 RTC 可将视频内容写入 OSS。授权后才能将视频存储至指定的 OSS bucket 中。
- 为了避免录制时,因网络抖动或临时断流而导致录制文件被异常截断,系统会延迟断流 180s,即如果断流之后在 180s 内重新推流,系统会默认是同一路录制流,超过 180s 则认为是两路录制流。
- 如何配置 OSS,请参见配置 OSS。
- 配置 RTC 写入 OSS 权限阿里云 RTC 录制文件保存到用户 OSS,需要授权 RTC 访问用户 OSS 资源,RTC 通过服务关联角色 AliyunServiceRoleForRTC 访问相应用户资源。
- 您需要拥有指定的权限,才能自动创建或删除 AliyunServiceRoleForRTC。因此在 RAM 用户无法自动创建 AliyunServiceRoleForRTC 时,您需为其添加以下权限策略。
{ "Statement": [ { "Action": [ "ram:CreateServiceLinkedRole" ], "Resource": "acs:ram:*:主账号ID:role/*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": [ "rtc.aliyuncs.com" ] } } } ], "Version": "1" }
说明 请将主账号 ID 替换为您实际的阿里云主账号 ID。- 登录 RAM 访问控制,选择权限策略管理 > 新建自定义权限策略,为 RAM 用户创建新的权限策略。
主要接口及功能
接口 | 描述 |
AddRecordTemplate | 添加录制配置模板 |
DeleteRecordTemplate | 删除录制配置模板 |
UpdateRecordTemplate | 更新录制配置模板 |
DescribeRecordTemplates | 查询录制模板配置列表 |
DescribeRecordFiles | 查询录制的文件列表 |
StartRecordTask | 开始录制视频任务 |
StopRecordTask | 停止视频录制任务 |
UpdateRecordTask | 运行中任务参数更新 |
「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。