技术分享| 音视频多频道使用的正确姿势

Posted anyRTC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了技术分享| 音视频多频道使用的正确姿势相关的知识,希望对你有一定的参考价值。

为方便用户同时加入多个频道,接收多个频道的音视频流,anyRTC 从底层架构给予支持多频道管理,且频道数量无限制,跟随我一起探讨多频道的奥秘吧~

在跟踪客户需求时,总能听到客户说单个频道支持的人数太少了;我想加入一个频道后不退出的情况下,加入其他频道听取下他们的内容;我想同时进多个频道进行监听;我想在大班课上课的同时,给小组分组上课;对讲;分屏监控...这些需求 anyRTC 统统可以满足了~

多频道架构

方案介绍

每个用户可以进入多个频道,且频道数量不限制,但只能在一个频道中发布音视频流,anyRTC 的回调中都会带有频道标识,开发者只需要做好本地管理即可。

实现方法

实现多频道功能的主要步骤如下:

  1. 调用 sharedEngineWithAppId 方法,创建并初始化 ARtcEngineKit
  2. 调用 setChannelProfile方法,将频道场景设置为直播。
  3. 调用 createRtcChannel 方法,通过 channelId 创建一个 AgoraRtcChannel 对象。
  4. 调用 ARtcChannel 类的 setRtcChannelDelegate方法,接收该频道的回调通知。
  5. 调用 ARtcChannel 类的 setClientRole 设置用户角色。
  6. 调用 ARtcChannel 类的 joinChannelByToken 方法加入频道。用户加入频道后,默认自动订阅频道内所有其他用户的流。如果想发布自己的音视频流到该频道中,调用publish方法发布。
  7. 如果需要加入更多的频道,重复步骤 3、4、5、6。

适用场景

场景1:大班课分组教学

大班课分组教学业界又叫超级小班课,其场景借鉴了视频会议里的breakout room功能,将大班进行分组,小组学习讨论,符合TBL的教学理念,既不浪费教师资源,又能满足个性体验。

一个主讲老师同时对多个小班进行授课,班内学生能够进行互动交流,促进学习。

场景2:互联网对讲

互联网对讲已经逐步进入公共视野,传统的对讲机已经慢慢的被淘汰,传统对讲机面临距离限制、噪声严重、同时只能订阅一个频道等多重问题。anyRTC 互联网对讲方案支持全球对讲,采用AI降噪,凸显人声消除噪声,同时支持同时加入多个频道。

互联网对讲方案已经运用到了智慧小区、智慧调度等行业

更多场景玩法期待开发者发掘~

以上是关于技术分享| 音视频多频道使用的正确姿势的主要内容,如果未能解决你的问题,请参考以下文章

企业级Android音视频开发笔记分享,快来get正确的学习姿势

技术分享| 快对讲调度系统设计概要

IOS技术分享| IOS快对讲调度场景实现

IOS技术分享| IOS快对讲调度场景实现

机友分享 导入机智云Android开源项目的正确姿势

直击C语言头文件使用痛点一个视频教你C语言头文件的正确使用姿势