zoukankan      html  css  js  c++  java
  • 在FreeSWITCH中设置视频通话

    
    好了,说今天的技术话题。今天有网友在QQ群中问FreeSWITCH中视频通话如何开启,本来今天想写点别的的,就索性先说这个吧。

    FreeSWITCH支持视频通话和视频会议,但默认的配置不支持,好多人不知道怎么开启该功能。其实,很简单,找到vars.xml配置文件中的如下的行:

      <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM"/>
      <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM"/>

    上面的设置是设置FreeSWITCH支持的媒体编码,包括语音和视频。可以看到,默认的配置仅支持音频编码,要支持视频,我们直接把上想要的视频编码设置上即可,如:

      <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM,H263,H264,VP8"/>
      <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM,H263,H264,VP8"/>

    上面的代码就加入了H263、H264以及VP8编码的支持。

    看到这儿,你可能会说,这也太简单了。是的,会者不难。但是,会了上面的并不等于真会了。因为,你可能还没理解为什么这样配置就可以了。所以,我会再讲点高级的。

    看Sofia Profile的配置中(如internal.xml),你会看到如下的配置参数:

        <param name="inbound-codec-prefs" value="$${global_codec_prefs}"/>
        <param name="outbound-codec-prefs" value="$${global_codec_prefs}"/>

    如果你善于比较,就可以看出,这里,它引用了在vars.xml中的变量。所以,在vars.xml中只是设了一个变量(如global_codec_prefs),真正起作用的是这儿。也正是这个原因,你可以完全不用改varx.xml中的变量,而直接改该配置文件,如,使用下面的方法加入视频编码:

        <param name="inbound-codec-prefs" value="$${global_codec_prefs},H264,VP8"/>
        <param name="outbound-codec-prefs" value="$${global_codec_prefs},H264,VP8"/>

    当然,你也可以直接这样设:

        <param name="inbound-codec-prefs" value="PCMA,PCMU,H264"/>
        <param name="outbound-codec-prefs" value="PCMA,PCMU,H264"/>

    到这里,我想你就明白多了。记得重启FreeSWITCH让配置生效。

    那么,有人又要问,能不能不重启FreeSWITCH就让它生效呢?这应该是下一个话题了,有空再讲。
  • 相关阅读:
    WPS客户端更新日志留着备用
    C#设置电脑时间帮助类
    分布式数据库拆表拆库的常用策略
    程序员如何对待自己的工作
    java对接申通下单接口示例代码
    电子面单开发流程
    2016年工作总结和计划
    【价值观】大牛们的经典语录
    大话 程序猿 眼里的 接口
    【C#公共帮助类】DateTimeHelper设置电脑本地时间,实际开发很需要
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13318469.html
Copyright © 2011-2022 走看看