内置MCU功能方案设计

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mantis_1984/article/details/81670931

内置MCU功能方案设计

基于《调研》文档,基本摸清了内置MCU功能作用,特点和技术特征,要点总结如下:

  • 终端自身可发起N点会议,不需要外部独立MCU参与,N取决于会议发起者的硬件能力;

  • 会议发起方式为会议发起方逐点呼叫会议参与者,可添加和移除与会者(Multipoint Controller);

  • 并没有明确说明内置MCU需要具备信令转发功能;(不需要转发信令

  • 会议发起方需要进行视频解码合屏再编码,音频混音发送等功能(Multipoint Processor),对发起方硬件性能要求高。

  • 带MCU的功能是附加组件,需要授权才能使用;

抽象到终端功能实现上,大致可以分为3部分 主要工作:

  1. 前端UI

    • Qt GUI,遥控器便捷操作

    • WEB

  2. 信令层

    扫描二维码关注公众号,回复: 3811672 查看本文章
    • 多路SIP信令

    • 事件分发

  3. 媒体层

    • 语音混音

    • 解码图像合屏再编码转发

其中前端UI提供友好便捷控制界面,方便对多方会议进行配置控制,信令层完成核心业务逻辑控制,实现多方会议的建立,拆除等工作,媒体层实现具体的视音频业务,承载最基础的业务需求,完成音频编解码,视频编解码,作为会议的发起方,还要完成音频混音,视频解码拼接分发工作。

前端UI

前端UI设计如上图所示,区分于单路点对点呼叫,多点呼叫应命名为群组会议 ,用户通过群组会议配置参会成员,保存会议群组信息等,实现群组会议控制,并且用户在会议过程中通过UI控制,可以掌握会议信息,选择发言人,选择会议模式等,关于会议模式的说明,会在后面详细给出。

一般的会议组织过程如下:

  • 打开群组会议 板块

  • 选择创建会议,命名会议为大林镇级会议

  • 打开电话本添加参会人员到与会成员列表

  • 可选讨论模式演讲模式转发模式

  • 点机开始会议,会议发起者的根据与会成员列表逐点呼叫成员,建立会议

Qt GUI设计示意图,在现有拨号页面增加一个群组会议板块,采用StackView视图分别排列 群组会议-> 创建会议->添加会场->呼叫等页面。具体页面设计欠奉。

前端与后端通信的数据接口,基本就是成员列表。

信令层

信令层设计主要是根据会议发起者展开的,会议参与者没什么好说的跟以前单路设备一样。这里主要考虑了两种会议情况,分别是主叫会议会议加入

主叫会议:

主叫会议是说会议由会议发起者,通过GUI一系列选择控制,选择了会议参与者,然后发起多点会议的过程,属于一次就把整个会议建立起来的会议,其过程如下:

延续前端GUI内容,从GUI选择的成员列表传送给SIP信令层,先由list解析模块解析会议参与者信息数据,可能包括有:

  • 姓名

  • 电话号码

  • IP地址

  • 会议速率

其中IP地址是最关键的信息,由于采用了设备间直接点对点呼叫的方式,所以中间并没有注册服务器或者其他能转发信令的服务器参与,那么信令就需要终端通过IP地址信息把SIP信令准确的发往会议参与者。(目前的电话本模块只保存了namephone_number两个参数,所以还需要改电话本,增加新的参数)信令模块根据解析的成员信息,发起逐点呼叫建立会议。终端根据自身能力配置最大支持会议成员数,SIP模块内部,为每一个会议成员分配独立的状态机来维护通话过程,当添加成员数超过最大能力,会反馈相应的状态信息。

会议开始的过程中,会议发起者可以动态添加新成员加入到正在开始的会议,也可以动态的使某一个与会者退出会议。

会议加入:

会议加入考虑的是这样一个使用场景,会议发起者开始会议,但是张三拉肚子迟到了,没接到入会申请,或者入会超时了,错过了主叫邀请的信令。那么此时,假如张三知道会议发起者终端号码那么他是可以通过主叫会议发起者的方式,重新加入到已经进行的会议。

会议发起者接收到张三的请求后,先检查本地是否有空闲的状态机,如果没有,那对不起张三了,给张三下发会议加入失败的消息,如果有空闲状态机,就可以把张三加入到会议中来,接通后管理与主叫基本一致。

信令模块通过媒体层提供的接口来配置音视频编解码参数,从而达到向承接前端GUI控制信息,向启发媒体层控制编解码器的作用。

媒体层

媒体层涉及到最基础的视音频编解码和最终业务的展现,暂时根据使用场景将会议划分为三种使用模式分别是演讲模式转发模式讨论模式、。下面以三张图(一图胜千言啊 )来具体说明这三种使用模式的特点。

会议场景是这样,上地总部作为会议发起者(主席),与西研所美国办事处深研所,开展半年业绩总结会议,上地总部做上半年业绩总结西研所 等其他分支完成半年述职,最后关于多方合作项目xx投标,展开讨论。

演讲模式:

演讲模式如图所示,上地总部作为会议发起者,添加了会议成员美国办事处西研所深研所,会议开始后选择了演讲模式,由图中可以看出演讲模式的几个特点:

  • 上地总部观看的解码画面是4个与会者的合屏画面,每个会场情况一览无余

  • 美国办事处西研所深研所观看的解码画面是上地总部的PPT和其本人的合成画面(汇报半年业绩)

  • 美国办事处西研所深研所听到的是上地总部一言之词

  • 上地总部看可以听到3个会场的合成解码音频

转发模式:

转发模式如图所示,依然是上地总部作为会议的发起者,在其完成半年业绩汇报后,需要由各分支结构逐个汇报半年述职,所以图中以西研所为例,说明此种情况的视音频编解码特点:

  • 深研所美国办事处解码图像为深研所述职PPT,所有与会者都与上地总部建立通信,所以这个流是由上地总部转发的

  • 上地总部直接解码西研所的编码视频

  • 西研所可以看到其余3个与会者的拼接合成解码图像,这个合成图像的工作由上地总部完成

  • 每个与会者都可以听到其余3个与会者的声音,听不到自己回声,便于会中进行讨论

讨论模式:

讨论模式如图所示,述职结束后,会议各方根据即将开展的xx投标展开自由讨论,谁都可以发言,会议特点:

  • 每个人看到的都是4画面拼接图像,拼接由上地总部完成,然后下发给其余3个与会者

  • 每个人都能听到其余3个与会者的声音,但是听不到自己回声,混音应由上地总部完成

三种会议模式在开会中应可以切换,上地总部可以控制。

猜你喜欢

转载自blog.csdn.net/mantis_1984/article/details/81670931