freeswitch/conference分析

member由conference_function进入:


1、查找会议,

    如果会议不存在,则

2、创建会议,

      创建会议画布
      conference_video_parse_layouts:根据conference_layouts.conf 配置创建layouts,配置中的所有layout都加载,并存储在layout_hash中,最多8*8组
      canvases[]每一个canvas都有一个timer   

      如果是MUX,则【创建混屏线程】,在混屏线程中,video数据混屏后的数据丢入每个成员的mux_out_queue中,如果多cpu,则img刷新放到mux write线程,负责当前线程做。


3、启动【会议线程】:conference_launch_thread(conference)
    会议线程里做混音:从audio_buffer读取数据,通过switch_buffer_write将混音数据写入每个成员的omember->mux_buffer

4、如果是:MUX会议,则为每个成员创建用于混屏的video_queue,mux_out_queue对立。
5、将成员添加到会议室.
6、如果是:MUX会议,则
      启动【video write back 线程】conference_video_launch_muxing_write_thread ,从自
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
IM(即时通讯)是指通过网络以实时方式进行即时通讯的技术和应用。它可以实现一对一或一对多的文字、图片、语音、视频等多媒体信息的交互。IM的出现使人们可以方便快捷地进行沟通和交流,大大改变了人们的社交方式。 FreeSWITCH是一个开源的软交换平台,它提供了一个用于构建通信应用和服务的全功能通信引擎。FreeSWITCH支持语音、视频、即时消息和传真等多种通信方式,并提供了丰富的API和模块化的架构,使开发者可以轻松扩展和定制自己的通信解决方案。 BPM(业务流程管理)是一种优化和自动化组织内部业务流程的方法。它基于一套定义明确的规则和流程,通过将业务活动划分为多个环节,然后使用软件工具进行监控、管理和改善。BPM可以帮助组织提高效率、降低成本、简化流程,并提供全面的可追溯性和控制性。 IM、FreeSWITCH和BPM三者之间可以有相互关联和互补的关系。例如,可以利用FreeSWITCH的通信能力和IM技术结合起来,构建一个支持多媒体通信和即时消息交互的通信应用。同时,BPM可以用于管理和优化这个通信应用的业务流程,提高通信效率和质量。这样的组合可以在企业内部或跨组织之间实现高效沟通和协作,提升工作效率和业务水平。 总之,IM、FreeSWITCH和BPM都是与通信和业务流程管理相关的技术和应用,它们可以相互结合和应用,为人们的沟通和业务管理提供便利和优化。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值